/** * ollama_artifact_read — typed read of a pack artifact. * * Primary entry = {pack, slug}. Keeps reads anchored to job identity, * not file paths. Collisions within (pack, slug) fail loud. * * Secondary entry = {json_path}. Strict path safety: must be absolute, * must normalize cleanly, must end in .json, must live under a * recognized artifact dir (canonical roots + extra_artifact_dirs). * * Return shape is a discriminated union on `pack` — incident/repo/ * change payloads stay distinct. Metadata is also surfaced so callers * can do weak-checks / section-counts without parsing the full * artifact themselves. */ import { z } from "zod"; import type { Envelope } from "../envelope.js"; import type { RunContext } from "../runContext.js"; import { type ArtifactMetadata, type PackArtifact } from "./artifacts/scan.js"; export declare const artifactReadSchema: z.ZodObject<{ pack: z.ZodOptional>; slug: z.ZodOptional; json_path: z.ZodOptional; extra_artifact_dirs: z.ZodOptional>; }, z.core.$strip>; export type ArtifactReadInput = z.infer; export interface ArtifactReadResult { metadata: ArtifactMetadata; /** The full artifact payload, typed by pack. */ artifact: PackArtifact; } export declare function handleArtifactRead(input: ArtifactReadInput, ctx: RunContext): Promise>; //# sourceMappingURL=artifactRead.d.ts.map