@cleocode/core 2026.10.18 → 2026.10.19
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/dist/build-provenance.json +2 -2
- package/dist/check/pr-gate.js +1 -1
- package/dist/check/pr-gate.js.map +1 -1
- package/dist/cloud/nexus-vault.d.ts +4 -3
- package/dist/cloud/nexus-vault.d.ts.map +1 -1
- package/dist/cloud/nexus-vault.js +62 -22
- package/dist/cloud/nexus-vault.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +11 -0
- package/dist/config.js.map +1 -1
- package/dist/docs/conduit-history-backfill.d.ts +210 -0
- package/dist/docs/conduit-history-backfill.d.ts.map +1 -0
- package/dist/docs/conduit-history-backfill.js +451 -0
- package/dist/docs/conduit-history-backfill.js.map +1 -0
- package/dist/docs/docs-ops.d.ts +33 -0
- package/dist/docs/docs-ops.d.ts.map +1 -1
- package/dist/docs/docs-ops.js +72 -0
- package/dist/docs/docs-ops.js.map +1 -1
- package/dist/docs/docs-update.d.ts.map +1 -1
- package/dist/docs/docs-update.js +71 -0
- package/dist/docs/docs-update.js.map +1 -1
- package/dist/docs/doctor.d.ts +18 -4
- package/dist/docs/doctor.d.ts.map +1 -1
- package/dist/docs/doctor.js +124 -3
- package/dist/docs/doctor.js.map +1 -1
- package/dist/docs/section-merge.d.ts +70 -9
- package/dist/docs/section-merge.d.ts.map +1 -1
- package/dist/docs/section-merge.js +167 -10
- package/dist/docs/section-merge.js.map +1 -1
- package/dist/docs/section-write-path.d.ts.map +1 -1
- package/dist/docs/section-write-path.js +23 -8
- package/dist/docs/section-write-path.js.map +1 -1
- package/dist/gateway-client/generated/types.gen.d.ts +4 -0
- package/dist/gateway-client/generated/types.gen.d.ts.map +1 -1
- package/dist/go/driver.d.ts +29 -145
- package/dist/go/driver.d.ts.map +1 -1
- package/dist/go/driver.js +75 -168
- package/dist/go/driver.js.map +1 -1
- package/dist/go/index.d.ts +1 -1
- package/dist/go/index.d.ts.map +1 -1
- package/dist/go/index.js +1 -1
- package/dist/go/index.js.map +1 -1
- package/dist/goal/close.d.ts +1 -1
- package/dist/goal/close.js +2 -2
- package/dist/goal/close.js.map +1 -1
- package/dist/goal/draft.d.ts +10 -3
- package/dist/goal/draft.d.ts.map +1 -1
- package/dist/goal/draft.js +14 -9
- package/dist/goal/draft.js.map +1 -1
- package/dist/goal/index.d.ts +9 -12
- package/dist/goal/index.d.ts.map +1 -1
- package/dist/goal/index.js +9 -12
- package/dist/goal/index.js.map +1 -1
- package/dist/goal/runtime.d.ts +126 -0
- package/dist/goal/runtime.d.ts.map +1 -0
- package/dist/goal/runtime.js +289 -0
- package/dist/goal/runtime.js.map +1 -0
- package/dist/goal/status.d.ts +39 -0
- package/dist/goal/status.d.ts.map +1 -0
- package/dist/goal/status.js +101 -0
- package/dist/goal/status.js.map +1 -0
- package/dist/hooks/project-runner.d.ts +8 -3
- package/dist/hooks/project-runner.d.ts.map +1 -1
- package/dist/hooks/project-runner.js +104 -14
- package/dist/hooks/project-runner.js.map +1 -1
- package/dist/hooks/project-state.js +1 -1
- package/dist/hooks/project-state.js.map +1 -1
- package/dist/internal.d.ts +7 -3
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +5 -3
- package/dist/internal.js.map +1 -1
- package/dist/lifecycle/engine-ops.d.ts.map +1 -1
- package/dist/lifecycle/engine-ops.js +9 -6
- package/dist/lifecycle/engine-ops.js.map +1 -1
- package/dist/memory/retrieval/observe.d.ts.map +1 -1
- package/dist/memory/retrieval/observe.js +4 -8
- package/dist/memory/retrieval/observe.js.map +1 -1
- package/dist/paths.d.ts.map +1 -1
- package/dist/paths.js +4 -1
- package/dist/paths.js.map +1 -1
- package/dist/playbooks/cantbook-profile.d.ts +3 -3
- package/dist/playbooks/cantbook-profile.js +3 -3
- package/dist/playbooks/pi-runner-wiring.d.ts +3 -3
- package/dist/playbooks/pi-runner-wiring.js +3 -3
- package/dist/release/ci-evidence.d.ts +28 -0
- package/dist/release/ci-evidence.d.ts.map +1 -1
- package/dist/release/ci-evidence.js +76 -20
- package/dist/release/ci-evidence.js.map +1 -1
- package/dist/release/open.d.ts +11 -0
- package/dist/release/open.d.ts.map +1 -1
- package/dist/release/open.js +49 -10
- package/dist/release/open.js.map +1 -1
- package/dist/release/preflight-skip.d.ts +50 -0
- package/dist/release/preflight-skip.d.ts.map +1 -1
- package/dist/release/preflight-skip.js +151 -34
- package/dist/release/preflight-skip.js.map +1 -1
- package/dist/release/reconcile.d.ts.map +1 -1
- package/dist/release/reconcile.js +6 -3
- package/dist/release/reconcile.js.map +1 -1
- package/dist/scaffold/ensure-config.d.ts +1 -1
- package/dist/scaffold/ensure-config.d.ts.map +1 -1
- package/dist/scaffold/ensure-config.js +2 -0
- package/dist/scaffold/ensure-config.js.map +1 -1
- package/dist/security/index.d.ts +1 -1
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +1 -1
- package/dist/security/index.js.map +1 -1
- package/dist/security/override-cap-setting.d.ts +180 -0
- package/dist/security/override-cap-setting.d.ts.map +1 -0
- package/dist/security/override-cap-setting.js +657 -0
- package/dist/security/override-cap-setting.js.map +1 -0
- package/dist/security/override-cap.d.ts +20 -29
- package/dist/security/override-cap.d.ts.map +1 -1
- package/dist/security/override-cap.js +47 -71
- package/dist/security/override-cap.js.map +1 -1
- package/dist/security/owner-override-auth.d.ts +58 -0
- package/dist/security/owner-override-auth.d.ts.map +1 -1
- package/dist/security/owner-override-auth.js +82 -1
- package/dist/security/owner-override-auth.js.map +1 -1
- package/dist/security/owner-override-authority.d.ts +67 -0
- package/dist/security/owner-override-authority.d.ts.map +1 -0
- package/dist/security/owner-override-authority.js +100 -0
- package/dist/security/owner-override-authority.js.map +1 -0
- package/dist/sessions/handoff.d.ts.map +1 -1
- package/dist/sessions/handoff.js +4 -5
- package/dist/sessions/handoff.js.map +1 -1
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +22 -25
- package/dist/sessions/index.js.map +1 -1
- package/dist/store/conduit-doc-history.d.ts +39 -7
- package/dist/store/conduit-doc-history.d.ts.map +1 -1
- package/dist/store/conduit-doc-history.js +62 -12
- package/dist/store/conduit-doc-history.js.map +1 -1
- package/dist/store/data-safety-central.d.ts.map +1 -1
- package/dist/store/data-safety-central.js +3 -2
- package/dist/store/data-safety-central.js.map +1 -1
- package/dist/store/json.d.ts.map +1 -1
- package/dist/store/json.js +7 -7
- package/dist/store/json.js.map +1 -1
- package/dist/store/portable-bundle-scan.d.ts +23 -1
- package/dist/store/portable-bundle-scan.d.ts.map +1 -1
- package/dist/store/portable-bundle-scan.js +85 -3
- package/dist/store/portable-bundle-scan.js.map +1 -1
- package/dist/store/portable-bundle.d.ts.map +1 -1
- package/dist/store/portable-bundle.js +6 -1
- package/dist/store/portable-bundle.js.map +1 -1
- package/dist/store/row-identity-registry.d.ts +5 -3
- package/dist/store/row-identity-registry.d.ts.map +1 -1
- package/dist/store/row-identity-registry.js +54 -38
- package/dist/store/row-identity-registry.js.map +1 -1
- package/dist/store/schema/cleo-project/conduit.d.ts.map +1 -1
- package/dist/store/schema/cleo-project/conduit.js +4 -3
- package/dist/store/schema/cleo-project/conduit.js.map +1 -1
- package/dist/store/schema/cleo-project/runtime.d.ts +32 -0
- package/dist/store/schema/cleo-project/runtime.d.ts.map +1 -1
- package/dist/store/schema/cleo-project/runtime.js +7 -3
- package/dist/store/schema/cleo-project/runtime.js.map +1 -1
- package/dist/store/session-store.d.ts +45 -0
- package/dist/store/session-store.d.ts.map +1 -1
- package/dist/store/session-store.js +96 -1
- package/dist/store/session-store.js.map +1 -1
- package/dist/store/sqlite.d.ts +2 -0
- package/dist/store/sqlite.d.ts.map +1 -1
- package/dist/store/sqlite.js +12 -0
- package/dist/store/sqlite.js.map +1 -1
- package/dist/store/sync/merge/rules.d.ts.map +1 -1
- package/dist/store/sync/merge/rules.js +0 -16
- package/dist/store/sync/merge/rules.js.map +1 -1
- package/dist/store/sync/sealer.d.ts.map +1 -1
- package/dist/store/sync/sealer.js +27 -1
- package/dist/store/sync/sealer.js.map +1 -1
- package/dist/store/sync/sequencing.d.ts +3 -1
- package/dist/store/sync/sequencing.d.ts.map +1 -1
- package/dist/store/sync/sequencing.js +5 -3
- package/dist/store/sync/sequencing.js.map +1 -1
- package/dist/store/sync/timestamp-canon.d.ts.map +1 -1
- package/dist/store/sync/timestamp-canon.js +4 -0
- package/dist/store/sync/timestamp-canon.js.map +1 -1
- package/dist/store/table-classification.d.ts.map +1 -1
- package/dist/store/table-classification.js +12 -8
- package/dist/store/table-classification.js.map +1 -1
- package/dist/store/twin-collapse.d.ts +21 -0
- package/dist/store/twin-collapse.d.ts.map +1 -1
- package/dist/store/twin-collapse.js +235 -18
- package/dist/store/twin-collapse.js.map +1 -1
- package/dist/system/health.d.ts +17 -0
- package/dist/system/health.d.ts.map +1 -1
- package/dist/system/health.js +96 -0
- package/dist/system/health.js.map +1 -1
- package/dist/tasks/affected-packages.d.ts +67 -2
- package/dist/tasks/affected-packages.d.ts.map +1 -1
- package/dist/tasks/affected-packages.js +149 -21
- package/dist/tasks/affected-packages.js.map +1 -1
- package/dist/tasks/affected-scope.d.ts.map +1 -1
- package/dist/tasks/affected-scope.js +91 -5
- package/dist/tasks/affected-scope.js.map +1 -1
- package/dist/tasks/changeset-plan.d.ts +33 -0
- package/dist/tasks/changeset-plan.d.ts.map +1 -0
- package/dist/tasks/changeset-plan.js +152 -0
- package/dist/tasks/changeset-plan.js.map +1 -0
- package/dist/tasks/complete.d.ts.map +1 -1
- package/dist/tasks/complete.js +9 -1
- package/dist/tasks/complete.js.map +1 -1
- package/dist/tasks/done-plan.d.ts.map +1 -1
- package/dist/tasks/done-plan.js +28 -14
- package/dist/tasks/done-plan.js.map +1 -1
- package/dist/tasks/done-record.d.ts.map +1 -1
- package/dist/tasks/done-record.js +5 -1
- package/dist/tasks/done-record.js.map +1 -1
- package/dist/tasks/evidence.d.ts.map +1 -1
- package/dist/tasks/evidence.js +149 -18
- package/dist/tasks/evidence.js.map +1 -1
- package/dist/tasks/gate-runner.d.ts.map +1 -1
- package/dist/tasks/gate-runner.js +76 -4
- package/dist/tasks/gate-runner.js.map +1 -1
- package/dist/tasks/qa-run-binding.d.ts +18 -0
- package/dist/tasks/qa-run-binding.d.ts.map +1 -1
- package/dist/tasks/qa-run-binding.js +41 -1
- package/dist/tasks/qa-run-binding.js.map +1 -1
- package/dist/tasks/test-run-binding.d.ts +62 -0
- package/dist/tasks/test-run-binding.d.ts.map +1 -1
- package/dist/tasks/test-run-binding.js +126 -21
- package/dist/tasks/test-run-binding.js.map +1 -1
- package/dist/tasks/tool-resolver.d.ts +7 -0
- package/dist/tasks/tool-resolver.d.ts.map +1 -1
- package/dist/tasks/tool-resolver.js +3 -1
- package/dist/tasks/tool-resolver.js.map +1 -1
- package/dist/validation/engine-ops.d.ts.map +1 -1
- package/dist/validation/engine-ops.js +24 -29
- package/dist/validation/engine-ops.js.map +1 -1
- package/migrations/drizzle-cleo-project/20261016120000_t12535-playbook-row-uids/migration.sql +24 -0
- package/package.json +13 -13
- package/schemas/project-context.schema.json +5 -0
- package/templates/CLEO-INJECTION.md +1 -1
- package/templates/CLEO-REFERENCE.md +42 -1
- package/templates/cleo-gitignore +3 -0
- package/templates/git-hooks/legacy-hashes.json +1 -0
- package/templates/git-hooks/pre-push +35 -7
- package/templates/workflows/release-prepare.yml.tmpl +82 -4
- package/dist/goal/advance-with-persist.d.ts +0 -80
- package/dist/goal/advance-with-persist.d.ts.map +0 -1
- package/dist/goal/advance-with-persist.js +0 -105
- package/dist/goal/advance-with-persist.js.map +0 -1
- package/dist/goal/arm.d.ts +0 -61
- package/dist/goal/arm.d.ts.map +0 -1
- package/dist/goal/arm.js +0 -65
- package/dist/goal/arm.js.map +0 -1
- package/dist/goal/continuation.d.ts +0 -66
- package/dist/goal/continuation.d.ts.map +0 -1
- package/dist/goal/continuation.js +0 -111
- package/dist/goal/continuation.js.map +0 -1
- package/dist/goal/judge.d.ts +0 -113
- package/dist/goal/judge.d.ts.map +0 -1
- package/dist/goal/judge.js +0 -193
- package/dist/goal/judge.js.map +0 -1
- package/dist/goal/loop.d.ts +0 -75
- package/dist/goal/loop.d.ts.map +0 -1
- package/dist/goal/loop.js +0 -132
- package/dist/goal/loop.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine-ops.js","sourceRoot":"","sources":["../../src/validation/engine-ops.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine-ops.js","sourceRoot":"","sources":["../../src/validation/engine-ops.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
-- T12535 (epic T12323) — row uids for the playbook tables (project store).
|
|
2
|
+
--
|
|
3
|
+
-- Adds a nullable `uid` column and a unique index on it to
|
|
4
|
+
-- `tasks_playbook_runs` and `tasks_playbook_approvals`. The runtime now writes
|
|
5
|
+
-- these prefixed twins (the bare `playbook_runs` / `playbook_approvals` are
|
|
6
|
+
-- frozen by the twin collapse, store/twin-collapse.ts), and without a uid
|
|
7
|
+
-- neither had capture triggers, so a playbook run or approval recorded on one
|
|
8
|
+
-- device never reached another (Stage C gate, T13549). Spec:
|
|
9
|
+
-- `cleo docs fetch t12341-uid-scheme`.
|
|
10
|
+
--
|
|
11
|
+
-- The columns are filled by TypeScript at open (store/row-identity.ts), and
|
|
12
|
+
-- rows inserted by this build get theirs from the per-connection TEMP trigger.
|
|
13
|
+
-- Only ADD COLUMN and CREATE INDEX: no table rebuild, no row touched.
|
|
14
|
+
--
|
|
15
|
+
-- @task T12535
|
|
16
|
+
-- @epic T12323
|
|
17
|
+
|
|
18
|
+
ALTER TABLE `tasks_playbook_runs` ADD COLUMN `uid` text;
|
|
19
|
+
--> statement-breakpoint
|
|
20
|
+
ALTER TABLE `tasks_playbook_approvals` ADD COLUMN `uid` text;
|
|
21
|
+
--> statement-breakpoint
|
|
22
|
+
CREATE UNIQUE INDEX IF NOT EXISTS `uq_tasks_playbook_runs_uid` ON `tasks_playbook_runs` (`uid`);
|
|
23
|
+
--> statement-breakpoint
|
|
24
|
+
CREATE UNIQUE INDEX IF NOT EXISTS `uq_tasks_playbook_approvals_uid` ON `tasks_playbook_approvals` (`uid`);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cleocode/core",
|
|
3
|
-
"version": "2026.10.
|
|
3
|
+
"version": "2026.10.19",
|
|
4
4
|
"description": "CLEO core business logic kernel — tasks, sessions, memory, orchestration, lifecycle, with bundled SQLite store",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -501,16 +501,16 @@
|
|
|
501
501
|
"write-file-atomic": "^7.0.1",
|
|
502
502
|
"yaml": "^2.8.3",
|
|
503
503
|
"zod": "^4.3.6",
|
|
504
|
-
"@cleocode/adapters": "2026.10.
|
|
505
|
-
"@cleocode/agents": "2026.10.
|
|
506
|
-
"@cleocode/caamp": "2026.10.
|
|
507
|
-
"@cleocode/contracts": "2026.10.
|
|
508
|
-
"@cleocode/git-shim": "2026.10.
|
|
509
|
-
"@cleocode/lafs": "2026.10.
|
|
510
|
-
"@cleocode/nexus": "2026.10.
|
|
511
|
-
"@cleocode/paths": "2026.10.
|
|
512
|
-
"@cleocode/skills": "2026.10.
|
|
513
|
-
"@cleocode/worktree": "2026.10.
|
|
504
|
+
"@cleocode/adapters": "2026.10.19",
|
|
505
|
+
"@cleocode/agents": "2026.10.19",
|
|
506
|
+
"@cleocode/caamp": "2026.10.19",
|
|
507
|
+
"@cleocode/contracts": "2026.10.19",
|
|
508
|
+
"@cleocode/git-shim": "2026.10.19",
|
|
509
|
+
"@cleocode/lafs": "2026.10.19",
|
|
510
|
+
"@cleocode/nexus": "2026.10.19",
|
|
511
|
+
"@cleocode/paths": "2026.10.19",
|
|
512
|
+
"@cleocode/skills": "2026.10.19",
|
|
513
|
+
"@cleocode/worktree": "2026.10.19"
|
|
514
514
|
},
|
|
515
515
|
"engines": {
|
|
516
516
|
"node": ">=24.16.0"
|
|
@@ -536,7 +536,7 @@
|
|
|
536
536
|
"@types/proper-lockfile": "^4.1.4",
|
|
537
537
|
"@types/tar": "^6.1.13",
|
|
538
538
|
"@types/write-file-atomic": "^4.0.3",
|
|
539
|
-
"@cleocode/utils": "2026.10.
|
|
539
|
+
"@cleocode/utils": "2026.10.19"
|
|
540
540
|
},
|
|
541
541
|
"repository": {
|
|
542
542
|
"type": "git",
|
|
@@ -545,7 +545,7 @@
|
|
|
545
545
|
},
|
|
546
546
|
"optionalDependencies": {
|
|
547
547
|
"llmtxt": "^2026.5.15",
|
|
548
|
-
"@cleocode/studio": "^2026.10.
|
|
548
|
+
"@cleocode/studio": "^2026.10.19"
|
|
549
549
|
},
|
|
550
550
|
"scripts": {
|
|
551
551
|
"build": "tsc && node scripts/copy-selfimprove-fixtures.mjs && node scripts/write-build-provenance.mjs",
|
|
@@ -278,6 +278,11 @@
|
|
|
278
278
|
"items": { "type": "string", "minLength": 1 },
|
|
279
279
|
"description": "Repo-relative paths or globs that never count as part of a change when evidence decides its scope (runtime state, e.g. .opencode/goals/**). CLEO's own installed hook files are always excluded (T13135)."
|
|
280
280
|
},
|
|
281
|
+
"typecheckOnlyDependents": {
|
|
282
|
+
"type": "array",
|
|
283
|
+
"items": { "type": "string", "minLength": 1 },
|
|
284
|
+
"description": "Repo-relative globs of files whose change affects dependents only at the type level: a generated client (lib/api-zod/**), seed or data files (T13783). A package that depends on a change only through changed packages whose every changed path matches owes a typecheck (tool:typecheck or a qa-run typecheck receipt naming it) instead of a test file. Read from the default branch only."
|
|
285
|
+
},
|
|
281
286
|
"runtimePaths": {
|
|
282
287
|
"type": "array",
|
|
283
288
|
"items": { "type": "string", "minLength": 1 },
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# CLEO Protocol — on-demand reference
|
|
2
2
|
|
|
3
|
-
Version: 2.24.
|
|
3
|
+
Version: 2.24.15 | Companion to the always-loaded `CLEO-INJECTION.md` core
|
|
4
4
|
|
|
5
5
|
Not injected into agent context. Print one section with `cleo briefing inject --section <name>`; tier-2 spawn prompts embed this whole file. Section names are the `CLEO-INJECTION:section` markers below.
|
|
6
6
|
|
|
@@ -295,6 +295,41 @@ CLEO_OWNER_OVERRIDE=1 \ CLEO_OWNER_OVERRIDE_REASON="incident 1234 hotfix" \ cleo
|
|
|
295
295
|
|
|
296
296
|
All overrides append a line to `.cleo/audit/force-bypass.jsonl`. Use sparingly.
|
|
297
297
|
|
|
298
|
+
**Owner only (owner decision 2026-10-16, T13790).** The override has no password prompt; CLEO honours it only from the owner. It is refused with `E_OVERRIDE_NOT_OWNER` (or `E_OVERRIDE_FORBIDDEN_AGENT_ROLE`), and every refusal is audited. The owner is the caller for whom all three hold:
|
|
299
|
+
1. The process does not run as `worker`, `lead` or `subagent` (`CLEO_AGENT_ROLE`, as at bootstrap).
|
|
300
|
+
2. The bound session is owner-marked: you started it yourself with `cleo session start --scope global --name owner --owner`.
|
|
301
|
+
- The mark is password-free.
|
|
302
|
+
- `--owner` is refused without an interactive terminal, or when any `CLEO_AGENT_ROLE` is set.
|
|
303
|
+
- No env var sets the mark, so a parent cannot hand it down. An agent with no `CLEO_AGENT_ROLE` therefore has no mark, and is fenced like a worker.
|
|
304
|
+
- `--owner-auth` and its password are only for the cap below; they do not mark a session.
|
|
305
|
+
3. The call runs on your own terminal (stdin and stderr are a TTY).
|
|
306
|
+
|
|
307
|
+
An agent spawned from your owner session binds to that same session, but its tool shell has no terminal, so it is not the owner by default.
|
|
308
|
+
|
|
309
|
+
These are same-OS-user checks. A process that emulates a terminal (`script`, `expect`) can mark a session and pass the TTY check. A process that writes the session row directly is not stopped either. The owner accepted that trade-off for a password-free switch.
|
|
310
|
+
|
|
311
|
+
**Per-session cap (owner decision 2026-10-16, T13787).** A session may use at most `evidence.overrideCapPerSession` overrides (default 10, maximum 100). Past the cap, `E_OVERRIDE_CAP_EXCEEDED` names the setting. The old `CLEO_OWNER_OVERRIDE_WAIVER` file no longer lifts the cap: any agent could write one, so a set waiver is ignored and audited.
|
|
312
|
+
|
|
313
|
+
Only the owner changes the cap. Both commands below require the T1118 owner-auth checks, run yourself in an interactive terminal, in a session started with `cleo session start --scope global --name owner --owner-auth`: no restricted agent role, a TTY, and the password matching the session's owner-auth verifier. That verifier is a slow scrypt record. A session started before T13787, which holds a bare HMAC, must start a new `--owner-auth` session. The first `cleo session start` on this build clears those old tokens, and `cleo doctor` warns while any remain.
|
|
314
|
+
1. **Enroll once, explicitly:** `cleo config owner-enroll`. It derives a key from your password and anchors it twice: in `.cleo/owner-settings.json` and in the global store (`owner-enrollments.json` under the CLEO home). The project file is tracked in git like `.cleo/project.json`, so commit it. A set never enrolls. Re-enrolling needs `cleo config owner-enroll --reset`. While the global record is intact, `--reset` needs the current owner's password, even if the project file is gone, because the global record keeps the key's salt.
|
|
315
|
+
|
|
316
|
+
A password-free reset needs **both** anchors deliberately removed, including the global record outside the repo. That is also the only route after a lost password. A reset like that, or a plain enroll while git still holds a committed enrollment, is recorded as unproven (`resetFrom`). `cleo doctor` then **fails**, and the cap stays at 10, until you run `cleo config owner-enroll --confirm` with the current password. Any copy in git history counts, even one a later commit deleted or one left only in the reflog. A shallow clone, or git failing inside the work tree, cannot prove there was none, so the enrollment is unconfirmed too (`history-unavailable`). An agent that did the reset could confirm it too, so this is visibility, not prevention.
|
|
317
|
+
|
|
318
|
+
Every reset is audited loudly and drops earlier values.
|
|
319
|
+
2. **Set:** `cleo config set evidence.overrideCapPerSession <n>`. The value is sealed with your key and never written to `config.json`.
|
|
320
|
+
|
|
321
|
+
The cap falls back to 10, with a warning and an audit line, whenever owner state looks tampered:
|
|
322
|
+
- `.cleo/owner-settings.json` is missing or unreadable while the global store has an enrollment;
|
|
323
|
+
- the file names a key the global store never enrolled, or a different one;
|
|
324
|
+
- a value's seal does not verify.
|
|
325
|
+
|
|
326
|
+
`cleo doctor` reports the enrollment (key fingerprint, when, which session, which terminal and parent process), or why it is ignored. It warns when any of these holds:
|
|
327
|
+
- the enrollment or reset is less than 7 days old;
|
|
328
|
+
- the enrolling parent was a terminal-faking wrapper (`script`, `expect`);
|
|
329
|
+
- `.cleo/owner-settings.json` is git-ignored, untracked or uncommitted. Every enrollment, set and refused attempt goes to `force-bypass.jsonl` with old and new values.
|
|
330
|
+
|
|
331
|
+
Threat model: against an agent running as the same OS user, tampering is **detectable, not preventable**. Such an agent can rewrite any local file, and a pty (`script`) passes the TTY check. So an agent could enroll first in a project nobody has enrolled. That is why enrollment is explicit, git-tracked and shown by `cleo doctor`. Check the fingerprint, and `--reset` it yourself if you did not enroll it. Who may use `CLEO_OWNER_OVERRIDE` at all is the owner-only rule above (T13790).
|
|
332
|
+
|
|
298
333
|
### Tool resolution + result cache (ADR-061)
|
|
299
334
|
|
|
300
335
|
`tool:<name>` resolves through `.cleo/project-context.json`, then the project's `package.json` script of that name (`<pm> run <name>`), then `primaryType` fallbacks (references-only tsconfig → `tsc -b`, which emits). A script that writes files (an auto-fixing `lint`) edits the checkout and later fails `E_EVIDENCE_STALE`; keep verification scripts read-only. Cache `.cleo/cache/evidence/<key>.json`, keyed on the command `(canonical, cmd, args)` and the tree content under test: identical tree content shares one result across worktrees and commits, and a repeat verify on an unchanged tree never re-runs. After a failure the previously failing test files re-run first, and a failure that passes on its single rerun is recorded as `flaky`. Parallel verifies coalesce; cross-worktree semaphores: `~/.local/share/cleo/locks/tool-<canonical>/`, limit `CLEO_TOOL_CONCURRENCY_<TOOL>=<n>`. Deadlines: **1800000 ms (30 min) for `test` and `build`**, otherwise 300000 ms (5 min). Positive-integer override: `CLEO_TOOL_TIMEOUT_<TOOL>=<ms>`; invalid values explicitly fail with the tool default. Timeouts cache nothing; increase the deadline before an unchanged retry (gh#1221). `cleo verify --fresh` (or `CLEO_EVIDENCE_FRESH=1`) bypasses the cache for one call.
|
|
@@ -314,4 +349,10 @@ A task PR merged into an integration branch is a component: `pr:<component>@<int
|
|
|
314
349
|
With `evidence.ciSatisfies: true`, `ci:<number>` attests `testsPassed`/`qaPassed` from the required checks (`evidence.ciChecks`) green on the merged PR's merge commit, or on a final PR head whose tree equals it. When a concurrency group CANCELLED (or skipped) the merge commit's own push run, a later default-branch commit's green `push` run may stand in (T12742). That run proves the DESCENDANT's tree, not the merge tree, so it counts only when all of these hold: no merge-commit run or job failed; the PR's final head has a green latest `pull_request` run for every stood-in check; the commit descends from the merge commit and is one of the first 10 first-parent commits within 7 days; NO commit between them, merge commits included, touched the PR's changed files, a pinned workflow file or `.github/actions`; and it is the first candidate with a decisive verdict. A red first decisive candidate refuses, and a pending one refuses with "wait for <sha>"; only cancelled, skipped or never-started runs move on. The atom records `descendantSha`, `descendantRange` and `descendantPrHeadSha`, and `cleo complete` re-fetches both runs' latest attempts, because a re-run can turn a completed check red. A PR that edits a pinned workflow file is attested by default-branch `push` runs only (T13174): its own `pull_request` runs executed the edited workflow and are never consulted, so the PR-head conditions drop and the atom records `mainOnly`. Until main's push run on the merge commit (or a stand-in under the rule above) finishes, `ci:<pr>` refuses with a wait message; a whole-suite local run is never the fallback. Such an edit is attested by the workflow it introduces, so review the workflow edit itself: a hollowed job (a step that runs nothing) would attest itself green, and the job globs only catch a removed or renamed job. A required job skipped by its change filter counts only through `evidence.ciChecks.covering` (T13175): rules such as `{ "paths": ["scripts/**"], "jobs": ["Scripts Tests"] }` declare which jobs cover which paths, and the skip is accepted when every changed path matches a rule whose jobs ran and succeeded. A cancelled, failed, pending or missing required job never counts as a skip.
|
|
315
350
|
|
|
316
351
|
Required checks: explicit configuration or target repository protection. `release.prRequiredWorkflows: []` requires no checks; it proves neither testing nor review. `.cleo/cache/evidence/pr-<num>.json` retains provenance and changed files; obsolete versions reject. Use `tool:test-affected` when `testing.affectedCommand` is configured (a full `tool:test` then only for root-config changes, which affected planning refuses), otherwise a targeted `test-run:<json>` or `tool:test`, plus appropriate QA tools, linking each result to verified criteria.
|
|
352
|
+
|
|
353
|
+
### CLEO config and generated clients in targeted test evidence (T13778 · T13783)
|
|
354
|
+
|
|
355
|
+
A change to CLEO's own config (`.cleo/project-context.json`, `.cleo/config.json`) never makes a change workspace-wide. `tool:config-schema` validates those files against CLEO's schema, and a targeted run covers the rest, composed in one write: `--evidence "test-run:<report>;tool:config-schema"` (or `qa-run:` receipts for `qaPassed`). Neither stands alone. A test-run that left config to config-schema needs it, and a config-schema result on a change with other paths needs another result for them, so a config edit never hides an untested source change. For an already-merged change, name the task's own merge: `commit:<sha>;tool:config-schema` (a commit recorded on its `implemented` gate) or `pr:<n>;tool:config-schema`; any other commit is refused, and after the merge config-schema never carries the change's code files. When a change edits `.cleo/project-context.json`, evidence reads its test, lint and typecheck commands from the default branch's copy, so a change cannot relax its own checks. Untracked files under `.cleo/rcasd/` and `.claude/`, or matched by the default branch's `evidence.scopeExcludes`, are session state and not part of the change; every other untracked file counts.
|
|
356
|
+
|
|
357
|
+
Generated clients and seed data (owner decision, T13783): `evidence.typecheckOnlyDependents` lists repo globs, read from the default branch only and never guessed from names (a generated client: `lib/api-zod/**`; seed or data files: `lib/db/src/seed-data/**`, T13786; a catch-all glob such as `**` is ignored with a warning). A changed package whose every changed path matches is typecheck-only (test files edited beside the data are left out of that judgement and must be run), and a package that depends on the change ONLY through typecheck-only packages owes a typecheck instead of a test file: a whole-project `tool:typecheck`, or a qa-run typecheck receipt whose roots hold it, in the same `testsPassed` write. The trust boundary: the typecheck proves the dependent still compiles against the regenerated code, not that its behaviour is unchanged. A dependent whose own source changed, or that also depends on another changed package, still owes tests, and the run must pass every changed package's tests and every edited test file. A typecheck or lint `tool:` result is never a test run: it neither carries `testsPassed` alone nor exempts scoped evidence from post-merge supersession.
|
|
317
358
|
<!-- /CLEO-INJECTION:section=evidence -->
|
package/templates/cleo-gitignore
CHANGED
|
@@ -48,6 +48,9 @@
|
|
|
48
48
|
# T12716: project.json is the canonical {id, name}; project-id its legacy mirror.
|
|
49
49
|
!project.json
|
|
50
50
|
!project-id
|
|
51
|
+
# T13787: the owner override enrollment and sealed cap. Tracked so a delete or
|
|
52
|
+
# forge of the owner key shows in `git status` and PR diffs.
|
|
53
|
+
!owner-settings.json
|
|
51
54
|
!setup-otel.sh
|
|
52
55
|
!DATA-SAFETY-IMPLEMENTATION-SUMMARY.md
|
|
53
56
|
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
],
|
|
16
16
|
"pre-push": [
|
|
17
17
|
"8a48d9672f27ae1ea9ebc40d7181ab737a1889e32b451594ba30ac7c2558c07c",
|
|
18
|
+
"cebf759fcf168e4eff5669035cc34eced2f828540647d7138bef8343bd5547bc",
|
|
18
19
|
"d4cfb6d3b19f3bed129f682fd7f5571b60c0f67433e5219e94c02dbb72007030",
|
|
19
20
|
"eb78947e1aba2bd4e4d5aa010093aa5a927fde0acda7f7d704d41cd4851a3cfb",
|
|
20
21
|
"f6e39d6fb79fed8c6e0bca0edb43fb9421e6a0cae52b0fe1163a8839caf50389",
|
|
@@ -110,20 +110,48 @@ EOF
|
|
|
110
110
|
fi
|
|
111
111
|
|
|
112
112
|
# Existing projects remain unchanged: the shared runner skips disabled hooks.
|
|
113
|
+
# T13774: an ungated push names its reason on one line, and says when this
|
|
114
|
+
# checkout has project hooks activated, so a stale cleo on PATH is never silent.
|
|
115
|
+
ungated() {
|
|
116
|
+
active=""
|
|
117
|
+
for dir in "$(git rev-parse --git-path cleo-project-hooks 2>/dev/null)" \
|
|
118
|
+
"$(git rev-parse --git-common-dir 2>/dev/null)/cleo-project-hooks"; do
|
|
119
|
+
if grep -q '"enabled":true' "$dir/activation.json" 2>/dev/null; then
|
|
120
|
+
active=" Project hooks are ACTIVATED in this checkout but did not run."
|
|
121
|
+
fi
|
|
122
|
+
done
|
|
123
|
+
printf 'cleo pre-push: WARNING: push NOT gated by project hooks: %s.%s Run cleo doctor hooks.\n' "$1" "$active" >&2
|
|
124
|
+
}
|
|
113
125
|
if command -v cleo >/dev/null 2>&1; then
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
126
|
+
where=$(command -v cleo)
|
|
127
|
+
version=$(cleo --version 2>/dev/null | sed -n 's/.*"version":"\([^"]*\)".*/\1/p' | head -n 1)
|
|
128
|
+
capability=$(cleo hook run --probe -- execution < /dev/null 2>/dev/null) || capability=""
|
|
129
|
+
case "$capability" in
|
|
130
|
+
CLEO_PROJECT_HOOK_EXEC) ;;
|
|
131
|
+
CLEO_PROJECT_HOOK_INERT)
|
|
132
|
+
ungated "cleo ${version:-?} at $where runs no project hooks (hooks-v1 is not released in that build)"
|
|
133
|
+
exit 0
|
|
134
|
+
;;
|
|
135
|
+
CLEO_PROJECT_HOOK_V1)
|
|
136
|
+
# A build before T13774: stable releases before 2026.10.17 carry the runner but keep it inert.
|
|
137
|
+
if printf '%s\n' "$version" | awk -F. '!/-canary\./ && NF >= 3 { exit !($1 * 100000 + $2 * 1000 + $3 < 202610017) } { exit 1 }'; then
|
|
138
|
+
ungated "cleo $version at $where predates hooks-v1 and runs no project hooks"
|
|
139
|
+
exit 0
|
|
140
|
+
fi
|
|
141
|
+
;;
|
|
142
|
+
*)
|
|
143
|
+
ungated "cleo ${version:-?} at $where has no project hook runner"
|
|
144
|
+
exit 0
|
|
145
|
+
;;
|
|
146
|
+
esac
|
|
119
147
|
status=0
|
|
120
148
|
cleo hook run --source git --event pre-push -- "$@" < "$REF_INPUT" || status=$?
|
|
121
149
|
case "$status" in
|
|
122
150
|
0) ;;
|
|
123
151
|
1) exit 1 ;; # An explicit project verdict/checker policy blocks.
|
|
124
|
-
*)
|
|
152
|
+
*) ungated "the project hook runner failed (exit $status)" ;;
|
|
125
153
|
esac
|
|
126
154
|
else
|
|
127
|
-
|
|
155
|
+
ungated "cleo is not on PATH"
|
|
128
156
|
fi
|
|
129
157
|
exit 0
|
|
@@ -56,7 +56,7 @@ on:
|
|
|
56
56
|
- rc
|
|
57
57
|
- canary
|
|
58
58
|
skip-tests:
|
|
59
|
-
description: 'Skip the Linux test shards in Preflight (use when main CI is already green for this commit — `cleo release open` sets it after checking). Lint, typecheck and build still run.'
|
|
59
|
+
description: 'Skip the Linux test shards in Preflight (use when main CI is already green for this commit — `cleo release open` sets it after checking). Honoured only with a reused-ci-run that re-verifies here. Lint, typecheck and build still run.'
|
|
60
60
|
type: boolean
|
|
61
61
|
required: false
|
|
62
62
|
default: false
|
|
@@ -73,6 +73,10 @@ on:
|
|
|
73
73
|
description: 'Why the caller skipped test suites; recorded in the run summary.'
|
|
74
74
|
type: string
|
|
75
75
|
required: false
|
|
76
|
+
reused-ci-run:
|
|
77
|
+
description: 'T13823: id of the ci.yml push run on the default branch whose green Linux Unit Tests shards skip-tests reuses. Re-verified here (push to the default branch, success, every Linux shard green, for this commit or one it differs from only by release-plan files); on any doubt the shards run. Recorded in the run summary and the bump-PR body.'
|
|
78
|
+
type: string
|
|
79
|
+
required: false
|
|
76
80
|
|
|
77
81
|
# R-202: contents:write (commit + branch), pull-requests:write (gh pr create),
|
|
78
82
|
# id-token:write (signed tags only). MUST NOT request packages:write — npm
|
|
@@ -130,6 +134,7 @@ jobs:
|
|
|
130
134
|
outputs:
|
|
131
135
|
run-linux-tests: ${{ steps.tests.outputs.linux }}
|
|
132
136
|
run-macos-tests: ${{ steps.tests.outputs.macos }}
|
|
137
|
+
reused-ci-run-url: ${{ steps.tests.outputs.reused_url }}
|
|
133
138
|
steps:
|
|
134
139
|
- uses: actions/checkout@v4
|
|
135
140
|
# The ONE place that decides which preflight test suites run, so the
|
|
@@ -137,6 +142,14 @@ jobs:
|
|
|
137
142
|
# only for the commit it was verified against: `cleo release open`
|
|
138
143
|
# checks CI for main's HEAD, and if main moves between that check and
|
|
139
144
|
# this checkout, the green result belongs to a different tree.
|
|
145
|
+
#
|
|
146
|
+
# T13823: a Linux skip must also name the ci.yml push run it reuses
|
|
147
|
+
# (`reused-ci-run`), and that run is re-read here from the GitHub API
|
|
148
|
+
# rather than taken on the caller's word: a ci.yml run, a push to the
|
|
149
|
+
# default branch, concluded success, every Linux `Unit Tests` shard 1..N
|
|
150
|
+
# green, for this exact commit or for one this commit differs from only
|
|
151
|
+
# by release-plan files (the plan, CHANGELOG.md, `.changeset/`; T13140).
|
|
152
|
+
# Anything else, or an API error, runs the shards.
|
|
140
153
|
- name: Decide which preflight test suites run
|
|
141
154
|
id: tests
|
|
142
155
|
env:
|
|
@@ -144,11 +157,54 @@ jobs:
|
|
|
144
157
|
SKIP_MACOS_TESTS: ${{ inputs.skip-macos-tests }}
|
|
145
158
|
VERIFIED_SHA: ${{ inputs.verified-sha }}
|
|
146
159
|
SKIP_REASON: ${{ inputs.skip-reason }}
|
|
160
|
+
REUSED_RUN: ${{ inputs.reused-ci-run }}
|
|
147
161
|
HEAD_SHA: ${{ github.sha }}
|
|
162
|
+
REPO: ${{ github.repository }}
|
|
163
|
+
DEFAULT_BRANCH: ${{ github.event.repository.default_branch }}
|
|
164
|
+
GH_TOKEN: ${{ github.token }}
|
|
148
165
|
run: |
|
|
166
|
+
# Prints the reused run's URL when it proves this commit's Linux
|
|
167
|
+
# shards; otherwise prints why not and returns 1.
|
|
168
|
+
verify_reused_run() {
|
|
169
|
+
local run="$1" dir run_sha
|
|
170
|
+
if ! [[ "$run" =~ ^[0-9]+$ ]]; then echo "reused-ci-run '$run' is not a run id"; return 1; fi
|
|
171
|
+
dir=$(mktemp -d)
|
|
172
|
+
if ! gh api "repos/$REPO/actions/runs/$run" > "$dir/run.json" 2>/dev/null; then echo "run $run could not be read"; return 1; fi
|
|
173
|
+
if ! gh api --paginate "repos/$REPO/actions/runs/$run/jobs?per_page=100" --jq '.jobs[] | [.name, (.conclusion // "none")] | @tsv' > "$dir/jobs.tsv" 2>/dev/null; then echo "the jobs of run $run could not be read"; return 1; fi
|
|
174
|
+
run_sha=$(node -p 'JSON.parse(require("fs").readFileSync(process.argv[1], "utf8")).head_sha' "$dir/run.json")
|
|
175
|
+
echo '{}' > "$dir/compare.json"
|
|
176
|
+
if [ "$run_sha" != "$HEAD_SHA" ] && ! gh api "repos/$REPO/compare/$run_sha...$HEAD_SHA" > "$dir/compare.json" 2>/dev/null; then echo "run $run tested $run_sha, and its compare to $HEAD_SHA failed"; return 1; fi
|
|
177
|
+
node -e '
|
|
178
|
+
const fs = require("fs");
|
|
179
|
+
const [dir, head, branch] = process.argv.slice(1);
|
|
180
|
+
const run = JSON.parse(fs.readFileSync(dir + "/run.json", "utf8"));
|
|
181
|
+
const cmp = JSON.parse(fs.readFileSync(dir + "/compare.json", "utf8"));
|
|
182
|
+
const no = (why) => { console.log("run " + run.id + " " + why); process.exit(1); };
|
|
183
|
+
if (run.path !== ".github/workflows/ci.yml") no("is not a .github/workflows/ci.yml run (" + run.path + ")");
|
|
184
|
+
if (run.event !== "push" || run.head_branch !== branch) no("is a " + run.event + " run on " + run.head_branch + ", not a push to " + branch);
|
|
185
|
+
if (run.status !== "completed" || run.conclusion !== "success") no("is " + run.status + "/" + run.conclusion);
|
|
186
|
+
if (run.head_sha !== head) {
|
|
187
|
+
// Whole-path allowlist, the same as isReleasePlanPath in core (T13825).
|
|
188
|
+
const plan = (f) => [/^\.cleo\/release\/[^/]+\.plan\.json$/, /^\.changeset\/(?:[^/]+\/)*[^/]+\.md$/, /^(?:[^/]+\/)*CHANGELOG\.md$/].some((re) => re.test(f));
|
|
189
|
+
const files = (cmp.files || []).flatMap((f) => [f.filename, f.previous_filename].filter(Boolean));
|
|
190
|
+
if (cmp.status !== "ahead" || files.length === 0 || files.length >= 300 || !files.every(plan))
|
|
191
|
+
no("tested " + run.head_sha + ", and " + head + " is not that commit plus release-plan files only");
|
|
192
|
+
}
|
|
193
|
+
const jobs = fs.readFileSync(dir + "/jobs.tsv", "utf8").split("\n").filter(Boolean).map((l) => l.split("\t"));
|
|
194
|
+
const linux = jobs.filter(([n]) => /^Unit Tests\b/.test(n) && !/mac\s*os/i.test(n));
|
|
195
|
+
if (linux.length === 0) no("ran no Linux Unit Tests jobs");
|
|
196
|
+
const red = linux.filter(([, c]) => c !== "success");
|
|
197
|
+
if (red.length > 0) no("has " + red.length + " Linux Unit Tests job(s) that did not succeed");
|
|
198
|
+
const shards = new Set(linux.map(([n]) => Number((/shard\s+(\d+)/i.exec(n) || [])[1])));
|
|
199
|
+
if (shards.has(NaN)) no("has a Linux Unit Tests job that names no shard");
|
|
200
|
+
for (let n = 1; n <= Math.max(...shards); n++) if (!shards.has(n)) no("is missing Linux Unit Tests shard " + n);
|
|
201
|
+
console.log(run.html_url);
|
|
202
|
+
' "$dir" "$HEAD_SHA" "$DEFAULT_BRANCH"
|
|
203
|
+
}
|
|
149
204
|
linux=true
|
|
150
205
|
macos=true
|
|
151
206
|
note=""
|
|
207
|
+
reused_url=""
|
|
152
208
|
skip_requested=false
|
|
153
209
|
if [ "$SKIP_TESTS" = "true" ] || [ "$SKIP_MACOS_TESTS" = "true" ]; then skip_requested=true; fi
|
|
154
210
|
if [ "$skip_requested" = "true" ] && [ -z "$VERIFIED_SHA" ]; then
|
|
@@ -159,11 +215,21 @@ jobs:
|
|
|
159
215
|
elif [ -n "$VERIFIED_SHA" ] && [ "$VERIFIED_SHA" != "$HEAD_SHA" ]; then
|
|
160
216
|
note="Skips were verified against $VERIFIED_SHA, but this run checked out $HEAD_SHA (main moved after the check). Ignoring them: every suite runs."
|
|
161
217
|
else
|
|
162
|
-
if [ "$SKIP_TESTS" = "true" ]; then
|
|
218
|
+
if [ "$SKIP_TESTS" = "true" ]; then
|
|
219
|
+
if [ -z "$REUSED_RUN" ]; then
|
|
220
|
+
note="skip-tests was requested without reused-ci-run, so there is no main CI run to verify. Ignoring it: the Linux shards run."
|
|
221
|
+
elif verdict=$(verify_reused_run "$REUSED_RUN"); then
|
|
222
|
+
linux=false
|
|
223
|
+
reused_url="$verdict"
|
|
224
|
+
else
|
|
225
|
+
note="skip-tests was requested, but reused-ci-run does not prove this commit's Linux shards: $verdict. Ignoring it: the Linux shards run."
|
|
226
|
+
fi
|
|
227
|
+
fi
|
|
163
228
|
if [ "$SKIP_MACOS_TESTS" = "true" ]; then macos=false; fi
|
|
164
229
|
fi
|
|
165
230
|
echo "linux=$linux" >> "$GITHUB_OUTPUT"
|
|
166
231
|
echo "macos=$macos" >> "$GITHUB_OUTPUT"
|
|
232
|
+
echo "reused_url=$reused_url" >> "$GITHUB_OUTPUT"
|
|
167
233
|
describe() { if [ "$1" = "true" ]; then echo "runs"; else echo "skipped"; fi; }
|
|
168
234
|
{
|
|
169
235
|
echo "## Preflight test decision"
|
|
@@ -175,6 +241,7 @@ jobs:
|
|
|
175
241
|
echo ""
|
|
176
242
|
echo "Commit: \`$HEAD_SHA\`"
|
|
177
243
|
if [ -n "$VERIFIED_SHA" ]; then echo "Skips verified against: \`$VERIFIED_SHA\`"; fi
|
|
244
|
+
if [ -n "$reused_url" ]; then echo "Linux shards reused from main CI run: $reused_url"; fi
|
|
178
245
|
if [ -n "$SKIP_REASON" ]; then echo ""; echo "Reason: $SKIP_REASON"; fi
|
|
179
246
|
if [ -n "$note" ]; then echo ""; echo "**$note**"; fi
|
|
180
247
|
} >> "$GITHUB_STEP_SUMMARY"
|
|
@@ -674,18 +741,29 @@ jobs:
|
|
|
674
741
|
# with a raw schema envelope as its description. The plan already carries
|
|
675
742
|
# the rendered notes at `meta.releaseNotes` (the same text that lands in
|
|
676
743
|
# CHANGELOG.md) — use that, and fall back to the JSON only if absent.
|
|
744
|
+
# T13823: the body ends with the preflight evidence, naming the main CI
|
|
745
|
+
# run whose Linux shards were reused when they were skipped.
|
|
677
746
|
- name: Render PR body
|
|
678
747
|
id: body
|
|
748
|
+
env:
|
|
749
|
+
REUSED_URL: ${{ needs.dispatch-preconditions.outputs.reused-ci-run-url }}
|
|
750
|
+
RUN_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
|
679
751
|
run: |
|
|
680
752
|
node -e '
|
|
681
753
|
const fs = require("node:fs");
|
|
682
754
|
const plan = JSON.parse(fs.readFileSync(process.argv[1], "utf8"));
|
|
683
755
|
const notes = plan?.meta?.releaseNotes;
|
|
756
|
+
const reused = process.env.REUSED_URL;
|
|
757
|
+
const evidence =
|
|
758
|
+
"\n\n## Preflight evidence\n\n" +
|
|
759
|
+
(reused
|
|
760
|
+
? "Linux test shards reused from main CI run " + reused + " (re-verified by " + process.env.RUN_URL + ").\n"
|
|
761
|
+
: "Linux test shards ran in " + process.env.RUN_URL + ".\n");
|
|
684
762
|
fs.writeFileSync(
|
|
685
763
|
"/tmp/bump-pr-body.md",
|
|
686
|
-
typeof notes === "string" && notes.trim().length > 0
|
|
764
|
+
(typeof notes === "string" && notes.trim().length > 0
|
|
687
765
|
? notes
|
|
688
|
-
: "```json\n" + JSON.stringify(plan, null, 2) + "\n```\n",
|
|
766
|
+
: "```json\n" + JSON.stringify(plan, null, 2) + "\n```\n") + evidence,
|
|
689
767
|
);
|
|
690
768
|
' "${{ steps.plan.outputs.plan_file }}"
|
|
691
769
|
timeout-minutes: 2
|