@eir-labs/coltrane 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/src/access_grant.d.ts +21 -0
  2. package/dist/src/access_grant.js +33 -4
  3. package/dist/src/access_grant.js.map +1 -1
  4. package/dist/src/claude_invoker.d.ts +28 -0
  5. package/dist/src/claude_invoker.js +68 -7
  6. package/dist/src/claude_invoker.js.map +1 -1
  7. package/dist/src/cli.d.ts +44 -0
  8. package/dist/src/cli.js +358 -0
  9. package/dist/src/cli.js.map +1 -0
  10. package/dist/src/cli_entry.d.ts +2 -0
  11. package/dist/src/cli_entry.js +23 -0
  12. package/dist/src/cli_entry.js.map +1 -0
  13. package/dist/src/composition.d.ts +2 -0
  14. package/dist/src/composition.js.map +1 -1
  15. package/dist/src/fs_atomic.d.ts +1 -0
  16. package/dist/src/fs_atomic.js +34 -0
  17. package/dist/src/fs_atomic.js.map +1 -0
  18. package/dist/src/genome_schema.d.ts +5 -1
  19. package/dist/src/genome_schema.js +12 -1
  20. package/dist/src/genome_schema.js.map +1 -1
  21. package/dist/src/genome_writer.d.ts +2 -2
  22. package/dist/src/genome_writer.js +17 -4
  23. package/dist/src/genome_writer.js.map +1 -1
  24. package/dist/src/gig_tracker.d.ts +29 -1
  25. package/dist/src/gig_tracker.js +27 -0
  26. package/dist/src/gig_tracker.js.map +1 -1
  27. package/dist/src/index.d.ts +1 -0
  28. package/dist/src/index.js +1 -0
  29. package/dist/src/index.js.map +1 -1
  30. package/dist/src/ledger.d.ts +3 -0
  31. package/dist/src/ledger.js.map +1 -1
  32. package/dist/src/loader.d.ts +2 -0
  33. package/dist/src/loader.js +10 -0
  34. package/dist/src/loader.js.map +1 -1
  35. package/dist/src/mcp.js +82 -20
  36. package/dist/src/mcp.js.map +1 -1
  37. package/dist/src/outputs.d.ts +74 -0
  38. package/dist/src/outputs.js +106 -71
  39. package/dist/src/outputs.js.map +1 -1
  40. package/dist/src/registry.d.ts +13 -0
  41. package/dist/src/registry.js +112 -0
  42. package/dist/src/registry.js.map +1 -1
  43. package/dist/src/reuse.d.ts +276 -0
  44. package/dist/src/reuse.js +215 -0
  45. package/dist/src/reuse.js.map +1 -0
  46. package/dist/src/runtime.d.ts +157 -4
  47. package/dist/src/runtime.js +519 -30
  48. package/dist/src/runtime.js.map +1 -1
  49. package/dist/src/server.d.ts +20 -0
  50. package/dist/src/server.js +733 -28
  51. package/dist/src/server.js.map +1 -1
  52. package/dist/src/skill_runner.mjs +8 -2
  53. package/dist/src/skill_subprocess.d.ts +55 -5
  54. package/dist/src/skill_subprocess.js +215 -11
  55. package/dist/src/skill_subprocess.js.map +1 -1
  56. package/dist/src/version.d.ts +1 -1
  57. package/dist/src/version.js +1 -1
  58. package/package.json +6 -4
@@ -1 +1 @@
1
- {"version":3,"file":"outputs.js","sourceRoot":"","sources":["../../src/outputs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outputs.js","sourceRoot":"","sources":["../../src/outputs.ts"],"names":[],"mappings":"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"}
@@ -42,5 +42,18 @@ export interface Registry {
42
42
  removed: string[];
43
43
  };
44
44
  }
