@kungfu-tech/buildchain 4.0.2-alpha.0 → 4.0.2-alpha.11

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 (82) hide show
  1. package/architecture/agent-change-map.md +52 -5
  2. package/architecture/ci-lane-change-budget.json +408 -8
  3. package/architecture/internal-capabilities.json +44 -1
  4. package/architecture/maintainability-debt.json +65 -133
  5. package/architecture/maintainability-policy.json +20 -15
  6. package/architecture/release-tail-contract-inventory.json +4 -4
  7. package/architecture/v3-core-mechanism-inventory.json +1 -0
  8. package/architecture/v3-v4-live-capability-inventory.json +17 -17
  9. package/architecture/v4-delivery-warrant-shadow-fixtures.json +5 -5
  10. package/architecture/v4-release-invocation-fixtures.json +139 -0
  11. package/architecture/v4-release-topology.json +317 -0
  12. package/architecture/v4-runtime-semantic-closure.json +4 -1
  13. package/architecture/v4-universal-workflow-bootstrap.json +181 -0
  14. package/architecture/v4-universal-workflow-fault-campaign.json +72 -0
  15. package/architecture/v4-universal-workflow-train-admission.json +40 -0
  16. package/contracts/buildchain-v2-residuals-v1.json +0 -9
  17. package/contracts/fixtures/v4-tail-reseal-v1/valid.json +1 -1
  18. package/contracts/v4-release-invocation-v1.schema.json +134 -0
  19. package/dist/site/buildchain-contract.json +87 -42
  20. package/dist/site/buildchain-site.json +15 -10
  21. package/dist/site/capability-registry.json +1 -1
  22. package/dist/site/controller-registry.json +46 -10
  23. package/dist/site/kfd-claims.json +176 -69
  24. package/dist/site/kfd-upstream-aggregate.json +1 -1
  25. package/dist/site/manual-registry.json +2 -2
  26. package/dist/site/node-api-registry.json +97 -22
  27. package/dist/site/page-registry.json +9 -4
  28. package/dist/site/public-surface-audit.json +190 -71
  29. package/dist/site/publication-authority-registry.json +68 -3
  30. package/dist/site/publication-registry.json +4 -4
  31. package/dist/site/site-manifest.json +6 -6
  32. package/dist/site/workflow-registry.json +221 -72
  33. package/docs/node-api-reference.md +28 -25
  34. package/docs/reusable-build-surface.md +16 -0
  35. package/package.json +2 -2
  36. package/packages/core/buildchain-publication-authority.js +3 -0
  37. package/packages/core/ci-lane-change-budget.js +14 -1
  38. package/packages/core/dev-delivery-candidate-identity.js +45 -17
  39. package/packages/core/dev-delivery-execution-transfer.js +6 -7
  40. package/packages/core/dev-delivery-provider-heartbeat.js +22 -6
  41. package/packages/core/dev-delivery-warrant-legacy-recovery.js +4 -2
  42. package/packages/core/dev-delivery-warrant-native-compatibility.js +33 -0
  43. package/packages/core/dev-delivery-warrant-state.js +54 -54
  44. package/packages/core/dev-delivery-warrant.js +8 -0
  45. package/packages/core/dev-delivery-writer-protocol-transition.js +72 -0
  46. package/packages/core/release-tail-product-capabilities.js +29 -0
  47. package/packages/core/release-tail-provider-plane.js +3 -3
  48. package/packages/core/v4-canonical-contracts.js +14 -0
  49. package/packages/core/v4-floating-consumer-policy.js +4 -1
  50. package/packages/core/v4-product-publication.js +387 -0
  51. package/packages/core/v4-protected-publication-source.js +93 -0
  52. package/packages/core/v4-publication-qualification.js +1 -0
  53. package/packages/core/v4-release-invocation.js +425 -0
  54. package/packages/core/v4-universal-workflow-bootstrap.js +596 -0
  55. package/scripts/audit-publication-control-plane.mjs +0 -1
  56. package/scripts/check-inventory.mjs +27 -59
  57. package/scripts/check-maintainability.mjs +29 -118
  58. package/scripts/check-v3-v4-capability-inventory.mjs +3 -61
  59. package/scripts/check-v4-floating-consumer-policy-contract.mjs +10 -20
  60. package/scripts/check-v4-release-topology.mjs +493 -0
  61. package/scripts/check-v4-universal-workflow-bootstrap.mjs +257 -0
  62. package/scripts/dev-delivery-warrant.mjs +26 -5
  63. package/scripts/generate-channel-build-workflow.mjs +5 -1
  64. package/scripts/generate-channel-promotion-workflow.mjs +17 -57
  65. package/scripts/generate-v4-universal-workflow-facades.mjs +415 -0
  66. package/scripts/maintainability-public-surface.mjs +115 -0
  67. package/scripts/release-candidate-resolver.mjs +23 -24
  68. package/scripts/resume-from-candidate-run.mjs +16 -17
  69. package/scripts/universal-facade-maintainability.mjs +82 -0
  70. package/scripts/v3-v4-capability-catalog.mjs +107 -0
  71. package/scripts/v4-declarative-promotion-admission.mjs +4 -1
  72. package/scripts/v4-product-publication-intent.mjs +114 -0
  73. package/scripts/v4-release-candidate-adapter.mjs +41 -0
  74. package/scripts/v4-universal-workflow-backflow.mjs +212 -0
  75. package/scripts/v4-universal-workflow-engine.mjs +586 -0
  76. package/scripts/v4-universal-workflow-self-dogfood.mjs +205 -0
  77. package/templates/universal-buildchain-bootstrap-recovery.yml +282 -0
  78. package/templates/universal-buildchain-bootstrap.yml +28 -0
  79. package/scripts/capture-package-release-propagation.mjs +0 -263
  80. package/scripts/publication-commit-evidence.mjs +0 -444
  81. package/scripts/publish-github-artifact-attestation-evidence.mjs +0 -201
  82. package/scripts/stage-github-artifact-attestation-inputs.mjs +0 -65
