@cat-factory/contracts 0.217.0 → 0.218.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.
@@ -147,14 +147,20 @@ export declare const capabilityCredentialsViewSchema: v.ObjectSchema<{
147
147
  readonly updatedAt: v.NumberSchema<undefined>;
148
148
  }, undefined>, undefined>;
149
149
  /**
150
- * Whether the deployment ALSO has an environment-variable fallback behind this store. False
151
- * when a facade wired a store-only resolver.
150
+ * Whether the deployment ALSO has an environment-variable fallback behind this store, read off
151
+ * the chain the facade actually COMPOSED rather than asserted by the surface that renders it.
152
152
  *
153
153
  * Stated because it changes what an EMPTY row means: with the fallback, a key nothing is stored
154
154
  * for may still resolve from the deployment's environment, so the UI must not report it as
155
155
  * missing. "Absent" and "zero" again.
156
+ *
157
+ * Three states, not two, because a deployment that supplied its OWN `ToolSecretResolver`
158
+ * replaced the whole chain, and the platform cannot describe what it put there: that resolver
159
+ * may read Vault, or the environment, or both. Absent is that answer. Rendering a guess either
160
+ * way is the same mistake in opposite directions: `true` sends an operator away from a
161
+ * credential nothing will resolve, `false` sends them hunting for a value that already answers.
156
162
  */
157
- readonly environmentFallback: v.BooleanSchema<undefined>;
163
+ readonly environmentFallback: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
158
164
  /**
159
165
  * Whether the DECLARATION half of this view is known to be incomplete — the generative
160
166
  * integrations are read through `BinaryGeneratorSource`, which THROWS rather than answering an
@@ -1 +1 @@
1
- {"version":3,"file":"capability-credentials.d.ts","sourceRoot":"","sources":["../src/capability-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAiC5B;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,6BAA6B,2ZAiBzC,CAAA;AAED,8FAA8F;AAC9F,eAAO,MAAM,+BAA+B;;;aAG1C,CAAA;AACF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAE7F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B;;aAExC,CAAA;AACF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAE9F;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B;;IAExC,2FAA2F;;aAE3F,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEzF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gCAAgC;;IAE3C,mFAAmF;;;;;QAM/E,mFAAmF;;;IAIvF,uEAAuE;;IAEvE,iDAAiD;;IAEjD,6EAA6E;;aAE7E,CAAA;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gCAAgC,CAAC,CAAA;AAE/F;;;GAGG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAE7C,wFAAwF;AACxF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;wDAU7C,CAAA;AACD,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,WAAW,CAC1D,OAAO,iCAAiC,CACzC,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,+BAA+B;;;QApD1C,mFAAmF;;;;;YAM/E,mFAAmF;;;QAIvF,uEAAuE;;QAEvE,iDAAiD;;QAEjD,6EAA6E;;;IAwC7E,qDAAqD;;;QA5ErD,2FAA2F;;;IA8E3F;;;;;;;OAOG;;IAEH;;;;;;;;;OASG;;aAEH,CAAA;AACF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAE7F,gGAAgG;AAChG,eAAO,MAAM,iCAAiC;;;yBAA2C,CAAA;AACzF,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,OAAO,GAAG,yBAAyB,EAAE,CAE1F;AAED,6FAA6F;AAC7F,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,yBAAyB,EAAE,EACpC,SAAS,EAAE,MAAM,GAChB,uBAAuB,EAAE,CAE3B"}
1
+ {"version":3,"file":"capability-credentials.d.ts","sourceRoot":"","sources":["../src/capability-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAiC5B;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,6BAA6B,2ZAiBzC,CAAA;AAED,8FAA8F;AAC9F,eAAO,MAAM,+BAA+B;;;aAG1C,CAAA;AACF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAE7F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B;;aAExC,CAAA;AACF,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAE9F;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B;;IAExC,2FAA2F;;aAE3F,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEzF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gCAAgC;;IAE3C,mFAAmF;;;;;QAM/E,mFAAmF;;;IAIvF,uEAAuE;;IAEvE,iDAAiD;;IAEjD,6EAA6E;;aAE7E,CAAA;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gCAAgC,CAAC,CAAA;AAE/F;;;GAGG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAA;AAE7C,wFAAwF;AACxF,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;wDAU7C,CAAA;AACD,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,WAAW,CAC1D,OAAO,iCAAiC,CACzC,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,+BAA+B;;;QApD1C,mFAAmF;;;;;YAM/E,mFAAmF;;;QAIvF,uEAAuE;;QAEvE,iDAAiD;;QAEjD,6EAA6E;;;IAwC7E,qDAAqD;;;QA5ErD,2FAA2F;;;IA8E3F;;;;;;;;;;;;;OAaG;;IAEH;;;;;;;;;OASG;;aAEH,CAAA;AACF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAE7F,gGAAgG;AAChG,eAAO,MAAM,iCAAiC;;;yBAA2C,CAAA;AACzF,wBAAgB,gCAAgC,CAAC,GAAG,EAAE,OAAO,GAAG,yBAAyB,EAAE,CAE1F;AAED,6FAA6F;AAC7F,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,yBAAyB,EAAE,EACpC,SAAS,EAAE,MAAM,GAChB,uBAAuB,EAAE,CAE3B"}
@@ -132,14 +132,20 @@ export const capabilityCredentialsViewSchema = v.object({
132
132
  /** Stored keys no registered capability declares. */