45
+ /**
46
+ * The rules a domain type must satisfy to be REPRESENTABLE at all — as distinct from the
47
+ * per-output checks in `validate()`.
48
+ *
49
+ * Exported because there are two doors into the type table — `registerType` here and the
50
+ * loader reading files off disk — and a rule enforced at only one of them is a rule with a
51
+ * way around it. Returns a reason, or null when the type is fine.
52
+ */
53
+ export declare function domainTypeDefect(def: {
54
+ slug: string;
55
+ extends: string;
56
+ schema?: unknown;
57
+ }): string | null;
45
58
  export declare function createRegistry(initial?: DomainType[]): Registry;
46
59
  export declare function loadRegistry(genome: LoadedGenome): Registry;
@@ -1,5 +1,6 @@
1
1
  import Ajv from "ajv";
2
2
  import { CORE_TYPES } from "./core_types.js";
3
+ import { CORE_SUBSTANCE } from "./output_validation.js";
3
4
  import { CANONICAL_CORE_TYPES } from "./canonical_core_types.js";
4
5
  // Base-type property inheritance (docs/genome-extension.md). A domain type extending
5
6
  // a core type inherits the core's schema PROPERTIES — the base fields are "around at
@@ -20,6 +21,114 @@ export const RESOLVE_WEIGHTS = {
20
21
  function isCoreType(slug) {
21
22
  return CORE_TYPES.includes(slug);
22
23
  }
24
+ /**
25
+ * Describe how an overload makes a type UNSEALABLE, or null when it does not.
26
+ *
27
+ * Only a TYPE mismatch qualifies, and that is a deliberate narrowing after measurement. The
28
+ * other two overloads worth worrying about — a weakened `minItems`, a dropped per-item
29
+ * `required` — are already backstopped at runtime: `output_validation.ts` rejects an empty
30
+ * floor array outright and enforces `item_requires` per item, whatever the subtype's schema
31
+ * says. So they change nothing observable, and refusing them would reject types the engine's
32
+ * own suite builds ON PURPOSE (`seal_core_invariant_wiring.test.ts` constructs a loose
33
+ * `loose-doc` precisely to prove the floor catches what the schema permits).
34
+ *
35
+ * A type mismatch is different in kind: the floor wants an array and the schema wants a
36
+ * string, so NO payload satisfies both and the type is dead on arrival. That is #264's live
37
+ * example — `fix-plan` declaring `steps: { type: "string" }`.
38
+ */
39
+ function overloadClash(base, own, rule) {
40
+ if (!base)
41
+ return null;
42
+ // `type` may legally be a STRING or an ARRAY of strings. Reading only the string spelling
43
+ // let `type: ["string","null"]` through — which is #264's own example written the other
44
+ // legal way. Compare as sets: an overload that shares no type with the core is unsatisfiable.
45
+ const asSet = (v) => typeof v === "string" ? new Set([v]) : Array.isArray(v) && v.every((x) => typeof x === "string") ? new Set(v) : null;
46
+ const b = asSet(base["type"]);
47
+ const o = asSet(own["type"]);
48
+ if (b && o && ![...o].some((t) => b.has(t))) {
49
+ return `core declares type ${JSON.stringify(base["type"])}, subtype declares ${JSON.stringify(own["type"])}`;
50
+ }
51
+ // A floor that can only ever be EMPTY is unsatisfiable, because the runtime floor rejects
52
+ // an empty array and an empty string. These are the "technically the right type" spellings
53
+ // of the same defect.
54
+ if (own["maxItems"] === 0)
55
+ return `subtype caps "maxItems" at 0, and the floor rejects an empty array`;
56
+ if (own["maxLength"] === 0)
57
+ return `subtype caps "maxLength" at 0, and the floor rejects an empty string`;
58
+ // `const` / `enum` pin the value to a closed set. If nothing in that set can satisfy the
59
+ // floor's shape, no payload can satisfy both.
60
+ const closed = own["const"] !== undefined ? [own["const"]] : Array.isArray(own["enum"]) ? own["enum"] : null;
61
+ if (closed && rule) {
62
+ const satisfies = (v) => rule.shape === "array" ? Array.isArray(v) && v.length > 0 : typeof v === "string" && v.length > 0;
63
+ if (!closed.some(satisfies)) {
64
+ return `subtype pins the value to ${JSON.stringify(closed)}, none of which satisfies the ${rule.shape} floor`;
65
+ }
66
+ }
67
+ // The per-item field the core REQUIRES must remain satisfiable. Dropping it from `required`
68
+ // is harmless (the runtime enforces it anyway); declaring it as a type the runtime will
69
+ // never accept is not — the runtime wants a non-empty string.
70
+ if (rule?.item_requires) {
71
+ const itemProp = own["items"]?.properties?.[rule.item_requires];
72
+ const t = itemProp ? asSet(itemProp["type"]) : null;
73
+ if (t && !t.has("string")) {
74
+ return `subtype declares item field "${rule.item_requires}" as ${JSON.stringify(itemProp?.["type"])}, and the floor requires a non-empty string`;
75
+ }
76
+ }
77
+ return null;
78
+ }
79
+ /**
80
+ * The rules a domain type must satisfy to be REPRESENTABLE at all — as distinct from the
81
+ * per-output checks in `validate()`.
82
+ *
83
+ * Exported because there are two doors into the type table — `registerType` here and the
84
+ * loader reading files off disk — and a rule enforced at only one of them is a rule with a
85
+ * way around it. Returns a reason, or null when the type is fine.
86
+ */
87
+ export function domainTypeDefect(def) {
88
+ // #272 — a domain type must not be NAMED after a core.
89
+ //
90
+ // `coreTypeOf` answers "what core is this really" by short-circuiting on CORE_TYPES before
91
+ // consulting the registry. So a type registered as `Signal` resolves to "Signal" on its
92
+ // NAME while the registry says it extends something else, and the core-agreement check
93
+ // (#263) inverts: the contradicted pair seals, the correct pair is refused, and the
94
+ // rejection asserts something about the registry that is not true.
95
+ //
96
+ // Refusing the name is cheaper and stronger than teaching every resolver to disambiguate —
97
+ // the ambiguity stops being representable.
98
+ // Narrowly: only when the slug names a core it does NOT extend. `{slug:"Signal",
99
+ // extends:"Signal"}` is a legitimate bare-core alias — both answers agree, so there is no
100
+ // ambiguity to resolve and several suites rely on it. The defect is a name that claims one
101
+ // core while `extends` says another, which is what makes the two resolutions disagree.
102
+ if (isCoreType(def.slug) && def.slug !== def.extends) {
103
+ return `slug "${def.slug}" names a core type but extends "${def.extends}" — "what core is this" would have two contradictory answers (the name says ${def.slug}, the registry says ${def.extends}), and resolution short-circuits on the NAME`;
104
+ }
105
+ // #264 — a floor field overloaded into something the core forbids.
106
+ //
107
+ // `{...baseProps, ...ownProps}` lets a subtype's declaration win silently, so redeclaring
108
+ // e.g. `steps` as a string yields a type NO payload can satisfy: the merged schema wants a
109
+ // string, the substance floor wants a non-empty array. The genome loads clean, load_errors
110
+ // is empty, and the first symptom is a seal abort at a terminal phase — the #1 documented
111
+ // footgun downstream.
112
+ //
113
+ // NARROWING stays legal, and is the common legitimate case (`grant-opportunity` narrows
114
+ // Signal's `source` to an enum, which strengthens the floor). Only contradiction is refused.
115
+ // The GUARDED table, not a second copy. A hand-rolled duplicate here would return
116
+ // `undefined` for a seventh core and skip this check silently — a silent genome drop
117
+ // reintroduced inside the fix named after silent genome drops. `CORE_SUBSTANCE` throws at
118
+ // import if a core has no floor, so the two cannot drift.
119
+ const rule = CORE_SUBSTANCE[def.extends];
120
+ const floor = rule?.field;
121
+ if (floor) {
122
+ const own = def.schema?.properties?.[floor];
123
+ if (own !== undefined) {
124
+ const clash = overloadClash(CORE_SCHEMA_PROPS[def.extends]?.[floor], own, rule);
125
+ if (clash) {
126
+ return `redeclares "${floor}", the substance floor inherited from ${def.extends}, with an incompatible type (${clash}) — the runtime floor and this schema cannot both be satisfied, so the type is unsealable under any input`;
127
+ }
128
+ }
129
+ }
130
+ return null;
131
+ }
23
132
  export function createRegistry(initial = []) {
24
133
  const ajv = new Ajv({ allErrors: true, strict: false });
25
134
  const types = new Map();
@@ -52,6 +161,9 @@ export function createRegistry(initial = []) {
52
161
  if (!isCoreType(def.extends)) {
53
162
  throw new Error(`extends must be a core type, got "${def.extends}"`);
54
163
  }
164
+ const defect = domainTypeDefect(def);
165
+ if (defect)
166
+ throw new Error(`domain type "${def.slug}" rejected: ${defect}`);
55
167
  const resolved = score({ extends: def.extends, domain: def.domain, required_fields: def.required_fields });
56
168
  if (resolved.score >= 80) {
57
169
  throw new Error(`reuse enforcement: an existing type scores ${resolved.score} (>=80)`);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,276 @@
1
+ /**
2
+ * Bump when the key LAYOUT changes (a new component, a different framing). Old keys then
3
+ * simply stop being addressable, which is the correct outcome: a key computed under a
4
+ * different layout is not a weaker match, it is a different question.
5
+ */
6
+ export declare const REUSE_KEY_VERSION = "cr1";
7
+ /** Bump when the on-disk checkpoint shape changes. A checkpoint of another version is refused. */
8
+ export declare const CHECKPOINT_SCHEMA_VERSION = 1;
9
+ /** Bump when the on-disk reuse-entry shape changes. An entry of another version is a miss. */
10
+ export declare const REUSE_SCHEMA_VERSION = 1;
11
+ export declare class ReuseStoreError extends Error {
12
+ }
13
+ /**
14
+ * How a caller answers "what shape is this type, right now". Supplied by the OutputStore,
15
+ * which is already the single owner of type resolution at the seal boundary (`coreTypeOf`) —
16
+ * #263 was precisely two layers disagreeing about the same question, so this does not become
17
+ * a second owner. Returns "" for a type the registry cannot describe.
18
+ */
19
+ export type TypeFingerprintFn = (typeSlug: string) => string;
20
+ /**
21
+ * Fingerprint one type definition: its core, its required list, and its whole schema.
22
+ *
23
+ * Deliberately OVER-SENSITIVE — any edit to the type, including a nested one, invalidates
24
+ * every entry sealed under the old shape. Type edits are rare; a miss costs one cold
25
+ * invocation; serving an object the current seal validator would reject costs a run that
26
+ * dies at the terminal phase. The trade is not close.
27
+ */
28
+ export declare function typeShapeFingerprint(def: {
29
+ extends: string;
30
+ required_fields?: readonly string[] | undefined;
31
+ schema?: unknown;
32
+ }): string;
33
+ /**
34
+ * The identity a resume must match, field for field.
35
+ *
36
+ * `genome_hash` is the load-bearing one: it folds the standard's phase DAG and every bound
37
+ * agent's type surface, so a resume across an edited pipeline cannot happen. The rest close
38
+ * the holes genome_hash does not cover:
39
+ *
40
+ * - `gig_input_sha` — the dispatch payload. Phases 1..4 derived from payload A followed by
41
+ * phase 5 consuming payload B is the same splice as a genome change, one layer down.
42
+ * - `model_version` — a run whose first half was produced by one model and second half by
43
+ * another gets ONE `run_fingerprint`, carrying only the final model. That fingerprint then
44
+ * misdescribes the outputs it covers. Cheap to check; usually "unknown" on both sides, so
45
+ * it costs nothing for callers that never set it.
46
+ * - `depth` — #237 made depth shape what the model is asked for. A `skim` half stitched to a
47
+ * `deep` half is two different pipelines wearing one manifest.
48
+ * - `canonical_form_version` — content_shas computed under two canonical forms are not
49
+ * comparable, so every hash-based check below would be comparing incomparable things.
50
+ *
51
+ * NOT included: `run_fingerprint`. It is a RESULT identity, not a run identity — it is
52
+ * computed at the end of a run from the outputs the run produced, so a run that failed at
53
+ * phase 5 does not have one at all, and the fingerprint of the resumed run is precisely the
54
+ * thing resume exists to produce. Gating on it would be circular.
55
+ */
56
+ export interface RunIdentity {
57
+ standard_slug: string;
58
+ genome_hash: string;
59
+ /**
60
+ * The WHOLE definition of every bound agent, and every resolved skill's code_hash.
61
+ *
62
+ * `genome_hash` is NOT sufficient and this field exists because it is not. `genomeHash`
63
+ * projects each agent down to `{slug, primitives, input_types, output_types, domain}` —
64
+ * so `identity`, `method`, `constraints`, `behavioral_primitives`, `allowed_tools`,
65
+ * `code_tool_access`, the `max_*` limits and `skill_slugs` are all invisible to it. Those
66
+ * are the fields that BECOME THE PROMPT. Rewrite an agent's method under a stable slug
67
+ * after a bad run — the ordinary response to a bad run — and `genome_hash` does not move,
68
+ * so a resume would splice chairs from genome B onto sealed outputs from genome A and
69
+ * nothing in the manifest would record it. For a skill chair the code IS the producer, and
70
+ * a rewritten `skill.mjs` under an unchanged `meta.version` is the same defect.
71
+ *
72
+ * `reuseCacheKey` already folds exactly this (see `ReuseKeyInput.agent` and `.skills`)
73
+ * with the same reasoning. Two gates guarding one concern must not answer differently.
74
+ */
75
+ producers_sha: string;
76
+ gig_input_sha: string;
77
+ model_version: string;
78
+ depth: string;
79
+ canonical_form_version: string;
80
+ }
81
+ /**
82
+ * Fold every producer definition a run depends on into one hash.
83
+ *
84
+ * Whole agent definitions, plus each resolved skill's verified `code_hash` — not the slug,
85
+ * which is precisely what an edit-under-a-stable-slug leaves unchanged.
86
+ */
87
+ export declare function producersSha(input: {
88
+ agents: readonly unknown[];
89
+ skills?: ReadonlyArray<{
90
+ slug: string;
91
+ code_hash: string;
92
+ }>;
93
+ }): string;
94
+ export declare function runIdentityMismatch(a: RunIdentity, b: RunIdentity): string[];
95
+ /** One completed chair, as recorded for a possible resume. */
96
+ export interface CheckpointRole {
97
+ role: string;
98
+ phase: string;
99
+ /** The sealed records, by store id. Resolved against the OutputStore at resume time. */
100
+ output_ids: string[];
101
+ /** Their content_shas, in the same order — so a store whose bytes moved is caught. */
102
+ content_shas: string[];
103
+ /** Their domain types, in the same order. */
104
+ domain_types: string[];
105
+ /** Each domain type's shape when it was sealed. Re-checked at resume. */
106
+ type_fingerprints: string[];
107
+ sealed_at: string;
108
+ }
109
+ export interface GigCheckpoint {
110
+ schema_version: number;
111
+ gig_id: string;
112
+ identity: RunIdentity;
113
+ started_at: string;
114
+ updated_at: string;
115
+ roles: CheckpointRole[];
116
+ /**
117
+ * What the run that wrote this checkpoint had spent when it wrote it, as JSON. Reported by a
118
+ * resumed run under `resumed_from.prior_usage` and deliberately NOT folded into the resumed
119
+ * run's own `usage`: #235/#236 made `usage` mean "what THIS run actually captured", and
120
+ * quietly widening it to "what the gig cost across attempts" would undo that. Two numbers,
121
+ * both true, kept apart.
122
+ */
123
+ prior_usage?: unknown;
124
+ }
125
+ export interface CheckpointStore {
126
+ /** The checkpoint for this gig, or undefined if none was ever written. Throws on damage. */
127
+ read(gig_id: string): GigCheckpoint | undefined;
128
+ write(cp: GigCheckpoint): void;
129
+ /**
130
+ * Drop a gig's checkpoint. Called when a gig COMPLETES.
131
+ *
132
+ * A checkpoint exists to resume unfinished work, so a completed gig's is dead weight — and
133
+ * without this every gig a deployment ever runs leaves a file behind forever. A FAILED or
134
+ * aborted gig's checkpoint is kept, because that is precisely what resume reads.
135
+ *
136
+ * Best-effort: a checkpoint that cannot be removed is disk to reclaim, not a reason to fail
137
+ * a run that has already succeeded.
138
+ */
139
+ remove(gig_id: string): void;
140
+ }
141
+ /** One sealed output, carried with everything `OutputStore.write` needs to re-seal it. */
142
+ export interface ReuseOutput {
143
+ core_type: string;
144
+ domain_type: string;
145
+ domain: string;
146
+ primitive: string;
147
+ agent_slug: string;
148
+ phase: string;
149
+ data: Record<string, unknown>;
150
+ /** The content_sha the ORIGINAL seal produced. Re-derived on injection and compared. */
151
+ content_sha: string;
152
+ /** The shape `domain_type` had when this was sealed. Re-checked on every read. */
153
+ type_fingerprint: string;
154
+ source_output_id: string;
155
+ skill_provenance?: {
156
+ slug: string;
157
+ version: number;
158
+ code_hash: string;
159
+ tier: number;
160
+ } | undefined;
161
+ }
162
+ /**
163
+ * One cached chair invocation. A chair is cached ALL-OR-NOTHING, mirroring the invariant #243
164
+ * established for a fresh chair: it seals its whole contract or it seals nothing. A
165
+ * half-served chair would be a shape the engine does not otherwise admit.
166
+ */
167
+ export interface ReuseEntry {
168
+ schema_version: number;
169
+ cache_key: string;
170
+ outputs: ReuseOutput[];
171
+ source_gig_id: string;
172
+ source_role: string;
173
+ created_at: string;
174
+ }
175
+ export interface ReuseStore {
176
+ /** The entry for this key, or undefined. Throws ReuseStoreError on a damaged entry. */
177
+ get(cache_key: string): ReuseEntry | undefined;
178
+ put(entry: ReuseEntry): void;
179
+ }
180
+ /**
181
+ * Everything that determines what a chair's invocation WOULD produce. Every field is part of
182
+ * the key; nothing here is decoration.
183
+ */
184
+ export interface ReuseKeyInput {
185
+ /** Over-scoping, on purpose: two standards with identical chairs do not share entries. */
186
+ standard_slug: string;
187
+ phase: string;
188
+ /** The chair definition, canonically. Its contracts and deps decide what it is asked for. */
189
+ chair: unknown;
190
+ /**
191
+ * The bound agent's WHOLE definition (identity, method, constraints, tools, tier, limits) —
192
+ * because that is what becomes the prompt. An agent edited under a stable slug is a
193
+ * different producer, and keying on the slug alone would serve the old agent's work as the
194
+ * new one's.
195
+ */
196
+ agent: unknown;
197
+ /** For a skill-backed chair: slug + version + verified code_hash. The code IS the producer. */
198
+ skill_provenance?: unknown;
199
+ /**
200
+ * The resolved skill packages the agent actually holds (slug/version/code_hash). A run that
201
+ * silently lost a skill binding (#241) produces different work under an identical agent
202
+ * definition, and used to be cryptographically indistinguishable from a skilled one.
203
+ */
204
+ skills: readonly {
205
+ slug: string;
206
+ version: number;
207
+ code_hash: string;
208
+ }[];
209
+ /**
210
+ * The content_shas of the inputs this chair consumed — CONTENT, not object identity. Sorted,
211
+ * because a chair consuming the same two records in a different `depends_on` order consumed
212
+ * the same thing (and #240 established that nothing an operator sees may depend on the order
213
+ * of a JSON array).
214
+ */
215
+ input_shas: readonly string[];
216
+ /**
217
+ * The hash of the WHOLE dispatch payload.
218
+ *
219
+ * Narrower would be a guess. Every invocation receives `gig_input` entire — the invoker
220
+ * hands the model the whole payload — so the engine cannot know which keys a chair read.
221
+ * Restricting this to the gig-input types the chair's `input_contract` names would be
222
+ * exactly the kind of plausible inference #240 removed from provenance stamping. The cost
223
+ * is stated plainly: the cache is per-payload, so it serves re-runs and retries of the same
224
+ * dispatch, not cross-payload sharing. A consumer who KNOWS which payload fields matter can
225
+ * build a narrower cache; the engine cannot.
226
+ */
227
+ gig_input_sha: string;
228
+ model_version: string;
229
+ depth: string;
230
+ /** The types this chair promised THIS run (#174's subset), which is what it was asked for. */
231
+ output_types: readonly string[];
232
+ canonical_form_version: string;
233
+ }
234
+ /**
235
+ * The cache key. Length-prefixed framing so no component can forge a delimiter and
236
+ * masquerade as a different key layout.
237
+ *
238
+ * NOT in the key: the TYPE FINGERPRINTS of the sealed outputs. Those ride on the ENTRY and
239
+ * are re-checked on read. Putting them in the key (as the downstream precedent does) would
240
+ * make a stale entry unaddressable — safe, but a SILENT miss, indistinguishable from
241
+ * never-cached. This engine has spent a lot of effort making refusals say why they happened,
242
+ * and the entry-side check gives a stale entry a name (`type-fingerprint-mismatch`) instead
243
+ * of a shrug. It is equally safe here because, unlike that precedent, every injection also
244
+ * crosses the real seal boundary before anything becomes durable.
245
+ */
246
+ export declare function reuseCacheKey(input: ReuseKeyInput): string;
247
+ /** Why an entry that WAS found is not being served. Never a silent miss. */
248
+ export type ReuseRejection = "schema-version" | "empty-entry" | "type-unfingerprintable" | "type-fingerprint-mismatch" | "content-sha-mismatch" | "seal-rejected" | "unreadable";
249
+ export interface ReuseCheck {
250
+ ok: boolean;
251
+ reason?: ReuseRejection;
252
+ detail?: string;
253
+ }
254
+ /**
255
+ * Is this entry still safe to serve — on the evidence available WITHOUT touching the store?
256
+ *
257
+ * This is the cheap half of the guard. The authoritative half is that every injected output
258
+ * is re-validated through `OutputStore.validateWrite` and then re-sealed through
259
+ * `OutputStore.write`, so it crosses exactly the boundary a fresh output crosses: the #263
260
+ * core-agreement check, the registry schema, and the #227/#228 core substance floor. Nothing
261
+ * is injected that a fresh seal would have refused.
262
+ *
263
+ * Both halves exist because they fail in different directions. The fingerprint catches a
264
+ * genome edit BEFORE any data is touched and can name it. The seal catches everything else —
265
+ * a hand-edited entry, an entry written by an older engine whose substance floor was looser,
266
+ * a registry that resolves the type to a different core than it did. Neither subsumes the
267
+ * other, and the expensive one is the one that must not be skipped.
268
+ */
269
+ export declare function checkReuseEntry(entry: ReuseEntry, fingerprintOf: TypeFingerprintFn): ReuseCheck;
270
+ /** Checkpoints under `<dir>/checkpoints/<gig_id>.json`, alongside `outputs/` and `refs/`. */
271
+ export declare function createCheckpointStore(persistDir: string): CheckpointStore;
272
+ /** Reuse entries under `<dir>/reuse/<cache_key>.json`. Keys are sha256 hex — flat is fine. */
273
+ export declare function createReuseStore(persistDir: string): ReuseStore;
274
+ /** An in-memory pair for tests and for a caller that wants reuse within one process. */
275
+ export declare function createMemoryCheckpointStore(): CheckpointStore;
276
+ export declare function createMemoryReuseStore(): ReuseStore;