@@ -77,7 +77,6 @@ Safe change route: Reduce one owned responsibility behind the stable facade, run
77
77
  - sources: `scripts/locked-source-checkout.mjs`
78
78
  - sources: `scripts/maintainability-domain-metrics.mjs`
79
79
  - sources: `scripts/paper.mjs`
80
- - sources: `scripts/publication-commit-evidence.mjs`
81
80
  - sources: `scripts/reconcile-github-governance.mjs`
82
81
  - sources: `scripts/release-candidate-resolver.mjs`
83
82
  - sources: `scripts/release-line-policy.mjs`
@@ -124,7 +123,6 @@ Safe change route: Reduce one owned responsibility behind the stable facade, run
124
123
  - tests: `tests/release-passport.test.mjs`
125
124
  - tests: `tests/release-propagation.test.mjs`
126
125
  - tests: `tests/v4-delivery-authority-parity.test.mjs`
127
- - tests: `tests/v4-floating-consumer-policy-contract.test.mjs`
128
126
  - tests: `tests/v4-floating-consumer-policy.test.mjs`
129
127
  - tests: `tests/v4-publication-rehearsal.test.mjs`
130
128
  - tests: `tests/web-surface.test.mjs`
@@ -152,8 +150,11 @@ Safe change route: Reduce one owned responsibility behind the stable facade, run
152
150
 
153
151
  ### Current top twenty maintenance hotspots
154
152
 
153
+ - `.github/workflows/bootstrap.yml`
154
+ - `scripts/check-v4-universal-workflow-bootstrap.mjs`
155
155
  - `tests/v3-v4-capability-inventory.test.mjs`
156
156
  - `tests/v4-floating-consumer-policy-contract.test.mjs`
157
+ - `tests/v4-publication-qualification.test.mjs`
157
158
  - `.github/workflows/v4-adopter-delivery.yml`
158
159
  - `.github/workflows/buildchain-ref-promotion.yml`
159
160
  - `tests/release-candidate-recovery.test.mjs`
@@ -166,21 +167,26 @@ Safe change route: Reduce one owned responsibility behind the stable facade, run
166
167
  - `scripts/check-v3-v4-capability-inventory.mjs`
167
168
  - `.github/workflows/release-candidate-promote.yml`
168
169
  - `actions/promote-buildchain-ref/lib.js`
170
+ - `actions/v4-release-candidate-promote/index.js`
171
+ - `actions/v4-release-candidate-promote/product-provider.js`
169
172
  - `scripts/check-inventory.mjs`