133
133
  orphaned: v.array(capabilityCredentialRefSchema),
134
134
  /**
135
- * Whether the deployment ALSO has an environment-variable fallback behind this store. False
136
- * when a facade wired a store-only resolver.
135
+ * Whether the deployment ALSO has an environment-variable fallback behind this store, read off
136
+ * the chain the facade actually COMPOSED rather than asserted by the surface that renders it.
137
137
  *
138
138
  * Stated because it changes what an EMPTY row means: with the fallback, a key nothing is stored
139
139
  * for may still resolve from the deployment's environment, so the UI must not report it as
140
140
  * missing. "Absent" and "zero" again.
141
+ *
142
+ * Three states, not two, because a deployment that supplied its OWN `ToolSecretResolver`
143
+ * replaced the whole chain, and the platform cannot describe what it put there: that resolver
144
+ * may read Vault, or the environment, or both. Absent is that answer. Rendering a guess either
145
+ * way is the same mistake in opposite directions: `true` sends an operator away from a
146
+ * credential nothing will resolve, `false` sends them hunting for a value that already answers.
141
147
  */
142
- environmentFallback: v.boolean(),
148
+ environmentFallback: v.optional(v.boolean()),
143
149
  /**
144
150
  * Whether the DECLARATION half of this view is known to be incomplete — the generative
145
151
  * integrations are read through `BinaryGeneratorSource`, which THROWS rather than answering an
@@ -1 +1 @@
1
- {"version":3,"file":"capability-credentials.js","sourceRoot":"","sources":["../src/capability-credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capability-credentials.js","sourceRoot":"","sources":["../src/capability-credentials.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import * as v from 'valibot';
4
4
  * external consumer must notice. Backwards compatibility is a non-goal (see CLAUDE.md), so
5
5
  * a bump means "re-read the schema", not "a compatibility shim exists".
6
6
  */
