@cat-factory/contracts 0.342.0 → 0.344.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 (117) hide show
  1. package/dist/agent-presentation.d.ts +2 -2
  2. package/dist/bugFishing.d.ts +379 -0
  3. package/dist/bugFishing.d.ts.map +1 -0
  4. package/dist/bugFishing.js +412 -0
  5. package/dist/bugFishing.js.map +1 -0
  6. package/dist/deploy-fix.d.ts +53 -3
  7. package/dist/deploy-fix.d.ts.map +1 -1
  8. package/dist/deploy-fix.js +39 -2
  9. package/dist/deploy-fix.js.map +1 -1
  10. package/dist/entities.d.ts +18 -1
  11. package/dist/entities.d.ts.map +1 -1
  12. package/dist/entities.js +15 -0
  13. package/dist/entities.js.map +1 -1
  14. package/dist/environment-investigation.d.ts +55 -5
  15. package/dist/environment-investigation.d.ts.map +1 -1
  16. package/dist/environment-investigation.js +19 -2
  17. package/dist/environment-investigation.js.map +1 -1
  18. package/dist/errors.d.ts +1 -1
  19. package/dist/errors.d.ts.map +1 -1
  20. package/dist/errors.js +18 -0
  21. package/dist/errors.js.map +1 -1
  22. package/dist/execution.d.ts +107 -0
  23. package/dist/execution.d.ts.map +1 -1
  24. package/dist/execution.js +12 -0
  25. package/dist/execution.js.map +1 -1
  26. package/dist/index.d.ts +1 -0
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/initiative.d.ts +15 -5
  31. package/dist/initiative.d.ts.map +1 -1
  32. package/dist/notification-routing.d.ts +3 -3
  33. package/dist/notification-webhooks.d.ts +7 -5
  34. package/dist/notification-webhooks.d.ts.map +1 -1
  35. package/dist/notifications.d.ts +25 -3
  36. package/dist/notifications.d.ts.map +1 -1
  37. package/dist/notifications.js +17 -0
  38. package/dist/notifications.js.map +1 -1
  39. package/dist/pipeline-purpose.d.ts +4 -0
  40. package/dist/pipeline-purpose.d.ts.map +1 -1
  41. package/dist/pipeline-purpose.js +6 -0
  42. package/dist/pipeline-purpose.js.map +1 -1
  43. package/dist/pr-report.d.ts +414 -6
  44. package/dist/pr-report.d.ts.map +1 -1
  45. package/dist/pr-report.js +143 -2
  46. package/dist/pr-report.js.map +1 -1
  47. package/dist/primitives.d.ts +71 -7
  48. package/dist/primitives.d.ts.map +1 -1
  49. package/dist/primitives.js +24 -1
  50. package/dist/primitives.js.map +1 -1
  51. package/dist/public-api.d.ts +6 -4
  52. package/dist/public-api.d.ts.map +1 -1
  53. package/dist/public-task-types.d.ts.map +1 -1
  54. package/dist/public-task-types.js +20 -0
  55. package/dist/public-task-types.js.map +1 -1
  56. package/dist/recurring.d.ts +12 -8
  57. package/dist/recurring.d.ts.map +1 -1
  58. package/dist/recurring.js +10 -5
  59. package/dist/recurring.js.map +1 -1
  60. package/dist/requests.d.ts +47 -7
  61. package/dist/requests.d.ts.map +1 -1
  62. package/dist/result-views.d.ts +1 -1
  63. package/dist/result-views.d.ts.map +1 -1
  64. package/dist/result-views.js +1 -0
  65. package/dist/result-views.js.map +1 -1
  66. package/dist/routes/agent-runs.d.ts +86 -0
  67. package/dist/routes/agent-runs.d.ts.map +1 -1
  68. package/dist/routes/board.d.ts +99 -20
  69. package/dist/routes/board.d.ts.map +1 -1
  70. package/dist/routes/bug-hunt.d.ts +94 -2
  71. package/dist/routes/bug-hunt.d.ts.map +1 -1
  72. package/dist/routes/bugFishing.d.ts +307 -0
  73. package/dist/routes/bugFishing.d.ts.map +1 -0
  74. package/dist/routes/bugFishing.js +51 -0
  75. package/dist/routes/bugFishing.js.map +1 -0
  76. package/dist/routes/execution.d.ts +438 -2
  77. package/dist/routes/execution.d.ts.map +1 -1
  78. package/dist/routes/human-review.d.ts +43 -0
  79. package/dist/routes/human-review.d.ts.map +1 -1
  80. package/dist/routes/human-test.d.ts +215 -0
  81. package/dist/routes/human-test.d.ts.map +1 -1
  82. package/dist/routes/index.d.ts +1 -0
  83. package/dist/routes/index.d.ts.map +1 -1
  84. package/dist/routes/index.js +1 -0
  85. package/dist/routes/index.js.map +1 -1
  86. package/dist/routes/initiative.d.ts +52 -17
  87. package/dist/routes/initiative.d.ts.map +1 -1
  88. package/dist/routes/notification-webhooks.d.ts +14 -14
  89. package/dist/routes/notifications.d.ts +12 -6
  90. package/dist/routes/notifications.d.ts.map +1 -1
  91. package/dist/routes/public-api.d.ts +17 -11
  92. package/dist/routes/public-api.d.ts.map +1 -1
  93. package/dist/routes/public-board.d.ts +2 -2
  94. package/dist/routes/public-evidence.d.ts +24 -1
  95. package/dist/routes/public-evidence.d.ts.map +1 -1
  96. package/dist/routes/recurring.d.ts +5 -5
  97. package/dist/routes/slack.d.ts +3 -3
  98. package/dist/routes/tasks.d.ts +12 -3
  99. package/dist/routes/tasks.d.ts.map +1 -1
  100. package/dist/routes/visual-confirm.d.ts +129 -0
  101. package/dist/routes/visual-confirm.d.ts.map +1 -1
  102. package/dist/routes/workspace-settings.d.ts +6 -3
  103. package/dist/routes/workspace-settings.d.ts.map +1 -1
  104. package/dist/routes/workspaces.d.ts +122 -14
  105. package/dist/routes/workspaces.d.ts.map +1 -1
  106. package/dist/slack.d.ts +2 -2
  107. package/dist/snapshot.d.ts +61 -7
  108. package/dist/snapshot.d.ts.map +1 -1
  109. package/dist/testing.d.ts +11 -0
  110. package/dist/testing.d.ts.map +1 -1
  111. package/dist/testing.js +11 -0
  112. package/dist/testing.js.map +1 -1
  113. package/dist/workspace-settings.d.ts +26 -3
  114. package/dist/workspace-settings.d.ts.map +1 -1
  115. package/dist/workspace-settings.js +23 -0
  116. package/dist/workspace-settings.js.map +1 -1
  117. package/package.json +1 -1