170
173
  - `tests/promote-buildchain-ref.test.mjs`
171
174
  - `tests/promotion-channel-router.test.mjs`
175
+ - `tests/v4-release-topology.test.mjs`
172
176
  - `scripts/site-capability-metadata.mjs`
173
177
  - `tests/v4-floating-consumer-policy.test.mjs`
178
+ - `tests/v4-declarative-promotion-mode.test.mjs`
174
179
  - `scripts/buildchain-cli-help.mjs`
175
180
  - `scripts/check-v4-floating-consumer-policy-contract.mjs`
176
181
  - `tests/dev-delivery-warrant.test.mjs`
182
+ - `packages/core/dev-delivery-warrant-state.js`
177
183
  - `actions/promote-buildchain-ref/internal/version-state.js`
178
- - `packages/core/v4-floating-consumer-policy.js`
179
184
  - `packages/core/v4-floating-consumer-release-passport.js`
180
185
  - `packages/core/release-passport.js`
181
186
  - `tests/promote-buildchain-ref-governance.test.mjs`
182
- - `tests/v4-declarative-promotion-mode.test.mjs`
183
187
  - `scripts/buildchain-cli-help.mjs`
188
+ - `scripts/check-maintainability.mjs`
189
+ - `tests/maintainability.test.mjs`
184
190
 
185
191
  ## cli-command-registry
186
192
 
@@ -381,6 +387,7 @@ Owner: Buildchain action maintainers
381
387
 
382
388
  ### Implementation
383
389
 
390
+ - `actions/promote-buildchain-ref/internal/contained-published-version-state.js`
384
391
  - `actions/promote-buildchain-ref/internal/promote-alpha-channel.js`
385
392
  - `actions/promote-buildchain-ref/internal/promote-major-channel.js`
386
393
  - `actions/promote-buildchain-ref/internal/promote-release-channel.js`
@@ -392,6 +399,7 @@ Owner: Buildchain action maintainers
392
399
 
393
400
  ### Tests
394
401
 
402
+ - `tests/promote-buildchain-ref-contained-published-version-state.test.mjs`
395
403
  - `tests/promote-buildchain-ref.test.mjs`
396
404
  - `tests/promote-buildchain-ref-recovery.test.mjs`
397
405
  - `tests/promote-buildchain-ref-governance.test.mjs`
@@ -403,7 +411,7 @@ Owner: Buildchain action maintainers
403
411
 
404
412
  ### Minimal validation
405
413
 
406
- - `node --test tests/promote-buildchain-ref.test.mjs tests/promote-buildchain-ref-recovery.test.mjs tests/promote-buildchain-ref-governance.test.mjs tests/promotion-responsibilities.test.mjs`
414
+ - `node --test tests/promote-buildchain-ref-contained-published-version-state.test.mjs tests/promote-buildchain-ref.test.mjs tests/promote-buildchain-ref-recovery.test.mjs tests/promote-buildchain-ref-governance.test.mjs tests/promotion-responsibilities.test.mjs`
407
415
 
408
416
  ## promotion-github-transaction-store
409
417
 
@@ -893,6 +901,7 @@ Owner: Buildchain protected delivery maintainers
893
901
 
894
902
  - `packages/core/dev-delivery-warrant.js`
895
903
  - `packages/core/dev-delivery-warrant-state.js`
904
+ - `packages/core/dev-delivery-warrant-native-compatibility.js`
896
905
  - `packages/core/dev-delivery-warrant-qualification.js`
897
906
  - `packages/core/dev-delivery-warrant-legacy-recovery.js`
898
907
  - `packages/core/dev-delivery-native-proof.js`
@@ -989,6 +998,44 @@ Owner: Buildchain publication rehearsal maintainers
989
998
 
990
999
  - `node --test tests/v4-publication-rehearsal.test.mjs`
991
1000
 