7
- export declare const PR_VERIFICATION_REPORT_VERSION = 3;
7
+ export declare const PR_VERIFICATION_REPORT_VERSION = 4;
8
8
  /**
9
9
  * Whether a section has evidence to show.
10
10
  * - `reported` — the producing step ran and its evidence is below.
@@ -162,10 +162,143 @@ export declare const prReportEnvironmentSchema: v.ObjectSchema<{
162
162
  }, undefined>;
163
163
  export type PrReportEnvironment = v.InferOutput<typeof prReportEnvironmentSchema>;
164
164
  /**
165
- * The ephemeral-environment lifecycle: which environments came up, and whether they were
166
- * torn down again. `teardown` reads the run's live environment projection:
167
- * - `confirmed` — every environment reached a torn-down/expired state.
168
- * - `pending` — at least one is still live (the run may still be using it).
165
+ * Why the lifecycle could not be dated, as a MACHINE-READABLE cause rather than prose. The four
166
+ * are kept apart because each is a different thing to fix, and because three of them would
167
+ * otherwise be reported as the fourth: an empty timeline is what a deployment retaining no log,
168
+ * a failed read, a truncated read and a run that stood nothing up all produce, and only one of
169
+ * those is a statement about how the deployment is configured.
170
+ *
171
+ * - `unwired`: no provisioning-log repository is wired, so nothing records these dates.
172
+ * - `unreadable`: the log is wired and the read FAILED. A transport blip, not a
173
+ * configuration fact; re-attempted on the next publish.
174
+ * - `truncated`: the run has more provisioning rows than one report read may take, so
175
+ * what came back cannot be reasoned over as a complete history. Stated
176
+ * rather than folded, because a partial history yields a CONFIDENT wrong
177
+ * answer (an environment whose bring-up row fell off the end looks like
178
+ * one that was never stood up, and therefore never needs reclaiming).
179
+ * - `not_provisioned`: the run has no deployer step, so no lifecycle was ever meant to exist
180
+ * and the log was deliberately not queried.
181
+ */
182
+ export declare const prReportTimelineGapSchema: v.PicklistSchema<["unwired", "unreadable", "truncated", "not_provisioned"], undefined>;
183
+ export type PrReportTimelineGap = v.InferOutput<typeof prReportTimelineGapSchema>;
184
+ /**
185
+ * The DATED half of the environment lifecycle, read off the run's rows in the provisioning
186
+ * event log, the only store that records WHEN a throwaway environment came up and when it
187
+ * went away. The step state can say an environment is gone; only the log can say it was torn
188
+ * down at a time, by an attempt that succeeded.
189
+ *
190
+ * `gap` is the honest-absence flag and it is NOT a formality: a deployment that retains no
191
+ * provisioning log, and one whose environments were never torn down, produce the same empty
192
+ * timeline and opposite facts. Reporting either as `tornDownAt: null` alone would let a reader
193
+ * conclude the environment is still running. It is a single field rather than a boolean beside
194
+ * a reason, so the two can never disagree.
195
+ */
196
+ export declare const prReportEnvironmentTimelineSchema: v.ObjectSchema<{
197
+ /**
198
+ * Why this timeline is empty, or `null` when the log was read whole and the dates below are
199
+ * the history. Non-null ⇒ every field below is a zero because nothing (or not enough) was
200
+ * READ, not because nothing happened; `note` renders the same fact for a human.
201
+ */
202
+ readonly gap: v.NullableSchema<v.PicklistSchema<["unwired", "unreadable", "truncated", "not_provisioned"], undefined>, undefined>;
203
+ /** Says why the timeline is empty when `gap` is set. */
204
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
205
+ /** Epoch ms of the run's FIRST successful environment provision, when one is on record. */
206
+ readonly provisionedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
207
+ /**
208
+ * Epoch ms of the run's LAST successful environment teardown, when one is on record. This is
209
+ * the last one RECORDED, which is the end of the lifecycle only once {@link
210
+ * prReportEnvironmentsSchema.entries.teardown} is `confirmed`: a run that replaced an
211
+ * environment mid-flight reclaimed the superseded one and is still holding its replacement.
212
+ */
213
+ readonly tornDownAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
214
+ /**
215
+ * How many provisioning attempts the log records as failures for this run (0 on a clean
216
+ * bring-up). Counted at whatever grain the provider logged: a whole environment that failed to
217
+ * come up, or one step of a multi-step stack recipe. Both are attempts that did not work, and
218
+ * the log does not distinguish them, so neither does this.
219
+ */
220
+ readonly provisionFailures: v.NumberSchema<undefined>;
221
+ /**
222
+ * How many environments the run stood up whose LATEST teardown attempt failed. A non-zero
223
+ * count is the state the live-projection tri-state below cannot express: the platform tried to
224
+ * reclaim the environment and the provider refused, which is an operator's problem rather than
225
+ * a run's. Counted per environment, not per attempt, so a retry loop against one stuck
226
+ * environment does not read as a fleet of them.
227
+ */
228
+ readonly teardownFailures: v.NumberSchema<undefined>;
229
+ }, undefined>;
230
+ export type PrReportEnvironmentTimeline = v.InferOutput<typeof prReportEnvironmentTimelineSchema>;
231
+ /** One artifact the UI tester captured while exercising the live environment. */
232
+ export declare const prReportEvidenceArtifactSchema: v.ObjectSchema<{
233
+ /** The logical view the screenshot was taken of. */
234
+ readonly view: v.StringSchema<undefined>;
235
+ /** The stored artifact id, in the deployment's binary-artifact store. */
236
+ readonly artifactId: v.StringSchema<undefined>;
237
+ /** Whether a reference design image was paired with it for visual confirmation. */
238
+ readonly hasReference: v.BooleanSchema<undefined>;
239
+ }, undefined>;
240
+ export type PrReportEvidenceArtifact = v.InferOutput<typeof prReportEvidenceArtifactSchema>;
241
+ /**
242
+ * The MIDDLE leg of the lifecycle proof: what was actually observed against the environment
243
+ * while it was live. An environment that came up and was torn down again proves only that the
244
+ * platform can spin infrastructure; it becomes evidence for the CHANGE when something was
245
+ * exercised against it in between.
246
+ *
247
+ * The four statuses are kept apart because they call for different reactions:
248
+ * - `captured`: a tester ran against the ephemeral environment and its observations are below.
249
+ * - `local`: a tester ran, but against locally stood-up dependencies, so nothing was
250
+ * observed against the environment this section is about.
251
+ * - `undeclared`: a tester reported without saying where it ran, so its observations cannot be
252
+ * ATTRIBUTED to this environment. Distinct from `local`, which is a positive
253
+ * statement that it ran somewhere else; guessing either way would turn an
254
+ * unknown into a claim, in the one section whose whole job is provenance.
255
+ * - `absent`: no tester report at all (no tester step, or it never settled).
256
+ *
257
+ * The artifacts and counts are reported WHATEVER the status: they exist, and a reviewer should
258
+ * be able to reach them. What the status governs is whether they may be read as evidence about
259
+ * this environment, which is why the attribution rides the section rather than the rows.
260
+ */
261
+ export declare const prReportEnvironmentEvidenceSchema: v.ObjectSchema<{
262
+ readonly status: v.PicklistSchema<["captured", "local", "undeclared", "absent"], undefined>;
263
+ /** Says why the observations below are not evidence about this environment. */
264
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
265
+ /** Where the tester stood the system under test up, when a report says. */
266
+ readonly ranAgainst: v.NullableSchema<v.PicklistSchema<["local", "ephemeral"], undefined>, undefined>;
267
+ /** Epoch ms the tester step settled: the observation's place on the timeline above. */
268
+ readonly capturedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
269
+ /** How many areas the tester reported an outcome for. */
270
+ readonly outcomes: v.NumberSchema<undefined>;
271
+ /** How many spec requirements it returned a verdict on. */
272
+ readonly requirementVerdicts: v.NumberSchema<undefined>;
273
+ /** The screenshots it captured (capped like every other list; see `truncations`). */
274
+ readonly screenshots: v.ArraySchema<v.ObjectSchema<{
275
+ /** The logical view the screenshot was taken of. */
276
+ readonly view: v.StringSchema<undefined>;
277
+ /** The stored artifact id, in the deployment's binary-artifact store. */
278
+ readonly artifactId: v.StringSchema<undefined>;
279
+ /** Whether a reference design image was paired with it for visual confirmation. */
280
+ readonly hasReference: v.BooleanSchema<undefined>;
281
+ }, undefined>, undefined>;
282
+ /**
283
+ * Deep link into the run's captured evidence in the app. Null when the deployment configured
284
+ * no public app URL, so the report never emits a link to nowhere. The rows above still name
285
+ * each artifact, which is what an operator greps the store for.
286
+ */
287
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
288
+ }, undefined>;
289
+ export type PrReportEnvironmentEvidence = v.InferOutput<typeof prReportEnvironmentEvidenceSchema>;
290
+ /**
291
+ * The ephemeral-environment lifecycle, as the three-leg proof a reviewer needs: the
292
+ * environment came UP, evidence was CAPTURED from it while it was live, and it was TORN DOWN
293
+ * again. Each leg is a captured fact from a different producer, and `proof` is COMPUTED from
294
+ * the three in code, never read off any agent's claim that it tested against a preview.
295
+ *
296
+ * `teardown` prefers the provisioning log's RECORDED attempts, per environment identity, and
297
+ * falls back to the run's live step projection only when there is no log to read:
298
+ * - `confirmed` — every environment the run stood up was reclaimed.
299
+ * - `pending` — at least one is still standing (the run may still be using it).
300
+ * - `failed` — an environment's latest teardown attempt FAILED, so it is still standing
301
+ * for a reason someone has to act on.
169
302
  * - `not_applicable` — nothing was ever provisioned.
170
303
  */
