@kungfu-tech/buildchain 4.0.2-alpha.10 → 4.0.2-alpha.12
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.
- package/architecture/agent-change-map.md +40 -0
- package/architecture/ci-lane-change-budget.json +332 -0
- package/architecture/internal-capabilities.json +39 -0
- package/architecture/maintainability-debt.json +11 -9
- package/architecture/maintainability-policy.json +7 -7
- package/architecture/v4-release-topology.json +2 -1
- package/architecture/v4-universal-workflow-bootstrap.json +181 -0
- package/architecture/v4-universal-workflow-fault-campaign.json +72 -0
- package/architecture/v4-universal-workflow-train-admission.json +40 -0
- package/dist/site/buildchain-contract.json +86 -41
- package/dist/site/buildchain-site.json +15 -10
- package/dist/site/capability-registry.json +1 -1
- package/dist/site/controller-registry.json +46 -10
- package/dist/site/kfd-claims.json +154 -68
- package/dist/site/kfd-upstream-aggregate.json +1 -1
- package/dist/site/manual-registry.json +2 -2
- package/dist/site/node-api-registry.json +7 -7
- package/dist/site/page-registry.json +9 -4
- package/dist/site/public-surface-audit.json +158 -66
- package/dist/site/publication-authority-registry.json +67 -1
- package/dist/site/publication-registry.json +4 -4
- package/dist/site/site-manifest.json +6 -6
- package/dist/site/workflow-registry.json +189 -67
- package/docs/node-api-reference.md +9 -9
- package/docs/reusable-build-surface.md +16 -0
- package/package.json +2 -2
- package/packages/core/buildchain-publication-authority.js +3 -0
- package/packages/core/ci-lane-change-budget.js +14 -1
- package/packages/core/release-tail-provider-plane.js +1 -1
- package/packages/core/v4-product-publication.js +1 -1
- package/packages/core/v4-universal-workflow-bootstrap.js +596 -0
- package/scripts/check-maintainability.mjs +16 -113
- package/scripts/check-v4-release-topology.mjs +5 -2
- package/scripts/check-v4-universal-workflow-bootstrap.mjs +257 -0
- package/scripts/generate-channel-build-workflow.mjs +5 -1
- package/scripts/generate-channel-promotion-workflow.mjs +3 -2
- package/scripts/generate-v4-universal-workflow-facades.mjs +415 -0
- package/scripts/maintainability-public-surface.mjs +115 -0
- package/scripts/universal-facade-maintainability.mjs +82 -0
- package/scripts/v4-universal-workflow-backflow.mjs +212 -0
- package/scripts/v4-universal-workflow-engine.mjs +586 -0
- package/scripts/v4-universal-workflow-self-dogfood.mjs +205 -0
- package/templates/universal-buildchain-bootstrap-recovery.yml +282 -0
- package/templates/universal-buildchain-bootstrap.yml +28 -0
|
@@ -150,6 +150,8 @@ Safe change route: Reduce one owned responsibility behind the stable facade, run
|
|
|
150
150
|
|
|
151
151
|
### Current top twenty maintenance hotspots
|
|
152
152
|
|
|
153
|
+
- `.github/workflows/bootstrap.yml`
|
|
154
|
+
- `scripts/check-v4-universal-workflow-bootstrap.mjs`
|
|
153
155
|
- `tests/v3-v4-capability-inventory.test.mjs`
|
|
154
156
|
- `tests/v4-floating-consumer-policy-contract.test.mjs`
|
|
155
157
|
- `tests/v4-publication-qualification.test.mjs`
|
|
@@ -996,6 +998,44 @@ Owner: Buildchain publication rehearsal maintainers
|
|
|
996
998
|
|
|
997
999
|
- `node --test tests/v4-publication-rehearsal.test.mjs`
|
|
998
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
|
+
|
|
999
1039
|
## web-surface-delivery
|
|
1000
1040
|
|
|
1001
1041
|
Owner: Buildchain web-surface maintainers
|
|
@@ -269,6 +269,23 @@
|
|
|
269
269
|
"rationale": "The Buildchain-owned alpha entry delegates to the single v4 publisher."
|
|
270
270
|
}
|
|
271
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
|
+
},
|
|
272
289
|
{
|
|
273
290
|
"laneId": ".github/workflows/release-candidate-promote.yml#invoke",
|
|
274
291
|
"authorityClass": "release",
|
|
@@ -319,6 +336,321 @@
|
|
|
319
336
|
"expectedContributionSeconds": 0,
|
|
320
337
|
"rationale": "The lane only reconciles already-produced rooted platform reports and grants no provider, release, or stable publication authority."
|
|
321
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
|
+
]
|
|
322
654
|
}
|
|
323
655
|
]
|
|
324
656
|
}
|
|
@@ -137,6 +137,12 @@
|
|
|
137
137
|
"crates/buildchain-v4-contracts/src/adopter_delivery.rs",
|
|
138
138
|
"crates/buildchain-v4-contracts/src/compatibility_facts.rs",
|
|
139
139
|
"crates/buildchain-v4-contracts/src/compatibility_facts",
|
|
140
|
+
"packages/core/v4-universal-workflow-bootstrap.js",
|
|
141
|
+
"scripts/check-v4-universal-workflow-bootstrap.mjs",
|
|
142
|
+
"scripts/generate-v4-universal-workflow-facades.mjs",
|
|
143
|
+
"scripts/v4-universal-workflow-backflow.mjs",
|
|
144
|
+
"scripts/v4-universal-workflow-engine.mjs",
|
|
145
|
+
"scripts/v4-universal-workflow-self-dogfood.mjs",
|
|
140
146
|
"scripts/check-internal-architecture.mjs",
|
|
141
147
|
"scripts/check-maintainability.mjs",
|
|
142
148
|
"scripts/maintainability-metrics.mjs",
|
|
@@ -835,6 +841,39 @@
|
|
|
835
841
|
"node --test tests/v4-architecture.test.mjs tests/v4-bridge.test.mjs tests/v4-provider-operation-journal.test.mjs tests/v4-provider-readback-idempotency.test.mjs tests/v4-release-activation-shadow.test.mjs tests/v4-stable-publication-fence.test.mjs tests/v4-partial-mutation-recovery-qualification.test.mjs tests/v4-stage-capsule.test.mjs tests/v4-stage-capsule-store.test.mjs tests/v4-platform-stage-checkpoints.test.mjs tests/v4-stage-capsule-qualification.test.mjs tests/v4-runtime-ref-resume-authority.test.mjs tests/v4-tail-reseal.test.mjs tests/v4-tail-reseal-parity.test.mjs"
|
|
836
842
|
]
|
|
837
843
|
},
|
|
844
|
+
{
|
|
845
|
+
"id": "v4-universal-workflow-bootstrap",
|
|
846
|
+
"owner": "Buildchain workflow maintainers",
|
|
847
|
+
"implementation": [
|
|
848
|
+
"packages/core/v4-universal-workflow-bootstrap.js",
|
|
849
|
+
"scripts/check-v4-universal-workflow-bootstrap.mjs",
|
|
850
|
+
"scripts/generate-v4-universal-workflow-facades.mjs",
|
|
851
|
+
"scripts/v4-universal-workflow-backflow.mjs",
|
|
852
|
+
"scripts/v4-universal-workflow-engine.mjs",
|
|
853
|
+
"scripts/v4-universal-workflow-self-dogfood.mjs"
|
|
854
|
+
],
|
|
855
|
+
"tests": [
|
|
856
|
+
"tests/v4-universal-workflow-backflow.test.mjs",
|
|
857
|
+
"tests/v4-universal-workflow-bootstrap.test.mjs",
|
|
858
|
+
"tests/v4-universal-workflow-fault-campaign.test.mjs",
|
|
859
|
+
"tests/v4-universal-workflow-self-dogfood.test.mjs"
|
|
860
|
+
],
|
|
861
|
+
"contracts": [
|
|
862
|
+
"architecture/v4-universal-workflow-bootstrap.json",
|
|
863
|
+
"architecture/v4-universal-workflow-fault-campaign.json",
|
|
864
|
+
"architecture/v4-universal-workflow-train-admission.json",
|
|
865
|
+
".github/workflows/bootstrap.yml",
|
|
866
|
+
".github/workflows/universal-bootstrap-dogfood.yml",
|
|
867
|
+
"templates/universal-buildchain-bootstrap-recovery.yml"
|
|
868
|
+
],
|
|
869
|
+
"generatedOutputs": [
|
|
870
|
+
".github/workflows/universal-bootstrap-recovery.yml"
|
|
871
|
+
],
|
|
872
|
+
"validationCommands": [
|
|
873
|
+
"node scripts/check-v4-universal-workflow-bootstrap.mjs",
|
|
874
|
+
"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"
|
|
875
|
+
]
|
|
876
|
+
},
|
|
838
877
|
{
|
|
839
878
|
"id": "maintainability-governance",
|
|
840
879
|
"owner": "Buildchain architecture maintainers",
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
},
|
|
8
8
|
"totalExcessLedger": {
|
|
9
9
|
"metric": "calibrated-full-dimensional-excess-v1",
|
|
10
|
-
"measuredExcess":
|
|
11
|
-
"current":
|
|
10
|
+
"measuredExcess": 64347,
|
|
11
|
+
"current": 56286
|
|
12
12
|
},
|
|
13
13
|
"defaults": {
|
|
14
14
|
"owner": "Buildchain architecture maintainers",
|
|
@@ -1123,7 +1123,7 @@
|
|
|
1123
1123
|
},
|
|
1124
1124
|
"executeReleaseTailTransaction@1016": {
|
|
1125
1125
|
"lines": 190,
|
|
1126
|
-
"complexity":
|
|
1126
|
+
"complexity": 26
|
|
1127
1127
|
}
|
|
1128
1128
|
}
|
|
1129
1129
|
},
|
|
@@ -1279,21 +1279,21 @@
|
|
|
1279
1279
|
"scripts/check-maintainability.mjs": {
|
|
1280
1280
|
"baseline": {
|
|
1281
1281
|
"functions": {
|
|
1282
|
-
"evaluateMaintainability@
|
|
1282
|
+
"evaluateMaintainability@253": {
|
|
1283
1283
|
"complexity": 29
|
|
1284
1284
|
}
|
|
1285
1285
|
}
|
|
1286
1286
|
},
|
|
1287
1287
|
"current": {
|
|
1288
1288
|
"functions": {
|
|
1289
|
-
"evaluateMaintainability@
|
|
1289
|
+
"evaluateMaintainability@253": {
|
|
1290
1290
|
"complexity": 29
|
|
1291
1291
|
}
|
|
1292
1292
|
}
|
|
1293
1293
|
},
|
|
1294
1294
|
"target": {
|
|
1295
1295
|
"functions": {
|
|
1296
|
-
"evaluateMaintainability@
|
|
1296
|
+
"evaluateMaintainability@253": {
|
|
1297
1297
|
"complexity": 25
|
|
1298
1298
|
}
|
|
1299
1299
|
}
|
|
@@ -1491,21 +1491,21 @@
|
|
|
1491
1491
|
"scripts/generate-channel-promotion-workflow.mjs": {
|
|
1492
1492
|
"baseline": {
|
|
1493
1493
|
"functions": {
|
|
1494
|
-
"generateChannelPromotionWorkflow@
|
|
1494
|
+
"generateChannelPromotionWorkflow@279": {
|
|
1495
1495
|
"lines": 282
|
|
1496
1496
|
}
|
|
1497
1497
|
}
|
|
1498
1498
|
},
|
|
1499
1499
|
"current": {
|
|
1500
1500
|
"functions": {
|
|
1501
|
-
"generateChannelPromotionWorkflow@
|
|
1501
|
+
"generateChannelPromotionWorkflow@279": {
|
|
1502
1502
|
"lines": 240
|
|
1503
1503
|
}
|
|
1504
1504
|
}
|
|
1505
1505
|
},
|
|
1506
1506
|
"target": {
|
|
1507
1507
|
"functions": {
|
|
1508
|
-
"generateChannelPromotionWorkflow@
|
|
1508
|
+
"generateChannelPromotionWorkflow@279": {
|
|
1509
1509
|
"lines": 180
|
|
1510
1510
|
}
|
|
1511
1511
|
}
|
|
@@ -3083,6 +3083,8 @@
|
|
|
3083
3083
|
}
|
|
3084
3084
|
},
|
|
3085
3085
|
"hotspots": [
|
|
3086
|
+
".github/workflows/bootstrap.yml",
|
|
3087
|
+
"scripts/check-v4-universal-workflow-bootstrap.mjs",
|
|
3086
3088
|
"tests/v3-v4-capability-inventory.test.mjs",
|
|
3087
3089
|
"tests/v4-floating-consumer-policy-contract.test.mjs",
|
|
3088
3090
|
"tests/v4-publication-qualification.test.mjs",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
},
|
|
27
27
|
"repositoryBudgets": {
|
|
28
28
|
"baselineRevision": "858dbe00b6206a8f356b4a12d2659bee7a72e71b",
|
|
29
|
-
"maxHandMaintainedSourceFiles":
|
|
30
|
-
"maxHandMaintainedSourceLines":
|
|
31
|
-
"maxWorkflowFiles":
|
|
29
|
+
"maxHandMaintainedSourceFiles": 462,
|
|
30
|
+
"maxHandMaintainedSourceLines": 170241,
|
|
31
|
+
"maxWorkflowFiles": 80,
|
|
32
32
|
"maxWorkflowLines": 26791,
|
|
33
|
-
"latestTransition": "The
|
|
34
|
-
"latestTransitionRationale": "The
|
|
33
|
+
"latestTransition": "The canonical Buildchain publisher accepts one exact-candidate request and materializes the rooted product intent before APPLY.",
|
|
34
|
+
"latestTransitionRationale": "The canonical publisher adds one mutually exclusive Bootstrap delegation instead of another typed release adapter, so the existing compatibility path remains unchanged while Train discovery is locked to an independently reviewed exact SHA before execution. The exact candidate engine now materializes the existing v4 product-publication intent from provider readback and passes that root into the sole APPLY action; it does not add a second provider, publication engine, or mutation boundary. The exact inventory contains 462 hand-maintained source files and 170241 lines; the ceiling binds the measured request guard, intent wiring, lane declaration, durable receipt retention, and recurrence tests rather than hiding their cost in debt or exceptions.",
|
|
35
35
|
"rationale": "Bounded modules separate candidate, evidence, native proof and execution, canonical failure verification, closed-set execution transfer, process-boundary verification, Warrant state and qualification, authority state, qualification, Landing acquisition, verified-attempt admission, Landing settlement and fence validation, provider attempt and heartbeat readback, sealed terminal evidence, hosted heartbeat, resume, store, options, command-specific adapters, and CLI orchestration responsibilities. The protected delivery workflow gives candidate and seal jobs no provider write credential, recursively rejects transfer drift, scopes every transfer artifact to the exact provider run attempt, chains every durable heartbeat state and receipt root on a distinct hosted runner domain, and permits qualification or exact failure settlement only after the finalizer verifies live jobs and the latest durable authority state. Public Landing admission and heartbeat always perform non-injectable fresh exact-attempt provider readback, tolerate only a not-yet-materialized seal job while retaining exact native and duplicate-job rejection, and heartbeat-loss coordination never invokes GitHub's run-scoped cancellation API where a successor rerun could race. The hosted process boundary anchors trust in the kernel-resolved versioned Runner.Worker path while accepting an equivalent argv-zero spelling with the same basename; its public boundary marker is allowed only at the one exact non-secret value, so a forged value under the same credential-like name still fails closed. The credentialless transfer seal validates the rooted native reuse decision against the Warrant-bound source, closure, dependency, toolchain, environment and command inputs; qualifiedBase stays in the proof and decision where it is rooted and later independently rechecked, rather than being assumed on the Warrant schema. V2 mutation cannot initialize a second empty authority beside a legacy ref: migration reads and roots the canonical live v1 ref, rechecks it, applies the explicit configured v2 policy, and atomically replaces its bytes through one expected-old non-force update, so old v1 controllers fail closed while the prior commit remains immutable history. Candidate ancestry classifies the GitHub artifact runtime token as credential authority. Every Landing settlement, including an unexpired fence, requires product-owned terminal readback. Terminal cleanup reads the immutable historical attempt, derives workflow and hosted Landing job identity from live run data, reads the exact protected ref head and compares containment against that immutable SHA, and seals merged only when the admitted merge-group head is contained by that protected base; a later different-head merge settles the old attempt as dequeued. Terminal normalization preserves transfer, finalizer boundary, native and seal job, admitted provider attempt, protected-base head, containment result, and terminal readback coordinates. The public reusable workflow truthfully retains its single-flight v1 authority without advertising v2 migration, while bounded v2 remains a separate opt-in CLI, Node API, and schema contract; the tracked self-caller stays on public v4-alpha with matching stable and alpha locks, and transient train selection is dispatch-only. Next-development parity adds one versioned transition authority, one durable controller, one bounded reservation adapter, and pure public-contract recovery evidence while retaining the existing thin floating-channel callers byte-for-byte. The floating-consumer gate reuses the existing contract-world evaluator so SHA drift passes only under the selected lock's compatibility policy, breaking surface drift still fails closed, and external certification reconstructs the receipt from the observed workflow SHA rather than the lock's historical evidence SHA. Tail reseal adds no Stage Capsule effect or general rebuild authority: it verifies the exact retained four-platform bytes, admits one known macOS tail failure through live provider readback, fences signing and finalization to explicit credentials and Warrant identity, and requires standard candidate Passport plus provider and protected readback. Compatibility Facts parity isolates canonical encoding, temporal verification, lifecycle validation, fixture projection, public authority projection, and CLI adaptation into bounded modules; legacy digest and proof arrays are derived only from exact current Fact lineage. Publication Rehearsal adds no production release authority: the content-addressed capsule contract binds source, candidate, manifest, config, canonical data-only provider bindings, provider policy, observations and core version separately from filesystem, runtime and rehearsal-only provider authority; simulate, replay and explicitly authorized provider rehearsal all reuse the release-tail planner, while same-commit local dogfood resolves the new reusable contract and exact current runtime before external callers remain on floating v4-alpha. Cross-runtime candidate recovery preserves original runtime and provider roots and creates resume lineage only after exact public ref, tag, ancestry, npm version and integrity readback. Adopter Delivery restores the reviewed public v3 gate, drivers, Passport binding, N-1 bootstrap and exact archive loader through one public v4 surface while keeping provider and release authority explicit non-claims. Floating Alpha bootstrap uses only the existing exact resolver and protected Alpha private shell to move an otherwise stale floating shell, retains public v4 stable promotion, and removes itself after protected readback. CI lane change-budget enforcement adds a bounded parser, evaluator, guard, and tests without creating another merge authority.",
|
|
36
36
|
"governance": "legacy-debt-sunset-2026q4"
|
|
37
37
|
},
|
|
@@ -1666,8 +1666,8 @@
|
|
|
1666
1666
|
},
|
|
1667
1667
|
"packages/core/release-tail-provider-plane.js#executeReleaseTailTransaction": {
|
|
1668
1668
|
"maxLines": 190,
|
|
1669
|
-
"maxComplexity":
|
|
1670
|
-
"rationale": "The single transaction executor preserves bounded retry, pre-effect and post-effect readback, atomic checkpoints and provider non-authority
|
|
1669
|
+
"maxComplexity": 26,
|
|
1670
|
+
"rationale": "The single transaction executor preserves bounded retry, pre-effect and post-effect readback, atomic checkpoints and provider non-authority while reconciling every attempted external effect without repeating its mutation; these exact ceilings cannot grow implicitly.",
|
|
1671
1671
|
"governance": "legacy-debt-sunset-2026q4"
|
|
1672
1672
|
},
|
|
1673
1673
|
"actions/promote-buildchain-ref/internal/promotion-operations.js#updateBranch": {
|
|
@@ -111,7 +111,8 @@
|
|
|
111
111
|
"terminalProjections": [
|
|
112
112
|
".github/workflows/.release-candidate-promote.yml",
|
|
113
113
|
"actions/v4-release-candidate-promote/index.js",
|
|
114
|
-
"packages/core/v4-release-invocation.js"
|
|
114
|
+
"packages/core/v4-release-invocation.js",
|
|
115
|
+
"scripts/v4-universal-workflow-engine.mjs"
|
|
115
116
|
],
|
|
116
117
|
"privilegedExecutableClosure": {
|
|
117
118
|
"entrypoints": ["actions/v4-release-candidate-promote/index.js"],
|