1001
+ ## v4-universal-workflow-bootstrap
1002
+
1003
+ Owner: Buildchain workflow maintainers
1004
+
1005
+ ### Implementation
1006
+
1007
+ - `packages/core/v4-universal-workflow-bootstrap.js`
1008
+ - `scripts/check-v4-universal-workflow-bootstrap.mjs`
1009
+ - `scripts/generate-v4-universal-workflow-facades.mjs`
1010
+ - `scripts/v4-universal-workflow-backflow.mjs`
1011
+ - `scripts/v4-universal-workflow-engine.mjs`
1012
+ - `scripts/v4-universal-workflow-self-dogfood.mjs`
1013
+
1014
+ ### Contracts
1015
+
1016
+ - `architecture/v4-universal-workflow-bootstrap.json`
1017
+ - `architecture/v4-universal-workflow-fault-campaign.json`
1018
+ - `architecture/v4-universal-workflow-train-admission.json`
1019
+ - `.github/workflows/bootstrap.yml`
1020
+ - `.github/workflows/universal-bootstrap-dogfood.yml`
1021
+ - `templates/universal-buildchain-bootstrap-recovery.yml`
1022
+
1023
+ ### Tests
1024
+
1025
+ - `tests/v4-universal-workflow-backflow.test.mjs`
1026
+ - `tests/v4-universal-workflow-bootstrap.test.mjs`
1027
+ - `tests/v4-universal-workflow-fault-campaign.test.mjs`
1028
+ - `tests/v4-universal-workflow-self-dogfood.test.mjs`
1029
+
1030
+ ### Generated outputs
1031
+
1032
+ - `.github/workflows/universal-bootstrap-recovery.yml`
1033
+
1034
+ ### Minimal validation
1035
+
1036
+ - `node scripts/check-v4-universal-workflow-bootstrap.mjs`
1037
+ - `node --test tests/v4-universal-workflow-bootstrap.test.mjs tests/v4-universal-workflow-backflow.test.mjs tests/v4-universal-workflow-fault-campaign.test.mjs tests/v4-universal-workflow-self-dogfood.test.mjs`
1038
+
992
1039
  ## web-surface-delivery
993
1040
 
994
1041
  Owner: Buildchain web-surface maintainers
@@ -185,37 +185,122 @@
185
185
  },