171
304
  export declare const prReportEnvironmentsSchema: v.ObjectSchema<{
@@ -179,7 +312,86 @@ export declare const prReportEnvironmentsSchema: v.ObjectSchema<{
179
312
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
180
313
  readonly error: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
181
314
  }, undefined>, undefined>;
182
- readonly teardown: v.PicklistSchema<["confirmed", "pending", "not_applicable"], undefined>;
315
+ readonly teardown: v.PicklistSchema<["confirmed", "pending", "failed", "not_applicable"], undefined>;
316
+ readonly timeline: v.ObjectSchema<{
317
+ /**
318
+ * Why this timeline is empty, or `null` when the log was read whole and the dates below are
319
+ * the history. Non-null ⇒ every field below is a zero because nothing (or not enough) was
320
+ * READ, not because nothing happened; `note` renders the same fact for a human.
321
+ */
322
+ readonly gap: v.NullableSchema<v.PicklistSchema<["unwired", "unreadable", "truncated", "not_provisioned"], undefined>, undefined>;
323
+ /** Says why the timeline is empty when `gap` is set. */
324
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
325
+ /** Epoch ms of the run's FIRST successful environment provision, when one is on record. */
326
+ readonly provisionedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
327
+ /**
328
+ * Epoch ms of the run's LAST successful environment teardown, when one is on record. This is
329
+ * the last one RECORDED, which is the end of the lifecycle only once {@link
330
+ * prReportEnvironmentsSchema.entries.teardown} is `confirmed`: a run that replaced an
331
+ * environment mid-flight reclaimed the superseded one and is still holding its replacement.
332
+ */
333
+ readonly tornDownAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
334
+ /**
335
+ * How many provisioning attempts the log records as failures for this run (0 on a clean
336
+ * bring-up). Counted at whatever grain the provider logged: a whole environment that failed to
337
+ * come up, or one step of a multi-step stack recipe. Both are attempts that did not work, and
338
+ * the log does not distinguish them, so neither does this.
339
+ */
340
+ readonly provisionFailures: v.NumberSchema<undefined>;
341
+ /**
342
+ * How many environments the run stood up whose LATEST teardown attempt failed. A non-zero
343
+ * count is the state the live-projection tri-state below cannot express: the platform tried to
344
+ * reclaim the environment and the provider refused, which is an operator's problem rather than
345
+ * a run's. Counted per environment, not per attempt, so a retry loop against one stuck
346
+ * environment does not read as a fleet of them.
347
+ */
348
+ readonly teardownFailures: v.NumberSchema<undefined>;
349
+ }, undefined>;
350
+ readonly evidence: v.ObjectSchema<{
351
+ readonly status: v.PicklistSchema<["captured", "local", "undeclared", "absent"], undefined>;
352
+ /** Says why the observations below are not evidence about this environment. */
353
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
354
+ /** Where the tester stood the system under test up, when a report says. */
355
+ readonly ranAgainst: v.NullableSchema<v.PicklistSchema<["local", "ephemeral"], undefined>, undefined>;
356
+ /** Epoch ms the tester step settled: the observation's place on the timeline above. */
357
+ readonly capturedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
358
+ /** How many areas the tester reported an outcome for. */
359
+ readonly outcomes: v.NumberSchema<undefined>;
360
+ /** How many spec requirements it returned a verdict on. */
361
+ readonly requirementVerdicts: v.NumberSchema<undefined>;
362
+ /** The screenshots it captured (capped like every other list; see `truncations`). */
363
+ readonly screenshots: v.ArraySchema<v.ObjectSchema<{
364
+ /** The logical view the screenshot was taken of. */
365
+ readonly view: v.StringSchema<undefined>;
366
+ /** The stored artifact id, in the deployment's binary-artifact store. */
367
+ readonly artifactId: v.StringSchema<undefined>;
368
+ /** Whether a reference design image was paired with it for visual confirmation. */
369
+ readonly hasReference: v.BooleanSchema<undefined>;
370
+ }, undefined>, undefined>;
371
+ /**
372
+ * Deep link into the run's captured evidence in the app. Null when the deployment configured
373
+ * no public app URL, so the report never emits a link to nowhere. The rows above still name
374
+ * each artifact, which is what an operator greps the store for.
375
+ */
376
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
377
+ }, undefined>;
378
+ /**
379
+ * The composed verdict over the three legs:
380
+ * - `complete`: up, observed, and reclaimed.
381
+ * - `incomplete`: at least one leg is missing; {@link gaps} names which.
382
+ * - `not_applicable`: no environment was ever meant to stand up (no deployer step, or every
383
+ * frame is infraless), so there is nothing to prove.
384
+ *
385
+ * COMPUTED from the legs, never asserted: this is the platform's judgement about its own
386
+ * evidence, and a reviewer must be able to re-derive it from the rows above.
387
+ */
388
+ readonly proof: v.PicklistSchema<["complete", "incomplete", "not_applicable"], undefined>;
389
+ /**
390
+ * One human-readable line per missing or contradictory leg, so an `incomplete` proof always
391
+ * says WHAT is missing rather than leaving a reader to diff the sections. Empty when
392
+ * `proof` is `complete`.
393
+ */
394
+ readonly gaps: v.ArraySchema<v.StringSchema<undefined>, undefined>;
183
395
  }, undefined>;