@@ -47,6 +47,10 @@ import { onCallAssessmentSchema, releaseSignalSchema } from './release.js';
47
47
  // human to SELECT which of the sliced, prioritized findings to act on.
48
48
  // Informational + a deep-link to the parked task (where the PR-review
49
49
  // window lists the findings grouped by slice); `act` just marks it read.
50
+ // - `bug_fishing_triage` — a bug-fishing expedition finished every angle and parked for a
51
+ // human to finish triaging what it caught. Informational + a deep-link
52
+ // to the parked task (where the expedition window lists the findings by
53
+ // phase and marks the ones to fix); `act` just marks it read.
50
54
  // - `initiative` — the initiative execution loop needs a human: a spawned task was
51
55
  // blocked (its phase is halted until it is retried/skipped), or the
52
56
  // initiative finished (every planned task resolved). Informational +
@@ -116,6 +120,7 @@ export const notificationTypeSchema = v.picklist([
116
120
  'fork_decision_pending',
117
121
  'judge_review',
118
122
  'pr_review_ready',
123
+ 'bug_fishing_triage',
119
124
  'initiative',
120
125
  'platform_health',
121
126
  'infra_unreachable',
@@ -153,6 +158,7 @@ export const REVIEW_WAIT_NOTIFICATION_TYPES = [
153
158
  'fork_decision_pending',
154
159
  'judge_review',
155
160
  'pr_review_ready',
161
+ 'bug_fishing_triage',
156
162
  ];
157
163
  const REVIEW_WAIT_NOTIFICATION_TYPE_SET = new Set(REVIEW_WAIT_NOTIFICATION_TYPES);
158
164
  /** Whether a notification type counts as a task waiting on human review (see above). */
@@ -242,6 +248,17 @@ export const notificationPayloadSchema = v.object({
242
248
  forkCount: v.optional(v.number()),
243
249
  /** Number of cohesive slices the PR was grouped into, on a `pr_review_ready`. */
244
250
  sliceCount: v.optional(v.number()),
251
+ /** Number of angles the expedition fished, on a `bug_fishing_triage`. */
252
+ phaseCount: v.optional(v.number()),
253
+ /**
254
+ * How many of the expedition's findings still have no decision, on a `bug_fishing_triage` —
255
+ * neither marked for a fix nor dismissed.
256
+ *
257
+ * Deliberately not the total: a human who already triaged half the catch while the later
258
+ * angles were still fishing is being told what is left, and a total would keep asking them to
259
+ * look at decisions they have made.
260
+ */
261
+ untriagedFindingCount: v.optional(v.number()),
245
262
  /** The `on-call` agent's assessment, on a `release_regression`. */
246
263
  onCallAssessment: v.optional(onCallAssessmentSchema),
247
264
  /** The monitors/SLOs that regressed, on a `release_regression`. */
@@ -1 +1 @@
1
- {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../src/notifications.ts"],"names":[],"mappings":"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"}
@@ -115,6 +115,10 @@ export declare function pipelineMatchesPurpose(pipeline: Pick<Pipeline, 'purpose
115
115
  * - `review` → only `review` pipelines (it reviews an existing PR and opens none).
116
116
  * - `media` → only `media` pipelines (its deliverable is generated binaries stored through an
117
117
  * asset store; a code, document or review preset would produce none of them).
118
+ * - `bug-fishing` → only `research` pipelines. An expedition changes nothing and opens no pull
119
+ * request, so every code-shipping preset would run an implementer against a task carrying no
120
+ * work to do. Narrowed to the purpose rather than to the one preset for the reason the others
121
+ * are: a deployment's own read-only investigation preset should be offerable here too.
118
122
  * - `bug` → everything EXCEPT `document` / `review` / `planning` ({@link BUG_PURPOSES}). It ships
119
123
  * code, so offering it a document-authoring or PR-review preset was noise in the one picker
120
124
  * people use most.
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-purpose.d.ts","sourceRoot":"","sources":["../src/pipeline-purpose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAmB,MAAM,yBAAyB,CAAA;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE3D;;;;;;;;;;GAUG;AACH,cAAc,kCAAkC,CAAA;AA4FhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,QAAQ,EAAE,aAAa,GACtB,OAAO,CAIT;AAsCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,QAAQ,EAAE,aAAa,GACtB,OAAO,CAIT;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,iFAAiF;IACjF,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAOT;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GAC9C,OAAO,CAMT;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAC7B,OAAO,CAUT;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,UAAU,EAAE,UAAU,GAAG,SAAS,GACjC,OAAO,CAIT"}
1
+ {"version":3,"file":"pipeline-purpose.d.ts","sourceRoot":"","sources":["../src/pipeline-purpose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAmB,MAAM,yBAAyB,CAAA;AAC7E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE3D;;;;;;;;;;GAUG;AACH,cAAc,kCAAkC,CAAA;AA4FhD;;;;;;;;;;;;GAYG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,QAAQ,EAAE,aAAa,GACtB,OAAO,CAIT;AAsCD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,QAAQ,EAAE,aAAa,GACtB,OAAO,CAIT;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,iFAAiF;IACjF,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;CACtC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAC5B,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAOT;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GAC9C,OAAO,CAMT;AA4BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAC7B,OAAO,CAWT;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,EACnC,UAAU,EAAE,UAAU,GAAG,SAAS,GACjC,OAAO,CAIT"}
@@ -272,6 +272,10 @@ const FEATURE_PURPOSES = BUG_PURPOSES.filter((p) => p !== 'bugfix');
272
272
  * - `review` → only `review` pipelines (it reviews an existing PR and opens none).
273
273
  * - `media` → only `media` pipelines (its deliverable is generated binaries stored through an
274
274
  * asset store; a code, document or review preset would produce none of them).
275
+ * - `bug-fishing` → only `research` pipelines. An expedition changes nothing and opens no pull
276
+ * request, so every code-shipping preset would run an implementer against a task carrying no
277
+ * work to do. Narrowed to the purpose rather than to the one preset for the reason the others
278
+ * are: a deployment's own read-only investigation preset should be offerable here too.
275
279
  * - `bug` → everything EXCEPT `document` / `review` / `planning` ({@link BUG_PURPOSES}). It ships
276
280
  * code, so offering it a document-authoring or PR-review preset was noise in the one picker
277
281
  * people use most.
@@ -302,6 +306,8 @@ export function pipelineAllowedForTaskType(pipeline, taskType) {
302
306
  return pipeline.purpose === 'review';
303
307
  if (taskType === 'media')
304
308
  return pipeline.purpose === 'media';
309
+ if (taskType === 'bug-fishing')
310
+ return pipeline.purpose === 'research';
305
311
  if (taskType === 'feature' || taskType === 'bug') {
306
312
  const own = classifierFor(pipeline.purpose);
307
313
  const offered = taskType === 'bug' ? BUG_PURPOSES : FEATURE_PURPOSES;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-purpose.js","sourceRoot":"","sources":["../src/pipeline-purpose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE7E,OAAO,EAAE,iBAAiB,EAAwB,MAAM,kCAAkC,CAAA;AAG1F;;;;;;;;;;GAUG;AACH,cAAc,kCAAkC,CAAA;AAEhD,8EAA8E;AAC9E,6EAA6E;AAC7E,EAAE;AACF,+EAA+E;AAC/E,qFAAqF;AACrF,uEAAuE;AACvE,oFAAoF;AACpF,qFAAqF;AACrF,uFAAuF;AACvF,8CAA8C;AAC9C,oFAAoF;AACpF,6DAA6D;AAC7D,mFAAmF;AACnF,8DAA8D;AAC9D,EAAE;AACF,wFAAwF;AACxF,mFAAmF;AACnF,qFAAqF;AACrF,sFAAsF;AACtF,mFAAmF;AACnF,qFAAqF;AACrF,iFAAiF;AACjF,oFAAoF;AACpF,EAAE;AACF,gGAAgG;AAChG,mGAAmG;AACnG,gFAAgF;AAChF,EAAE;AACF,8FAA8F;AAC9F,kGAAkG;AAClG,mGAAmG;AACnG,uDAAuD;AACvD,EAAE;AACF,sFAAsF;AACtF,gGAAgG;AAChG,8EAA8E;AAE9E,qGAAqG;AACrG,MAAM,2BAA2B,GAA6B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAE/E;;;;GAIG;AACH,MAAM,sBAAsB,GAA+B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,aAAa,CAAC,OAA+C;IACpE,OAAO,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/D,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,eAAe,CAAC,GAAoB,EAAE,UAA2B;IACxE,OAAO,GAAG,KAAK,UAAU,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,GAAG,KAAK,OAAO,CAAC,CAAA;AAC3E,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAA4B,EAC5B,QAAuB;IAEvB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,UAAU,KAAK,IAAI,IAAI,sBAAsB,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IACnF,OAAO,CAAC,2BAA2B,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AACxD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,4BAA4B,GAG9B;IACF,iDAAiD;IACjD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACvF,2FAA2F;IAC3F,oCAAoC;IACpC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACxF,oFAAoF;IACpF,oCAAoC;IACpC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC5F,0FAA0F;IAC1F,uFAAuF;IACvF,mDAAmD;IACnD,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3F,yFAAyF;IACzF,uCAAuC;IACvC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC5F,uFAAuF;IACvF,wFAAwF;IACxF,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;IAC9F,4FAA4F;IAC5F,4FAA4F;IAC5F,2FAA2F;IAC3F,mCAAmC;IACnC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;CAC5F,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAA4B,EAC5B,QAAuB;IAEvB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAA;IAClE,OAAO,4BAA4B,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAA;AAC3D,CAAC;AAaD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAA4B,EAC5B,IAA2B;IAE3B,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACpC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,4BAA4B,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAA;IACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IACzE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAA;AAC7D,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAmC,EACnC,OAA+C;IAE/C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACzC,IAAI,UAAU,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IACpC,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC3C,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC7B,OAAO,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,YAAY,GAA+B,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;AAEhF;;;;;;;;;GASG;AACH,MAAM,gBAAgB,GAA+B,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAA;AAE/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAmC,EACnC,QAA8B;IAE9B,IAAI,QAAQ,KAAK,UAAU;QAAE,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,CAAA;IACnE,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,CAAA;IAC/D,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC,OAAO,KAAK,OAAO,CAAA;IAC7D,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACjD,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,OAAO,GAAG,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAA;QACpE,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC9C,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAAmC,EACnC,UAAkC;IAElC,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,IAAI,CAAA;IACzC,IAAI,UAAU,KAAK,YAAY;QAAE,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,CAAA;IACvE,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,CAAA;AACxC,CAAC"}
1
+ {"version":3,"file":"pipeline-purpose.js","sourceRoot":"","sources":["../src/pipeline-purpose.ts"],"names":[],"mappings":"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"}
@@ -362,14 +362,276 @@ export declare const prReportReproductionSchema: v.ObjectSchema<{
362
362
  readonly at: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
363
363
  }, undefined>;
364
364
  export type PrReportReproduction = v.InferOutput<typeof prReportReproductionSchema>;
365
+ /**
366
+ * The `deploy-fixer` rounds one frame's failed provision was offered to: the loop that repairs a
367
+ * cause a checkout edit can address (`manifest_invalid`) and re-provisions.
368
+ *
369
+ * `completed` and `failed` are counted apart from `attempts` because they are the difference
370
+ * between two machine edits and two container jobs that died having changed nothing, and a bare
371
+ * round count reads as the first. `attempts - (completed + failed + droppedRounds)` is a round
372
+ * still in flight, which is reachable: the pull request is open by the time the deployer runs, so
373
+ * a report can be published mid-loop.
374
+ *
375
+ * `attempts` counts every round the run dispatched while `maxAttempts` is the budget ONE
376
+ * provisioning cycle runs under, so the two are a ratio only where `cycles` is 1. A loop-back to
377
+ * the deployer re-arms the budget, and reporting four rounds "of 2" would read as a bound nobody
378
+ * enforces.
379
+ *
380
+ * There is deliberately no "did the repair work" field, for the reason the loop's own state has
381
+ * none: whether the environment came up is the deployer's next verdict, and this section already
382
+ * states it on {@link prReportEnvironmentSchema}'s `status`.
383
+ */
384
+ export declare const prReportDeployFixSchema: v.ObjectSchema<{
385
+ /** Rounds DISPATCHED, across every provisioning cycle of the run. */
386
+ readonly attempts: v.NumberSchema<undefined>;
387
+ /** The PER-CYCLE budget, frozen at the first escalation. Null when the loop recorded none. */
388
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
389
+ /**
390
+ * How many provisioning cycles those rounds are spread over: 1 on any run whose deployer was
391
+ * never looped back to, which is what makes `attempts` readable against `maxAttempts`.
392
+ */
393
+ readonly cycles: v.NumberSchema<undefined>;
394
+ /** The classified provisioning cause that admitted the loop. */
395
+ readonly reason: v.StringSchema<undefined>;
396
+ /** How many dispatched rounds the fixer's own job finished. */
397
+ readonly completed: v.NumberSchema<undefined>;
398
+ /** How many died without finishing, so that round changed nothing in the checkout. */
399
+ readonly failed: v.NumberSchema<undefined>;
400
+ /**
401
+ * How many rounds ran whose outcome the step's own log cap has since dropped. Counted in
402
+ * `attempts` and in neither `completed` nor `failed`, and stated rather than folded into one of
403
+ * them: a dropped round is one nobody can now say finished or died.
404
+ */
405
+ readonly droppedRounds: v.NumberSchema<undefined>;
406
+ }, undefined>;
407
+ export type PrReportDeployFix = v.InferOutput<typeof prReportDeployFixSchema>;
408
+ /**
409
+ * The ENVIRONMENT INVESTIGATION rounds one frame's failed provision was offered to: the other
410
+ * half of the same decision, run for every cause the fixer declined, and whose evidence is the
411
+ * provider rather than the repository.
412
+ *
413
+ * What travels is the DECISIONS. The investigator's `summary` is a paragraph and its `evidence` a
414
+ * cited list, and both belong to the run's own record rather than to a pull-request body; what a
415
+ * reviewer acts on is which layer was blamed, what the platform was asked to do, and what it did.
416
+ *
417
+ * Three fields carry that, and each is empty for a DIFFERENT reason, so none may stand in for
418
+ * another:
419
+ *
420
+ * - `faultLayer` null means no round produced a verdict at all, and `failure` says why. It is
421
+ * NOT the `unknown` layer, which is a verdict the investigator reached on evidence that did
422
+ * not settle the question: "nobody looked" and "we looked and could not tell" send different
423
+ * people to different places.
424
+ * - `ranActions` empty means nothing was run, every round having recommended stopping or been
425
+ * refused. A list rather than the last round's single action, because a run whose first round
426
+ * restarted the workload and whose second concluded `stop` DID act, and reading the last round
427
+ * alone would report it as a diagnosis nobody acted on.
428
+ * - `withheld` is set when the last verdict asked for something the engine did not do: the
429
+ * budget was spent, the deployment forbids acting, or the provider cannot perform it. Without
430
+ * it a refused remedy and one that ran and did not help are the same row.
431
+ *
432
+ * `faultLayer`, `action` and `withheld` are read off ONE round, the newest that produced a
433
+ * verdict, and never assembled from whichever round happened to fill each field: a refusal
434
+ * belongs to the decision it refused, so pairing an older round's `withheld` with a newer
435
+ * round's verdict reports a remedy as blocked that in fact ran.
436
+ */
437
+ export declare const prReportEnvironmentInvestigationSchema: v.ObjectSchema<{
438
+ /** Rounds run, across every provisioning cycle of the run. */
439
+ readonly attempts: v.NumberSchema<undefined>;
440
+ /** The PER-CYCLE budget, frozen at the first round. */
441
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
442
+ /**
443
+ * How many provisioning cycles those rounds are spread over; see the same field on
444
+ * {@link prReportDeployFixSchema}. `attempts` is a ratio against `maxAttempts` only at 1.
445
+ */
446
+ readonly cycles: v.NumberSchema<undefined>;
447
+ /** How many rounds the step's log cap dropped; see {@link prReportDeployFixSchema}. */
448
+ readonly droppedRounds: v.NumberSchema<undefined>;
449
+ /** The layer the LAST verdict blamed; null when no round produced one. */
450
+ readonly faultLayer: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["provider", "platform", "deployment", "unknown"], undefined>, undefined>, undefined>;
451
+ /**
452
+ * The remediation the LAST verdict asked for; null when there is no verdict.
453
+ *
454
+ * A plain string rather than the action union, for the reason the stored attempt log types its
455
+ * own copy that way: the vocabulary is closed and PERSISTED, so a member retired later is still
456
+ * sitting on a saved step, and a picklist here would fail this report's own response validation
457
+ * on the public read instead of naming what a human must re-pick.
458
+ */
459
+ readonly action: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
460
+ /** Every action the engine actually RAN, in round order. Empty ⇒ nothing was. */
461
+ readonly ranActions: v.ArraySchema<v.StringSchema<undefined>, undefined>;
462
+ /** Why the last verdict's action was not run, when it was not. */
463
+ readonly withheld: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
464
+ /** The investigation's own failure, when the last round produced no verdict. */
465
+ readonly failure: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
466
+ /**
467
+ * How many readiness-ceiling extensions a `wait` verdict won. Non-zero is what accounts for a
468
+ * lifecycle whose bring-up ran past this deployment's configured ceiling; without it the dates
469
+ * in the timeline below cannot be reconciled with the ceiling, which is the one way an
470
+ * invisible remediation reads worse than none.
471
+ */
472
+ readonly waitExtensions: v.NumberSchema<undefined>;
473
+ }, undefined>;
474
+ export type PrReportEnvironmentInvestigation = v.InferOutput<typeof prReportEnvironmentInvestigationSchema>;
475
+ /**
476
+ * What the platform TRIED about a frame's failed provision, as the decisions rather than the
477
+ * prose.
478
+ *
479
+ * Both loops live on the `deployer` step and neither reached this report before, so a run whose
480
+ * environment failed, was diagnosed, was restarted in place and then came up reported exactly
481
+ * what a run with no remediation loop at all reports. Present ⇒ at least one loop ran for this
482
+ * frame; absent ⇒ neither did, which is every clean provision and every failure whose cause
483
+ * admitted neither.
484
+ *
485
+ * It rides the per-frame ENTRY rather than the section because both loops are about one frame's
486
+ * provision and name that frame in their own state. Folded over every deployer step of the run
487
+ * and ACCUMULATED per frame, unlike the entry's `status`, which is the last deploy's outcome: a
488
+ * frame repaired by one deployer step and re-deployed cleanly by a later one was still
489
+ * machine-edited, and a last-wins fold would drop exactly the record this exists to keep.
490
+ */
491
+ export declare const prReportEnvironmentRemediationSchema: v.ObjectSchema<{
492
+ readonly deployFix: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
493
+ /** Rounds DISPATCHED, across every provisioning cycle of the run. */
494
+ readonly attempts: v.NumberSchema<undefined>;
495
+ /** The PER-CYCLE budget, frozen at the first escalation. Null when the loop recorded none. */
496
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
497
+ /**
498
+ * How many provisioning cycles those rounds are spread over: 1 on any run whose deployer was
499
+ * never looped back to, which is what makes `attempts` readable against `maxAttempts`.
500
+ */
501
+ readonly cycles: v.NumberSchema<undefined>;
502
+ /** The classified provisioning cause that admitted the loop. */
503
+ readonly reason: v.StringSchema<undefined>;
504
+ /** How many dispatched rounds the fixer's own job finished. */
505
+ readonly completed: v.NumberSchema<undefined>;
506
+ /** How many died without finishing, so that round changed nothing in the checkout. */
507
+ readonly failed: v.NumberSchema<undefined>;
508
+ /**
509
+ * How many rounds ran whose outcome the step's own log cap has since dropped. Counted in
510
+ * `attempts` and in neither `completed` nor `failed`, and stated rather than folded into one of
511
+ * them: a dropped round is one nobody can now say finished or died.
512
+ */
513
+ readonly droppedRounds: v.NumberSchema<undefined>;
514
+ }, undefined>, undefined>, undefined>;
515
+ readonly investigation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
516
+ /** Rounds run, across every provisioning cycle of the run. */
517
+ readonly attempts: v.NumberSchema<undefined>;
518
+ /** The PER-CYCLE budget, frozen at the first round. */
519
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
520
+ /**
521
+ * How many provisioning cycles those rounds are spread over; see the same field on
522
+ * {@link prReportDeployFixSchema}. `attempts` is a ratio against `maxAttempts` only at 1.
523
+ */
524
+ readonly cycles: v.NumberSchema<undefined>;
525
+ /** How many rounds the step's log cap dropped; see {@link prReportDeployFixSchema}. */
526
+ readonly droppedRounds: v.NumberSchema<undefined>;
527
+ /** The layer the LAST verdict blamed; null when no round produced one. */
528
+ readonly faultLayer: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["provider", "platform", "deployment", "unknown"], undefined>, undefined>, undefined>;
529
+ /**
530
+ * The remediation the LAST verdict asked for; null when there is no verdict.
531
+ *
532
+ * A plain string rather than the action union, for the reason the stored attempt log types its
533
+ * own copy that way: the vocabulary is closed and PERSISTED, so a member retired later is still
534
+ * sitting on a saved step, and a picklist here would fail this report's own response validation
535
+ * on the public read instead of naming what a human must re-pick.
536
+ */
537
+ readonly action: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
538
+ /** Every action the engine actually RAN, in round order. Empty ⇒ nothing was. */
539
+ readonly ranActions: v.ArraySchema<v.StringSchema<undefined>, undefined>;
540
+ /** Why the last verdict's action was not run, when it was not. */
541
+ readonly withheld: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
542
+ /** The investigation's own failure, when the last round produced no verdict. */
543
+ readonly failure: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
544
+ /**
545
+ * How many readiness-ceiling extensions a `wait` verdict won. Non-zero is what accounts for a
546
+ * lifecycle whose bring-up ran past this deployment's configured ceiling; without it the dates
547
+ * in the timeline below cannot be reconciled with the ceiling, which is the one way an
548
+ * invisible remediation reads worse than none.
549
+ */
550
+ readonly waitExtensions: v.NumberSchema<undefined>;
551
+ }, undefined>, undefined>, undefined>;
552
+ }, undefined>;
553
+ export type PrReportEnvironmentRemediation = v.InferOutput<typeof prReportEnvironmentRemediationSchema>;
365
554
  /** One ephemeral environment the `deployer` step stood up (per service frame). */
366
555
  export declare const prReportEnvironmentSchema: v.ObjectSchema<{
367
556
  /** The service frame the environment was provisioned for. */
368
557
  readonly frameId: v.StringSchema<undefined>;
369
- /** `ready` (live), `failed` (the provision broke) or `skipped` (an infraless frame). */
370
- readonly status: v.PicklistSchema<["ready", "failed", "skipped"], undefined>;
558
+ /**
559
+ * `ready` (live), `failed` (the provision broke), `skipped` (an infraless frame), or
560
+ * `unsettled`.
561
+ *
562
+ * `unsettled` is the frame the run holds no terminal outcome for, and it exists because both
563
+ * remediation loops CLEAR the recorded outcome to make the re-provision happen: a report
564
+ * composed in that window (the run was abandoned, timed out, or failed elsewhere) would
565
+ * otherwise drop the frame entirely and read as a deployer that recorded nothing, on a run
566
+ * where the platform demonstrably acted. It is never a verdict about the environment, which is
567
+ * why it is not a member of the step's own `deployEnvStateSchema`: nothing settled.
568
+ */
569
+ readonly status: v.PicklistSchema<["ready", "failed", "skipped", "unsettled"], undefined>;
371
570
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
372
571
  readonly error: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
572
+ /** What the platform tried about a failure. See {@link prReportEnvironmentRemediationSchema}. */
573
+ readonly remediation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
574
+ readonly deployFix: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
575
+ /** Rounds DISPATCHED, across every provisioning cycle of the run. */
576
+ readonly attempts: v.NumberSchema<undefined>;
577
+ /** The PER-CYCLE budget, frozen at the first escalation. Null when the loop recorded none. */
578
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
579
+ /**
580
+ * How many provisioning cycles those rounds are spread over: 1 on any run whose deployer was
581
+ * never looped back to, which is what makes `attempts` readable against `maxAttempts`.
582
+ */
583
+ readonly cycles: v.NumberSchema<undefined>;
584
+ /** The classified provisioning cause that admitted the loop. */
585
+ readonly reason: v.StringSchema<undefined>;
586
+ /** How many dispatched rounds the fixer's own job finished. */
587
+ readonly completed: v.NumberSchema<undefined>;
588
+ /** How many died without finishing, so that round changed nothing in the checkout. */
589
+ readonly failed: v.NumberSchema<undefined>;
590
+ /**
591
+ * How many rounds ran whose outcome the step's own log cap has since dropped. Counted in
592
+ * `attempts` and in neither `completed` nor `failed`, and stated rather than folded into one of
593
+ * them: a dropped round is one nobody can now say finished or died.
594
+ */
595
+ readonly droppedRounds: v.NumberSchema<undefined>;
596
+ }, undefined>, undefined>, undefined>;
597
+ readonly investigation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
598
+ /** Rounds run, across every provisioning cycle of the run. */
599
+ readonly attempts: v.NumberSchema<undefined>;
600
+ /** The PER-CYCLE budget, frozen at the first round. */
601
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
602
+ /**
603
+ * How many provisioning cycles those rounds are spread over; see the same field on
604
+ * {@link prReportDeployFixSchema}. `attempts` is a ratio against `maxAttempts` only at 1.
605
+ */
606
+ readonly cycles: v.NumberSchema<undefined>;
607
+ /** How many rounds the step's log cap dropped; see {@link prReportDeployFixSchema}. */
608
+ readonly droppedRounds: v.NumberSchema<undefined>;
609
+ /** The layer the LAST verdict blamed; null when no round produced one. */
610
+ readonly faultLayer: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["provider", "platform", "deployment", "unknown"], undefined>, undefined>, undefined>;
611
+ /**
612
+ * The remediation the LAST verdict asked for; null when there is no verdict.
613
+ *
614
+ * A plain string rather than the action union, for the reason the stored attempt log types its
615
+ * own copy that way: the vocabulary is closed and PERSISTED, so a member retired later is still
616
+ * sitting on a saved step, and a picklist here would fail this report's own response validation
617
+ * on the public read instead of naming what a human must re-pick.
618
+ */
619
+ readonly action: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
620
+ /** Every action the engine actually RAN, in round order. Empty ⇒ nothing was. */
621
+ readonly ranActions: v.ArraySchema<v.StringSchema<undefined>, undefined>;
622
+ /** Why the last verdict's action was not run, when it was not. */
623
+ readonly withheld: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
624
+ /** The investigation's own failure, when the last round produced no verdict. */
625
+ readonly failure: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
626
+ /**
627
+ * How many readiness-ceiling extensions a `wait` verdict won. Non-zero is what accounts for a
628
+ * lifecycle whose bring-up ran past this deployment's configured ceiling; without it the dates
629
+ * in the timeline below cannot be reconciled with the ceiling, which is the one way an
630
+ * invisible remediation reads worse than none.
631
+ */
632
+ readonly waitExtensions: v.NumberSchema<undefined>;
633
+ }, undefined>, undefined>, undefined>;
634
+ }, undefined>, undefined>, undefined>;
373
635
  }, undefined>;
374
636
  export type PrReportEnvironment = v.InferOutput<typeof prReportEnvironmentSchema>;
375
637
  /**
@@ -571,10 +833,83 @@ export declare const prReportEnvironmentsSchema: v.ObjectSchema<{
571
833
  readonly entries: v.ArraySchema<v.ObjectSchema<{
572
834
  /** The service frame the environment was provisioned for. */
573
835
  readonly frameId: v.StringSchema<undefined>;
574
- /** `ready` (live), `failed` (the provision broke) or `skipped` (an infraless frame). */
575
- readonly status: v.PicklistSchema<["ready", "failed", "skipped"], undefined>;
836
+ /**
837
+ * `ready` (live), `failed` (the provision broke), `skipped` (an infraless frame), or
838
+ * `unsettled`.
839
+ *
840
+ * `unsettled` is the frame the run holds no terminal outcome for, and it exists because both
841
+ * remediation loops CLEAR the recorded outcome to make the re-provision happen: a report
842
+ * composed in that window (the run was abandoned, timed out, or failed elsewhere) would
843
+ * otherwise drop the frame entirely and read as a deployer that recorded nothing, on a run
844
+ * where the platform demonstrably acted. It is never a verdict about the environment, which is
845
+ * why it is not a member of the step's own `deployEnvStateSchema`: nothing settled.
846
+ */
847
+ readonly status: v.PicklistSchema<["ready", "failed", "skipped", "unsettled"], undefined>;
576
848
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
577
849
  readonly error: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
850
+ /** What the platform tried about a failure. See {@link prReportEnvironmentRemediationSchema}. */
851
+ readonly remediation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
852
+ readonly deployFix: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
853
+ /** Rounds DISPATCHED, across every provisioning cycle of the run. */
854
+ readonly attempts: v.NumberSchema<undefined>;
855
+ /** The PER-CYCLE budget, frozen at the first escalation. Null when the loop recorded none. */
856
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
857
+ /**
858
+ * How many provisioning cycles those rounds are spread over: 1 on any run whose deployer was
859
+ * never looped back to, which is what makes `attempts` readable against `maxAttempts`.
860
+ */
861
+ readonly cycles: v.NumberSchema<undefined>;
862
+ /** The classified provisioning cause that admitted the loop. */
863
+ readonly reason: v.StringSchema<undefined>;
864
+ /** How many dispatched rounds the fixer's own job finished. */
865
+ readonly completed: v.NumberSchema<undefined>;
866
+ /** How many died without finishing, so that round changed nothing in the checkout. */
867
+ readonly failed: v.NumberSchema<undefined>;
868
+ /**
869
+ * How many rounds ran whose outcome the step's own log cap has since dropped. Counted in
870
+ * `attempts` and in neither `completed` nor `failed`, and stated rather than folded into one of
871
+ * them: a dropped round is one nobody can now say finished or died.
872
+ */
873
+ readonly droppedRounds: v.NumberSchema<undefined>;
874
+ }, undefined>, undefined>, undefined>;
875
+ readonly investigation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
876
+ /** Rounds run, across every provisioning cycle of the run. */
877
+ readonly attempts: v.NumberSchema<undefined>;
878
+ /** The PER-CYCLE budget, frozen at the first round. */
879
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
880
+ /**
881
+ * How many provisioning cycles those rounds are spread over; see the same field on
882
+ * {@link prReportDeployFixSchema}. `attempts` is a ratio against `maxAttempts` only at 1.
883
+ */
884
+ readonly cycles: v.NumberSchema<undefined>;
885
+ /** How many rounds the step's log cap dropped; see {@link prReportDeployFixSchema}. */
886
+ readonly droppedRounds: v.NumberSchema<undefined>;
887
+ /** The layer the LAST verdict blamed; null when no round produced one. */
888
+ readonly faultLayer: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["provider", "platform", "deployment", "unknown"], undefined>, undefined>, undefined>;
889
+ /**
890
+ * The remediation the LAST verdict asked for; null when there is no verdict.
891
+ *
892
+ * A plain string rather than the action union, for the reason the stored attempt log types its
893
+ * own copy that way: the vocabulary is closed and PERSISTED, so a member retired later is still
894
+ * sitting on a saved step, and a picklist here would fail this report's own response validation
895
+ * on the public read instead of naming what a human must re-pick.
896
+ */
897
+ readonly action: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
898
+ /** Every action the engine actually RAN, in round order. Empty ⇒ nothing was. */
899
+ readonly ranActions: v.ArraySchema<v.StringSchema<undefined>, undefined>;
900
+ /** Why the last verdict's action was not run, when it was not. */
901
+ readonly withheld: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
902
+ /** The investigation's own failure, when the last round produced no verdict. */
903
+ readonly failure: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
904
+ /**
905
+ * How many readiness-ceiling extensions a `wait` verdict won. Non-zero is what accounts for a
906
+ * lifecycle whose bring-up ran past this deployment's configured ceiling; without it the dates
907
+ * in the timeline below cannot be reconciled with the ceiling, which is the one way an
908
+ * invisible remediation reads worse than none.
909
+ */
910
+ readonly waitExtensions: v.NumberSchema<undefined>;
911
+ }, undefined>, undefined>, undefined>;
912
+ }, undefined>, undefined>, undefined>;
578
913
  }, undefined>, undefined>;