186
186
  "declarations": [
187
187
  {
188
- "laneId": ".github/workflows/.release-candidate-promote.yml#legacy-promote",
188
+ "laneId": ".github/workflows/.release-candidate-promote.yml#qualify",
189
+ "authorityClass": "evidence",
190
+ "triggerClass": "reusable",
191
+ "concurrencyPolicy": {
192
+ "mode": "serialized",
193
+ "cancelInProgress": false
194
+ },
195
+ "expectedRunnerMinutes": 30,
196
+ "cancellationBehavior": "finish-started",
197
+ "sloImpact": {
198
+ "mergeCritical": false,
199
+ "metric": "protected release qualification latency",
200
+ "expectedContributionSeconds": 0,
201
+ "rationale": "QUALIFY is the read-only exact-runtime and sealed-candidate admission boundary."
202
+ }
203
+ },
204
+ {
205
+ "laneId": ".github/workflows/.release-candidate-promote.yml#apply",
189
206
  "authorityClass": "release",
190
207
  "triggerClass": "reusable",
208
+ "concurrencyPolicy": {
209
+ "mode": "serialized",
210
+ "cancelInProgress": false
211
+ },
212
+ "expectedRunnerMinutes": 30,
213
+ "cancellationBehavior": "finish-started",
214
+ "sloImpact": {
215
+ "mergeCritical": false,
216
+ "metric": "protected release APPLY latency",
217
+ "expectedContributionSeconds": 0,
218
+ "rationale": "APPLY is the sole contents-write and provider-mutation OIDC authority boundary."
219
+ }
220
+ },
221
+ {
222
+ "laneId": ".github/workflows/.release-candidate-promote.yml#settle",
223
+ "authorityClass": "evidence",
224
+ "triggerClass": "reusable",
225
+ "concurrencyPolicy": {
226
+ "mode": "serialized",
227
+ "cancelInProgress": false
228
+ },
229
+ "expectedRunnerMinutes": 10,
230
+ "cancellationBehavior": "finish-started",
231
+ "sloImpact": {
232
+ "mergeCritical": false,
233
+ "metric": "terminal receipt projection latency",
234
+ "expectedContributionSeconds": 0,
235
+ "rationale": "SETTLE verifies and projects the already durable terminal ReleaseReceipt without mutation authority."
236
+ }
237
+ },
238
+ {
239
+ "laneId": ".github/workflows/buildchain-ref-promotion-recovery.yml#resume",
240
+ "authorityClass": "release",
241
+ "triggerClass": "manual",
191
242
  "concurrencyPolicy": {
192
243
  "mode": "none",
193
244
  "cancelInProgress": false
194
245
  },
195
- "expectedRunnerMinutes": 45,
246
+ "expectedRunnerMinutes": 35,
196
247
  "cancellationBehavior": "finish-started",
197
248
  "sloImpact": {
198
249
  "mergeCritical": false,
199
- "metric": "protected release completion latency",
250
+ "metric": "manual recovery adapter latency",
200
251
  "expectedContributionSeconds": 0,
201
- "rationale": "This is the existing v3 promotion lane under an explicit legacy identity, not an added execution path."
252
+ "rationale": "The recovery surface is a one-way adapter into the same canonical publisher."
202
253
  }
203
254
  },
204
255
  {
205
- "laneId": ".github/workflows/.release-candidate-promote.yml#v4-declarative-promote",
256
+ "laneId": ".github/workflows/buildchain-ref-promotion.yml#promote",
257
+ "authorityClass": "release",
258
+ "triggerClass": "mixed",
259
+ "concurrencyPolicy": {
260
+ "mode": "none",
261
+ "cancelInProgress": false
262
+ },
263
+ "expectedRunnerMinutes": 35,
264
+ "cancellationBehavior": "finish-started",
265
+ "sloImpact": {
266
+ "mergeCritical": false,
267
+ "metric": "Buildchain alpha promotion adapter latency",
268
+ "expectedContributionSeconds": 0,
269
+ "rationale": "The Buildchain-owned alpha entry delegates to the single v4 publisher."
270
+ }
271
+ },
272
+ {
273
+ "laneId": ".github/workflows/buildchain-ref-promotion.yml#universal-bootstrap",
274
+ "authorityClass": "governed-delegation",
275
+ "triggerClass": "mixed",
276
+ "concurrencyPolicy": {
277
+ "mode": "none",
278
+ "cancelInProgress": false
279
+ },
280
+ "expectedRunnerMinutes": 60,
281
+ "cancellationBehavior": "finish-started",
282
+ "sloImpact": {
283
+ "mergeCritical": false,
284
+ "metric": "canonical exact-candidate self-promotion latency",
285
+ "expectedContributionSeconds": 0,
286
+ "rationale": "The canonical publisher delegates one closed request to the exact reviewed candidate and keeps the compatibility path mutually exclusive."
287
+ }
288
+ },
289
+ {
290
+ "laneId": ".github/workflows/release-candidate-promote.yml#invoke",
206
291
  "authorityClass": "release",
207
292
  "triggerClass": "reusable",
208
293
  "concurrencyPolicy": {
209
294
  "mode": "none",
210
295
  "cancelInProgress": false
211
296
  },
212
- "expectedRunnerMinutes": 30,
297
+ "expectedRunnerMinutes": 35,
213
298
  "cancellationBehavior": "finish-started",
214
299
  "sloImpact": {
215
300
  "mergeCritical": false,
216
- "metric": "protected release completion latency",
301
+ "metric": "public promotion adapter latency",
217
302
  "expectedContributionSeconds": 0,
218
- "rationale": "The v4 provider lane replaces consumer tail execution only for release invocations and is outside merge-critical CI."
303
+ "rationale": "The public compatibility surface resolves discovery facts and invokes one fixed v4 publisher."
219
304
  }
220
305
  },
221
306
  {
@@ -251,6 +336,321 @@
251
336
  "expectedContributionSeconds": 0,
252
337
  "rationale": "The lane only reconciles already-produced rooted platform reports and grants no provider, release, or stable publication authority."
253
338
  }
339
+ },
340
+ {
341
+ "laneId": ".github/workflows/bootstrap.yml#admit",
342
+ "authorityClass": "evidence",
343
+ "triggerClass": "reusable",
344
+ "concurrencyPolicy": {
345
+ "mode": "none",
346
+ "cancelInProgress": false
347
+ },
348
+ "expectedRunnerMinutes": 10,
349
+ "cancellationBehavior": "finish-started",
350
+ "sloImpact": {
351
+ "mergeCritical": false,
352
+ "metric": "exact-candidate admission latency",
353
+ "expectedContributionSeconds": 0,
354
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
355
+ }
356
+ },
357
+ {
358
+ "laneId": ".github/workflows/bootstrap.yml#execute",
359
+ "authorityClass": "governed-delegation",
360
+ "triggerClass": "reusable",
361
+ "concurrencyPolicy": {
362
+ "mode": "none",
363
+ "cancelInProgress": false
364
+ },
365
+ "expectedRunnerMinutes": 60,
366
+ "cancellationBehavior": "finish-started",
367
+ "sloImpact": {
368
+ "mergeCritical": false,
369
+ "metric": "exact-candidate execution latency",
370
+ "expectedContributionSeconds": 0,
371
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
372
+ }
373
+ },
374
+ {
375
+ "laneId": ".github/workflows/bootstrap.yml#settle",
376
+ "authorityClass": "evidence",
377
+ "triggerClass": "reusable",
378
+ "concurrencyPolicy": {
379
+ "mode": "none",
380
+ "cancelInProgress": false
381
+ },
382
+ "expectedRunnerMinutes": 10,
383
+ "cancellationBehavior": "finish-started",
384
+ "sloImpact": {
385
+ "mergeCritical": false,
386
+ "metric": "universal terminal settlement latency",
387
+ "expectedContributionSeconds": 0,
388
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
389
+ }
390
+ },
391
+ {
392
+ "laneId": ".github/workflows/universal-bootstrap-recovery.yml#recovery-admit",
393
+ "authorityClass": "evidence",
394
+ "triggerClass": "reusable",
395
+ "concurrencyPolicy": {
396
+ "mode": "none",
397
+ "cancelInProgress": false
398
+ },
399
+ "expectedRunnerMinutes": 10,
400
+ "cancellationBehavior": "finish-started",
401
+ "sloImpact": {
402
+ "mergeCritical": false,
403
+ "metric": "consumer-owned exact-candidate admission latency",
404
+ "expectedContributionSeconds": 0,
405
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
406
+ }
407
+ },
408
+ {
409
+ "laneId": ".github/workflows/universal-bootstrap-recovery.yml#recovery-execute",
410
+ "authorityClass": "governed-delegation",
411
+ "triggerClass": "reusable",
412
+ "concurrencyPolicy": {
413
+ "mode": "none",
414
+ "cancelInProgress": false
415
+ },
416
+ "expectedRunnerMinutes": 60,
417
+ "cancellationBehavior": "finish-started",
418
+ "sloImpact": {
419
+ "mergeCritical": false,
420
+ "metric": "consumer-owned exact-candidate execution latency",
421
+ "expectedContributionSeconds": 0,
422
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
423
+ }
424
+ },
425
+ {
426
+ "laneId": ".github/workflows/universal-bootstrap-recovery.yml#recovery-settle",
427
+ "authorityClass": "evidence",
428
+ "triggerClass": "reusable",
429
+ "concurrencyPolicy": {
430
+ "mode": "none",
431
+ "cancelInProgress": false
432
+ },
433
+ "expectedRunnerMinutes": 10,
434
+ "cancellationBehavior": "finish-started",
435
+ "sloImpact": {
436
+ "mergeCritical": false,
437
+ "metric": "consumer-owned terminal settlement latency",
438
+ "expectedContributionSeconds": 0,
439
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
440
+ }
441
+ },
442
+ {
443
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#prepare",
444
+ "authorityClass": "evidence",
445
+ "triggerClass": "mixed",
446
+ "concurrencyPolicy": {
447
+ "mode": "none",
448
+ "cancelInProgress": false
449
+ },
450
+ "expectedRunnerMinutes": 10,
451
+ "cancellationBehavior": "finish-started",
452
+ "sloImpact": {
453
+ "mergeCritical": false,
454
+ "metric": "Train-first self-dogfood admission latency",
455
+ "expectedContributionSeconds": 0,
456
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
457
+ }
458
+ },
459
+ {
460
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#primary-conformance",
461
+ "authorityClass": "governed-delegation",
462
+ "triggerClass": "mixed",
463
+ "concurrencyPolicy": {
464
+ "mode": "none",
465
+ "cancelInProgress": false
466
+ },
467
+ "expectedRunnerMinutes": 60,
468
+ "cancellationBehavior": "finish-started",
469
+ "sloImpact": {
470
+ "mergeCritical": false,
471
+ "metric": "Train-first exact-candidate self-dogfood latency",
472
+ "expectedContributionSeconds": 0,
473
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
474
+ }
475
+ },
476
+ {
477
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#recovery-conformance",
478
+ "authorityClass": "governed-delegation",
479
+ "triggerClass": "mixed",
480
+ "concurrencyPolicy": {
481
+ "mode": "none",
482
+ "cancelInProgress": false
483
+ },
484
+ "expectedRunnerMinutes": 60,
485
+ "cancellationBehavior": "finish-started",
486
+ "sloImpact": {
487
+ "mergeCritical": false,
488
+ "metric": "Train-first exact-candidate self-dogfood latency",
489
+ "expectedContributionSeconds": 0,
490
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
491
+ }
492
+ },
493
+ {
494
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#primary-alpha",
495
+ "authorityClass": "governed-delegation",
496
+ "triggerClass": "mixed",
497
+ "concurrencyPolicy": {
498
+ "mode": "none",
499
+ "cancelInProgress": false
500
+ },
501
+ "expectedRunnerMinutes": 60,
502
+ "cancellationBehavior": "finish-started",
503
+ "sloImpact": {
504
+ "mergeCritical": false,
505
+ "metric": "Train-first exact-candidate self-dogfood latency",
506
+ "expectedContributionSeconds": 0,
507
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
508
+ }
509
+ },
510
+ {
511
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#recovery-alpha",
512
+ "authorityClass": "governed-delegation",
513
+ "triggerClass": "mixed",
514
+ "concurrencyPolicy": {
515
+ "mode": "none",
516
+ "cancelInProgress": false
517
+ },
518
+ "expectedRunnerMinutes": 60,
519
+ "cancellationBehavior": "finish-started",
520
+ "sloImpact": {
521
+ "mergeCritical": false,
522
+ "metric": "Train-first exact-candidate self-dogfood latency",
523
+ "expectedContributionSeconds": 0,
524
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
525
+ }
526
+ },
527
+ {
528
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#primary-stable",
529
+ "authorityClass": "governed-delegation",
530
+ "triggerClass": "mixed",
531
+ "concurrencyPolicy": {
532
+ "mode": "none",
533
+ "cancelInProgress": false
534
+ },
535
+ "expectedRunnerMinutes": 60,
536
+ "cancellationBehavior": "finish-started",
537
+ "sloImpact": {
538
+ "mergeCritical": false,
539
+ "metric": "Train-first exact-candidate self-dogfood latency",
540
+ "expectedContributionSeconds": 0,
541
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
542
+ }
543
+ },
544
+ {
545
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#recovery-stable",
546
+ "authorityClass": "governed-delegation",
547
+ "triggerClass": "mixed",
548
+ "concurrencyPolicy": {
549
+ "mode": "none",
550
+ "cancelInProgress": false
551
+ },
552
+ "expectedRunnerMinutes": 60,
553
+ "cancellationBehavior": "finish-started",
554
+ "sloImpact": {
555
+ "mergeCritical": false,
556
+ "metric": "Train-first exact-candidate self-dogfood latency",
557
+ "expectedContributionSeconds": 0,
558
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
559
+ }
560
+ },
561
+ {
562
+ "laneId": ".github/workflows/universal-bootstrap-dogfood.yml#reconcile",
563
+ "authorityClass": "evidence",
564
+ "triggerClass": "mixed",
565
+ "concurrencyPolicy": {
566
+ "mode": "none",
567
+ "cancelInProgress": false
568
+ },
569
+ "expectedRunnerMinutes": 10,
570
+ "cancellationBehavior": "finish-started",
571
+ "sloImpact": {
572
+ "mergeCritical": false,
573
+ "metric": "primary and recovery equivalence latency",
574
+ "expectedContributionSeconds": 0,
575
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
576
+ }
577
+ }
578
+ ],
579
+ "declarationFamilies": [
580
+ {
581
+ "authorityClass": "governed-delegation",
582
+ "triggerClass": "reusable",
583
+ "concurrencyPolicy": {
584
+ "mode": "none",
585
+ "cancelInProgress": false
586
+ },
587
+ "expectedRunnerMinutes": 60,
588
+ "cancellationBehavior": "finish-started",
589
+ "sloImpact": {
590
+ "mergeCritical": false,
591
+ "metric": "opt-in exact-candidate execution latency",
592
+ "expectedContributionSeconds": 0,
593
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
594
+ },
595
+ "laneIds": [
596
+ ".github/workflows/.auditable-demo.yml#universal-bootstrap",
597
+ ".github/workflows/.binary-release-assets.yml#universal-bootstrap",
598
+ ".github/workflows/.build.yml#universal-bootstrap",
599
+ ".github/workflows/.bump-minor-version.yml#universal-bootstrap",
600
+ ".github/workflows/.declarative-auditable-demo.yml#universal-bootstrap",
601
+ ".github/workflows/.gate-profile.yml#universal-bootstrap",
602
+ ".github/workflows/.publication-authority.yml#universal-bootstrap",
603
+ ".github/workflows/.release-candidate-promote.yml#universal-bootstrap",
604
+ ".github/workflows/.release-verify.yml#universal-bootstrap",
605
+ ".github/workflows/.sam-verify.yml#universal-bootstrap",
606
+ ".github/workflows/.sync-release-page.yml#universal-bootstrap",
607
+ ".github/workflows/.sync-remote-git.yml#universal-bootstrap",
608
+ ".github/workflows/.web-surface.yml#universal-bootstrap",
609
+ ".github/workflows/.wheel-verify.yml#universal-bootstrap",
610
+ ".github/workflows/build.yml#universal-bootstrap",
611
+ ".github/workflows/buildchain-patrol.yml#universal-bootstrap",
612
+ ".github/workflows/check.yml#universal-bootstrap",
613
+ ".github/workflows/dev-alpha-candidate-patrol.yml#universal-bootstrap",
614
+ ".github/workflows/dev-delivery-warrant-cancel.yml#universal-bootstrap",
615
+ ".github/workflows/dev-delivery-warrant-close.yml#universal-bootstrap",
616
+ ".github/workflows/dev-pr-auto-merge.yml#universal-bootstrap",
617
+ ".github/workflows/dev-qualification-patrol.yml#universal-bootstrap",
618
+ ".github/workflows/engineering-housekeeper.yml#universal-bootstrap",
619
+ ".github/workflows/github-artifact-attestation.yml#universal-bootstrap",
620
+ ".github/workflows/paper-release-sealed.yml#universal-bootstrap",
621
+ ".github/workflows/paper-release.yml#universal-bootstrap",
622
+ ".github/workflows/patrol-daily.yml#universal-bootstrap",
623
+ ".github/workflows/patrol-monthly.yml#universal-bootstrap",
624
+ ".github/workflows/patrol-observed-evidence.yml#universal-bootstrap",
625
+ ".github/workflows/patrol-weekly.yml#universal-bootstrap",
626
+ ".github/workflows/publication-artifact.yml#universal-bootstrap",
627
+ ".github/workflows/release-candidate-promote.yml#universal-bootstrap",
628
+ ".github/workflows/release-propagation.yml#universal-bootstrap",
629
+ ".github/workflows/release-tail.yml#universal-bootstrap",
630
+ ".github/workflows/stable-candidate-patrol.yml#universal-bootstrap",
631
+ ".github/workflows/v4-stage-capsule-canary.yml#universal-bootstrap",
632
+ ".github/workflows/v4-tail-reseal.yml#universal-bootstrap"
633
+ ]
634
+ },
635
+ {
636
+ "authorityClass": "governed-delegation",
637
+ "triggerClass": "mixed",
638
+ "concurrencyPolicy": {
639
+ "mode": "none",
640
+ "cancelInProgress": false
641
+ },
642
+ "expectedRunnerMinutes": 60,
643
+ "cancellationBehavior": "finish-started",
644
+ "sloImpact": {
645
+ "mergeCritical": false,
646
+ "metric": "mixed-trigger exact-candidate execution latency",
647
+ "expectedContributionSeconds": 0,
648
+ "rationale": "The opt-in universal path preserves the default compatibility lane and executes only an exact admitted runtime."
649
+ },
650
+ "laneIds": [
651
+ ".github/workflows/release-governance-reconcile.yml#universal-bootstrap",
652
+ ".github/workflows/v4-adopter-delivery.yml#universal-bootstrap"
653
+ ]
254
654
  }
255
655
  ]
256
656
  }