184
396
  export type PrReportEnvironments = v.InferOutput<typeof prReportEnvironmentsSchema>;
185
397
  /**
@@ -535,7 +747,86 @@ export declare const prVerificationReportSchema: v.ObjectSchema<{
535
747
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
536
748
  readonly error: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
537
749
  }, undefined>, undefined>;
538
- readonly teardown: v.PicklistSchema<["confirmed", "pending", "not_applicable"], undefined>;
750
+ readonly teardown: v.PicklistSchema<["confirmed", "pending", "failed", "not_applicable"], undefined>;
751
+ readonly timeline: v.ObjectSchema<{
752
+ /**
753
+ * Why this timeline is empty, or `null` when the log was read whole and the dates below are
754
+ * the history. Non-null ⇒ every field below is a zero because nothing (or not enough) was
755
+ * READ, not because nothing happened; `note` renders the same fact for a human.
756
+ */
757
+ readonly gap: v.NullableSchema<v.PicklistSchema<["unwired", "unreadable", "truncated", "not_provisioned"], undefined>, undefined>;
758
+ /** Says why the timeline is empty when `gap` is set. */
759
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
760
+ /** Epoch ms of the run's FIRST successful environment provision, when one is on record. */
761
+ readonly provisionedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
762
+ /**
763
+ * Epoch ms of the run's LAST successful environment teardown, when one is on record. This is
764
+ * the last one RECORDED, which is the end of the lifecycle only once {@link
765
+ * prReportEnvironmentsSchema.entries.teardown} is `confirmed`: a run that replaced an
766
+ * environment mid-flight reclaimed the superseded one and is still holding its replacement.
767
+ */
768
+ readonly tornDownAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
769
+ /**
770
+ * How many provisioning attempts the log records as failures for this run (0 on a clean
771
+ * bring-up). Counted at whatever grain the provider logged: a whole environment that failed to
772
+ * come up, or one step of a multi-step stack recipe. Both are attempts that did not work, and
773
+ * the log does not distinguish them, so neither does this.
774
+ */
775
+ readonly provisionFailures: v.NumberSchema<undefined>;
776
+ /**
777
+ * How many environments the run stood up whose LATEST teardown attempt failed. A non-zero
778
+ * count is the state the live-projection tri-state below cannot express: the platform tried to
779
+ * reclaim the environment and the provider refused, which is an operator's problem rather than
780
+ * a run's. Counted per environment, not per attempt, so a retry loop against one stuck
781
+ * environment does not read as a fleet of them.
782
+ */
783
+ readonly teardownFailures: v.NumberSchema<undefined>;
784
+ }, undefined>;
785
+ readonly evidence: v.ObjectSchema<{
786
+ readonly status: v.PicklistSchema<["captured", "local", "undeclared", "absent"], undefined>;
787
+ /** Says why the observations below are not evidence about this environment. */
788
+ readonly note: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
789
+ /** Where the tester stood the system under test up, when a report says. */
790
+ readonly ranAgainst: v.NullableSchema<v.PicklistSchema<["local", "ephemeral"], undefined>, undefined>;
791
+ /** Epoch ms the tester step settled: the observation's place on the timeline above. */
792
+ readonly capturedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
793
+ /** How many areas the tester reported an outcome for. */
794
+ readonly outcomes: v.NumberSchema<undefined>;
795
+ /** How many spec requirements it returned a verdict on. */
796
+ readonly requirementVerdicts: v.NumberSchema<undefined>;
797
+ /** The screenshots it captured (capped like every other list; see `truncations`). */
798
+ readonly screenshots: v.ArraySchema<v.ObjectSchema<{
799
+ /** The logical view the screenshot was taken of. */
800
+ readonly view: v.StringSchema<undefined>;
801
+ /** The stored artifact id, in the deployment's binary-artifact store. */
802
+ readonly artifactId: v.StringSchema<undefined>;
803
+ /** Whether a reference design image was paired with it for visual confirmation. */
804
+ readonly hasReference: v.BooleanSchema<undefined>;
805
+ }, undefined>, undefined>;
806
+ /**
807
+ * Deep link into the run's captured evidence in the app. Null when the deployment configured
808
+ * no public app URL, so the report never emits a link to nowhere. The rows above still name
809
+ * each artifact, which is what an operator greps the store for.
810
+ */
811
+ readonly url: v.NullableSchema<v.StringSchema<undefined>, undefined>;
812
+ }, undefined>;
813
+ /**
814
+ * The composed verdict over the three legs:
815
+ * - `complete`: up, observed, and reclaimed.
816
+ * - `incomplete`: at least one leg is missing; {@link gaps} names which.
817
+ * - `not_applicable`: no environment was ever meant to stand up (no deployer step, or every
818
+ * frame is infraless), so there is nothing to prove.
819
+ *
820
+ * COMPUTED from the legs, never asserted: this is the platform's judgement about its own
821
+ * evidence, and a reviewer must be able to re-derive it from the rows above.
822
+ */
823
+ readonly proof: v.PicklistSchema<["complete", "incomplete", "not_applicable"], undefined>;
824
+ /**
825
+ * One human-readable line per missing or contradictory leg, so an `incomplete` proof always
826
+ * says WHAT is missing rather than leaving a reader to diff the sections. Empty when
827
+ * `proof` is `complete`.
828
+ */
829
+ readonly gaps: v.ArraySchema<v.StringSchema<undefined>, undefined>;
539
830
  }, undefined>;