579
914
  readonly teardown: v.PicklistSchema<["confirmed", "unconfirmed", "pending", "retained", "failed", "not_applicable"], undefined>;
580
915
  readonly timeline: v.ObjectSchema<{
@@ -1600,10 +1935,83 @@ export declare const prVerificationReportSchema: v.ObjectSchema<{
1600
1935
  readonly entries: v.ArraySchema<v.ObjectSchema<{
1601
1936
  /** The service frame the environment was provisioned for. */
1602
1937
  readonly frameId: v.StringSchema<undefined>;
1603
- /** `ready` (live), `failed` (the provision broke) or `skipped` (an infraless frame). */
1604
- readonly status: v.PicklistSchema<["ready", "failed", "skipped"], undefined>;
1938
+ /**
1939
+ * `ready` (live), `failed` (the provision broke), `skipped` (an infraless frame), or
1940
+ * `unsettled`.
1941
+ *
1942
+ * `unsettled` is the frame the run holds no terminal outcome for, and it exists because both
1943
+ * remediation loops CLEAR the recorded outcome to make the re-provision happen: a report
1944
+ * composed in that window (the run was abandoned, timed out, or failed elsewhere) would
1945
+ * otherwise drop the frame entirely and read as a deployer that recorded nothing, on a run
1946
+ * where the platform demonstrably acted. It is never a verdict about the environment, which is
1947
+ * why it is not a member of the step's own `deployEnvStateSchema`: nothing settled.
1948
+ */
1949
+ readonly status: v.PicklistSchema<["ready", "failed", "skipped", "unsettled"], undefined>;
1605
1950
  readonly url: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1606
1951
  readonly error: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
1952
+ /** What the platform tried about a failure. See {@link prReportEnvironmentRemediationSchema}. */
1953
+ readonly remediation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
1954
+ readonly deployFix: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
1955
+ /** Rounds DISPATCHED, across every provisioning cycle of the run. */
1956
+ readonly attempts: v.NumberSchema<undefined>;
1957
+ /** The PER-CYCLE budget, frozen at the first escalation. Null when the loop recorded none. */
1958
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
1959
+ /**
1960
+ * How many provisioning cycles those rounds are spread over: 1 on any run whose deployer was
1961
+ * never looped back to, which is what makes `attempts` readable against `maxAttempts`.
1962
+ */
1963
+ readonly cycles: v.NumberSchema<undefined>;
1964
+ /** The classified provisioning cause that admitted the loop. */
1965
+ readonly reason: v.StringSchema<undefined>;
1966
+ /** How many dispatched rounds the fixer's own job finished. */
1967
+ readonly completed: v.NumberSchema<undefined>;
1968
+ /** How many died without finishing, so that round changed nothing in the checkout. */
1969
+ readonly failed: v.NumberSchema<undefined>;
1970
+ /**
1971
+ * How many rounds ran whose outcome the step's own log cap has since dropped. Counted in
1972
+ * `attempts` and in neither `completed` nor `failed`, and stated rather than folded into one of
1973
+ * them: a dropped round is one nobody can now say finished or died.
1974
+ */
1975
+ readonly droppedRounds: v.NumberSchema<undefined>;
1976
+ }, undefined>, undefined>, undefined>;
1977
+ readonly investigation: v.OptionalSchema<v.NullableSchema<v.ObjectSchema<{
1978
+ /** Rounds run, across every provisioning cycle of the run. */
1979
+ readonly attempts: v.NumberSchema<undefined>;
1980
+ /** The PER-CYCLE budget, frozen at the first round. */
1981
+ readonly maxAttempts: v.OptionalSchema<v.NullableSchema<v.NumberSchema<undefined>, undefined>, undefined>;
1982
+ /**
1983
+ * How many provisioning cycles those rounds are spread over; see the same field on
1984
+ * {@link prReportDeployFixSchema}. `attempts` is a ratio against `maxAttempts` only at 1.
1985
+ */
1986
+ readonly cycles: v.NumberSchema<undefined>;
1987
+ /** How many rounds the step's log cap dropped; see {@link prReportDeployFixSchema}. */
1988
+ readonly droppedRounds: v.NumberSchema<undefined>;
1989
+ /** The layer the LAST verdict blamed; null when no round produced one. */
1990
+ readonly faultLayer: v.OptionalSchema<v.NullableSchema<v.PicklistSchema<["provider", "platform", "deployment", "unknown"], undefined>, undefined>, undefined>;
1991
+ /**
1992
+ * The remediation the LAST verdict asked for; null when there is no verdict.
1993
+ *
1994
+ * A plain string rather than the action union, for the reason the stored attempt log types its
1995
+ * own copy that way: the vocabulary is closed and PERSISTED, so a member retired later is still
1996
+ * sitting on a saved step, and a picklist here would fail this report's own response validation
1997
+ * on the public read instead of naming what a human must re-pick.
1998
+ */
1999
+ readonly action: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2000
+ /** Every action the engine actually RAN, in round order. Empty ⇒ nothing was. */
2001
+ readonly ranActions: v.ArraySchema<v.StringSchema<undefined>, undefined>;
2002
+ /** Why the last verdict's action was not run, when it was not. */
2003
+ readonly withheld: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2004
+ /** The investigation's own failure, when the last round produced no verdict. */
2005
+ readonly failure: v.OptionalSchema<v.NullableSchema<v.StringSchema<undefined>, undefined>, undefined>;
2006
+ /**
2007
+ * How many readiness-ceiling extensions a `wait` verdict won. Non-zero is what accounts for a
2008
+ * lifecycle whose bring-up ran past this deployment's configured ceiling; without it the dates
2009
+ * in the timeline below cannot be reconciled with the ceiling, which is the one way an
2010
+ * invisible remediation reads worse than none.
2011
+ */
2012
+ readonly waitExtensions: v.NumberSchema<undefined>;
2013
+ }, undefined>, undefined>, undefined>;
2014
+ }, undefined>, undefined>, undefined>;
1607
2015
  }, undefined>, undefined>;
1608
2016
  readonly teardown: v.PicklistSchema<["confirmed", "unconfirmed", "pending", "retained", "failed", "not_applicable"], undefined>;
1609
2017
  readonly timeline: v.ObjectSchema<{