540
831
  readonly merge: v.ObjectSchema<{
541
832
  readonly status: v.PicklistSchema<["reported", "absent"], undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"pr-report.d.ts","sourceRoot":"","sources":["../src/pr-report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pr-report.d.ts","sourceRoot":"","sources":["../src/pr-report.ts"],"names":[],"mappings":"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"}
package/dist/pr-report.js CHANGED
@@ -2,7 +2,7 @@ import * as v from 'valibot';
2
2
  import { mergeAssessmentSchema } from './merge.js';
3
3
  import { judgeDispositionSchema, judgeFindingSchema } from './judge.js';
4
4
  import { requirementPrioritySchema, requirementStateSchema } from './spec.js';
5
- import { requirementVerdictStatusSchema } from './testing.js';
5
+ import { requirementVerdictStatusSchema, testEnvironmentSchema } from './testing.js';
6
6
  import { vcsProviderSchema } from './routes/auth.js';
7
7
  // ---------------------------------------------------------------------------
8
8
  // PR verification report — the structured evidence bundle the ENGINE maintains on a
@@ -26,7 +26,7 @@ import { vcsProviderSchema } from './routes/auth.js';
26
26
  * external consumer must notice. Backwards compatibility is a non-goal (see CLAUDE.md), so
27
27
  * a bump means "re-read the schema", not "a compatibility shim exists".
28
28
  */
29
- export const PR_VERIFICATION_REPORT_VERSION = 3;
29
+ export const PR_VERIFICATION_REPORT_VERSION = 4;
30
30
  /**
31
31
  * Whether a section has evidence to show.
32
32
  * - `reported` — the producing step ran and its evidence is below.
@@ -144,17 +144,163 @@ export const prReportEnvironmentSchema = v.object({
144
144
  error: v.optional(v.nullable(v.string())),
145
145
  });
146
146
  /**
147
- * The ephemeral-environment lifecycle: which environments came up, and whether they were
148
- * torn down again. `teardown` reads the run's live environment projection:
149
- * - `confirmed` — every environment reached a torn-down/expired state.
150
- * - `pending` — at least one is still live (the run may still be using it).
147
+ * Why the lifecycle could not be dated, as a MACHINE-READABLE cause rather than prose. The four
148
+ * are kept apart because each is a different thing to fix, and because three of them would
149
+ * otherwise be reported as the fourth: an empty timeline is what a deployment retaining no log,
150
+ * a failed read, a truncated read and a run that stood nothing up all produce, and only one of
151
+ * those is a statement about how the deployment is configured.
152
+ *
153
+ * - `unwired`: no provisioning-log repository is wired, so nothing records these dates.
154
+ * - `unreadable`: the log is wired and the read FAILED. A transport blip, not a
155
+ * configuration fact; re-attempted on the next publish.
156
+ * - `truncated`: the run has more provisioning rows than one report read may take, so
157
+ * what came back cannot be reasoned over as a complete history. Stated
158
+ * rather than folded, because a partial history yields a CONFIDENT wrong
159
+ * answer (an environment whose bring-up row fell off the end looks like
160
+ * one that was never stood up, and therefore never needs reclaiming).
161
+ * - `not_provisioned`: the run has no deployer step, so no lifecycle was ever meant to exist
162
+ * and the log was deliberately not queried.
163
+ */
164
+ export const prReportTimelineGapSchema = v.picklist([
165
+ 'unwired',
166
+ 'unreadable',
167
+ 'truncated',
168
+ 'not_provisioned',
169
+ ]);
170
+ /**
171
+ * The DATED half of the environment lifecycle, read off the run's rows in the provisioning
172
+ * event log, the only store that records WHEN a throwaway environment came up and when it
173
+ * went away. The step state can say an environment is gone; only the log can say it was torn
174
+ * down at a time, by an attempt that succeeded.
175
+ *
176
+ * `gap` is the honest-absence flag and it is NOT a formality: a deployment that retains no
177
+ * provisioning log, and one whose environments were never torn down, produce the same empty
178
+ * timeline and opposite facts. Reporting either as `tornDownAt: null` alone would let a reader
179
+ * conclude the environment is still running. It is a single field rather than a boolean beside
180
+ * a reason, so the two can never disagree.
181
+ */
182
+ export const prReportEnvironmentTimelineSchema = v.object({
183
+ /**
184
+ * Why this timeline is empty, or `null` when the log was read whole and the dates below are
185
+ * the history. Non-null ⇒ every field below is a zero because nothing (or not enough) was
186
+ * READ, not because nothing happened; `note` renders the same fact for a human.
187
+ */
188
+ gap: v.nullable(prReportTimelineGapSchema),
189
+ /** Says why the timeline is empty when `gap` is set. */
190
+ note: v.optional(v.nullable(v.string())),
191
+ /** Epoch ms of the run's FIRST successful environment provision, when one is on record. */
192
+ provisionedAt: v.nullable(v.number()),
193
+ /**
194
+ * Epoch ms of the run's LAST successful environment teardown, when one is on record. This is
195
+ * the last one RECORDED, which is the end of the lifecycle only once {@link
196
+ * prReportEnvironmentsSchema.entries.teardown} is `confirmed`: a run that replaced an
197
+ * environment mid-flight reclaimed the superseded one and is still holding its replacement.
198
+ */
199
+ tornDownAt: v.nullable(v.number()),
200
+ /**
201
+ * How many provisioning attempts the log records as failures for this run (0 on a clean
202
+ * bring-up). Counted at whatever grain the provider logged: a whole environment that failed to
203
+ * come up, or one step of a multi-step stack recipe. Both are attempts that did not work, and
204
+ * the log does not distinguish them, so neither does this.
205
+ */
206
+ provisionFailures: v.number(),
207
+ /**
208
+ * How many environments the run stood up whose LATEST teardown attempt failed. A non-zero
209
+ * count is the state the live-projection tri-state below cannot express: the platform tried to
210
+ * reclaim the environment and the provider refused, which is an operator's problem rather than
211
+ * a run's. Counted per environment, not per attempt, so a retry loop against one stuck
212
+ * environment does not read as a fleet of them.
213
+ */
214
+ teardownFailures: v.number(),
215
+ });
216
+ /** One artifact the UI tester captured while exercising the live environment. */
217
+ export const prReportEvidenceArtifactSchema = v.object({
218
+ /** The logical view the screenshot was taken of. */
219
+ view: v.string(),
220
+ /** The stored artifact id, in the deployment's binary-artifact store. */
221
+ artifactId: v.string(),
222
+ /** Whether a reference design image was paired with it for visual confirmation. */
223
+ hasReference: v.boolean(),
224
+ });
225
+ /**
226
+ * The MIDDLE leg of the lifecycle proof: what was actually observed against the environment
227
+ * while it was live. An environment that came up and was torn down again proves only that the
228
+ * platform can spin infrastructure; it becomes evidence for the CHANGE when something was
229
+ * exercised against it in between.
230
+ *
231
+ * The four statuses are kept apart because they call for different reactions:
232
+ * - `captured`: a tester ran against the ephemeral environment and its observations are below.
233
+ * - `local`: a tester ran, but against locally stood-up dependencies, so nothing was
234
+ * observed against the environment this section is about.
235
+ * - `undeclared`: a tester reported without saying where it ran, so its observations cannot be
236
+ * ATTRIBUTED to this environment. Distinct from `local`, which is a positive
237
+ * statement that it ran somewhere else; guessing either way would turn an
238
+ * unknown into a claim, in the one section whose whole job is provenance.
239
+ * - `absent`: no tester report at all (no tester step, or it never settled).
240
+ *
241
+ * The artifacts and counts are reported WHATEVER the status: they exist, and a reviewer should
242
+ * be able to reach them. What the status governs is whether they may be read as evidence about
243
+ * this environment, which is why the attribution rides the section rather than the rows.
244
+ */
245
+ export const prReportEnvironmentEvidenceSchema = v.object({
246
+ status: v.picklist(['captured', 'local', 'undeclared', 'absent']),
247
+ /** Says why the observations below are not evidence about this environment. */
248
+ note: v.optional(v.nullable(v.string())),
249
+ /** Where the tester stood the system under test up, when a report says. */
250
+ ranAgainst: v.nullable(testEnvironmentSchema),
251
+ /** Epoch ms the tester step settled: the observation's place on the timeline above. */
252
+ capturedAt: v.nullable(v.number()),
253
+ /** How many areas the tester reported an outcome for. */
254
+ outcomes: v.number(),
255
+ /** How many spec requirements it returned a verdict on. */
256
+ requirementVerdicts: v.number(),
257
+ /** The screenshots it captured (capped like every other list; see `truncations`). */
258
+ screenshots: v.array(prReportEvidenceArtifactSchema),
259
+ /**
260
+ * Deep link into the run's captured evidence in the app. Null when the deployment configured
261
+ * no public app URL, so the report never emits a link to nowhere. The rows above still name
262
+ * each artifact, which is what an operator greps the store for.
263
+ */
264
+ url: v.nullable(v.string()),
265
+ });
266
+ /**
267
+ * The ephemeral-environment lifecycle, as the three-leg proof a reviewer needs: the
268
+ * environment came UP, evidence was CAPTURED from it while it was live, and it was TORN DOWN
269
+ * again. Each leg is a captured fact from a different producer, and `proof` is COMPUTED from
270
+ * the three in code, never read off any agent's claim that it tested against a preview.
271
+ *
272
+ * `teardown` prefers the provisioning log's RECORDED attempts, per environment identity, and
273
+ * falls back to the run's live step projection only when there is no log to read:
274
+ * - `confirmed` — every environment the run stood up was reclaimed.
275
+ * - `pending` — at least one is still standing (the run may still be using it).
276
+ * - `failed` — an environment's latest teardown attempt FAILED, so it is still standing
277
+ * for a reason someone has to act on.
151
278
  * - `not_applicable` — nothing was ever provisioned.
152
279
  */
153
280
  export const prReportEnvironmentsSchema = v.object({
154
281
  status: prReportSectionStatusSchema,
155
282
  note: v.optional(v.nullable(v.string())),
156
283
  entries: v.array(prReportEnvironmentSchema),
157
- teardown: v.picklist(['confirmed', 'pending', 'not_applicable']),
284
+ teardown: v.picklist(['confirmed', 'pending', 'failed', 'not_applicable']),
285
+ timeline: prReportEnvironmentTimelineSchema,
286
+ evidence: prReportEnvironmentEvidenceSchema,
287
+ /**
288
+ * The composed verdict over the three legs:
289
+ * - `complete`: up, observed, and reclaimed.
290
+ * - `incomplete`: at least one leg is missing; {@link gaps} names which.
291
+ * - `not_applicable`: no environment was ever meant to stand up (no deployer step, or every
292
+ * frame is infraless), so there is nothing to prove.
293
+ *
294
+ * COMPUTED from the legs, never asserted: this is the platform's judgement about its own
295
+ * evidence, and a reviewer must be able to re-derive it from the rows above.
296
+ */
297
+ proof: v.picklist(['complete', 'incomplete', 'not_applicable']),
298
+ /**
299
+ * One human-readable line per missing or contradictory leg, so an `incomplete` proof always
300
+ * says WHAT is missing rather than leaving a reader to diff the sections. Empty when
301
+ * `proof` is `complete`.
302
+ */
303
+ gaps: v.array(v.string()),
158
304
  });
159
305
  /**
160
306
  * The `merger` step's scored assessment plus the engine's resolved decision. `assessment` is
@@ -1 +1 @@
1
- {"version":3,"file":"pr-report.js","sourceRoot":"","sources":["../src/pr-report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pr-report.js","sourceRoot":"","sources":["../src/pr-report.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,7 @@ export declare const getCapabilityCredentialsContract: {
43
43
  readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 128, undefined>, v.RegexAction<string, "must be a valid environment variable name (letters, digits and underscores, not starting with a digit)">, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>]>;
44
44
  readonly updatedAt: v.NumberSchema<undefined>;
45
45
  }, undefined>, undefined>;
46
- readonly environmentFallback: v.BooleanSchema<undefined>;
46
+ readonly environmentFallback: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
47
47
  readonly declarationsIncomplete: v.BooleanSchema<undefined>;
48
48
  }, undefined>;
49
49
  };
@@ -107,7 +107,7 @@ export declare const setCapabilityCredentialsContract: {
107
107
  readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 128, undefined>, v.RegexAction<string, "must be a valid environment variable name (letters, digits and underscores, not starting with a digit)">, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>]>;
108
108
  readonly updatedAt: v.NumberSchema<undefined>;
109
109
  }, undefined>, undefined>;
110
- readonly environmentFallback: v.BooleanSchema<undefined>;
110
+ readonly environmentFallback: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
111
111
  readonly declarationsIncomplete: v.BooleanSchema<undefined>;
112
112
  }, undefined>;
113
113
  };
@@ -163,7 +163,7 @@ export declare const setCapabilityCredentialContract: {
163
163
  readonly key: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction, v.MinLengthAction<string, 1, undefined>, v.MaxLengthAction<string, 128, undefined>, v.RegexAction<string, "must be a valid environment variable name (letters, digits and underscores, not starting with a digit)">, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>, v.CheckAction<string, (issue: v.CheckIssue<string>) => string>]>;
164
164
  readonly updatedAt: v.NumberSchema<undefined>;
165
165
  }, undefined>, undefined>;
166
- readonly environmentFallback: v.BooleanSchema<undefined>;
166
+ readonly environmentFallback: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
167
167
  readonly declarationsIncomplete: v.BooleanSchema<undefined>;
168
168
  }, undefined>;
169
169
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/contracts",
3
- "version": "0.217.0",
3
+ "version": "0.218.0",
4
4
  "description": "Valibot wire contract shared between the Agent Architecture Board frontend and backend.",
5
5
  "repository": {
6
6
  "type": "git",