Repository navigation
chore(ce): enrol ci-wall-clock and repin the compound packs to de684e25 - #23
Merged
Merged
Conversation
CE planning and review in this repository now load the ci-wall-clock pack. The pin moves from systemfsoftware 02bf9653 to that repository's main at de684e25d6d06e6686e06827b24235a3fd73bdf4, which includes 31afc65e1f. The five packs already enrolled stay enrolled. turbo-task-graph, ui-state and storybook-testing are not enrolled: there is no root turbo.json, no .tsx file and no story here. CE's packs-resolve.py returns six roots (56 rule files) with no warnings and no errors.
ryanleecode
approved these changes
Oct 13, 2026
ryanleecode
left a comment
Contributor
There was a problem hiding this comment.
Root verdict at bca291d: one-file repin to full SHA de684e25d6 enrolling ci-wall-clock, resolver 6 roots 0 warnings, 5/5 green, 0 behind, 0 threads, DeepSeek review, F3 recorded as a measured exception with owner and trigger, privacy clean.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CE planning and review in gritlint now load the
ci-wall-clockcompound pack, and the pack pin moves to systemfsoftwaremain. This is gritlint's ci-wall-clock enrolment PR: until it merges, gritlint reviews read ci-wall-clock by hand from a systemfsoftware commit (PR #20 used763fd663).What changes
One file,
.compound-engineering/config.yaml:ref:moves from02bf9653b1ca2b0a2951baf2743bb3f70d19fc77tode684e25d6d06e6686e06827b24235a3fd73bdf4, the tip of systemfsoftwaremainon 2026-10-13. Its parent is31afc65e1ff3e00887985f52caf77a746fc45544, and the compare API puts it 1 ahead of31afc65e1fand 9 ahead of the old pin, 0 behind either.pack:gainsci-wall-clock. The five packs already enrolled stay.turbo-task-graph,ui-stateandstorybook-testingexist at the pin but are not enrolled: gritlint has no rootturbo.json, no.tsxfile and no story.CE's
packs-resolve.py, run in this branch, returns six roots withwarnings: []anderrors: [](exit 0), and--declared-onlyreturnsdeclared: true, errors: [].What the new pin changes in the packs already enrolled
The pin also changes the rules the five kept packs grade with. Rule files at each pin (
git diff --name-status 02bf9653 de684e25 -- compound-packs/<pack>, README edits left out):02bf9653de684e25expected-values-never-come-from-the-subjects-outputno-mocks-on-internal-glue,port-fakes-pass-the-port-contract,real-system-oraclesservice-and-layer-boundarieskill-survivors-with-contract-properties,unkillable-survivors-are-dead-coderefusal-properties-cover-unobservable-boundarieslaw-failure-is-a-codec-defect,refusals-beside-generated-lawscross-field-invariants-as-struct-checks,invariants-as-refinements,recursive-schema-suspend,rich-type-over-foreign-encoded,tests-own-no-schemasThe two schema-laws removals are upstream decisions at the pin, and this PR accepts them as part of the repin.
CI wall clock
Target: every pull-request job finishes within 10 minutes (
ci-wall-clock/pr-gate-runs-only-what-the-diff-affects; R27 of gritlint's plandocs/plans/2026-10-12-2059-feat-gritlint-standalone-plan.md).This PR's own run, 38456326800, is within it: x86_64 took 2m28s and aarch64 1m55s. The x86_64 job restored
main's bundlenix-store-x86_64-linux-88683b6d…as an exact hit, and its build step took 9 s.Measured exception (F3): a pull request that changes the workspace version or
Cargo.locktakes about 12 minutes on x86_64. The version PR #22 (run 38450576392) restored the samemainbundle (88683b6d…) and still took 12m01s:The cause is structural, not a cold cache. Both runs started from the same restored bundle, and #22 changes only workspace versions (
0.2.0→0.3.0inCargo.toml,Cargo.lockandnpm/gritlint/package.json). crane's dependency derivations carry that version, so #22 planned 30 builds, includinggritlint-deps-0.3.0(three of them) andgritlint-linux-x64-deps-0.3.0andgritlint-linux-arm64-deps-…-0.3.0. The longest of the threegritlint-deps-0.3.0builds loggedbuildPhase completed in 4 minutes 48 seconds, and the builds that wait on them filled the rest of the 9m32s. The push of #20's merge tomain(run 38447766893, 13m01s) is the same case: #20 added the LSP crates toCargo.lock, so it rebuiltgritlint-deps-0.2.0from an older bundle.Review receipt
ce-code-reviewfull path (depth: full, base187c25c1, headbca291de), run20261013-193127-fb7955e8. Reviewers: correctness; project-standards againstrepos/constitution/CONSTITUTION.mdatde684e25(byte-identical to the copy at02bf9653); learnings over all six pack roots anddocs/solutions/; and the cross-model adversarial pass. Testing, maintainability, reliability, security, performance and api-contract were not selected because the diff changes no runtime behaviour. Verdict: Ready to merge. 0 P0/P1/P2, 2 P3 advisories, validator batch empty (nothing selected).Cross-model pass:
adversarial-reviewer, served bydeepseek/deepseek-v4.1-flash(29 turns, 1m41s). The host family is Claude, so this is a different model family. No CE worker receipt exists, soindependence_verifiedstays false and its findings promote nothing. The three local reviewers were also served bydeepseek/deepseek-v4.1-flash. No Grok or xai model served any reviewer. All four returned, and none timed out.Every finding and reviewer note, ruled
Cargo.lock(+66 lines).maincommitsrefmust be a SHA or tag), and a later repin is a deliberate PR like this one.31afc65e1fnot provable in a shallow clonede684e25's commit object names31afc65e1fas its parent, and the compare API reportsahead 1, behind 0.packs-resolve.pyin this branch (6 roots, no warnings or errors), and the adversarial reviewer reproduced it.sha256(url + "\n" + ref), so a new ref clones fresh.ci-wall-clock/mutation-runs-nightly-on-mainnames a lane on every push tomain; gritlint'smutants.ymlruns onpush: [main]applies_whencovers changes to a mutation workflow's triggers). Owner: the queued Mutants-nightly change. Trigger: after this PR merges.Constitution treatment (16 laws, CONSTITUTION.md at
de684e25).compound-engineering/config.yaml:3ref: de684e25d6d06e6686e06827b24235a3fd73bdf4.compound-engineering/config.yaml:2- source: https://github.com/systemfsoftware/systemfsoftware.compound-engineering/config.yaml:1packs:.compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:3ref: de684e25d6d06e6686e06827b24235a3fd73bdf4.compound-engineering/config.yaml:3ref: de684e25d6d06e6686e06827b24235a3fd73bdf4.compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:1packs:.compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws].compound-engineering/config.yaml:1packs:.compound-engineering/config.yaml:2- source: https://github.com/systemfsoftware/systemfsoftware.compound-engineering/config.yaml:5pack: [boundary-testing, cell-architecture, ci-wall-clock, mutation-discipline, package-topology, schema-laws]Pack rules (56 rule files in the six roots; none applies to a one-file CE config change)
Every row's evidence is the two changed lines,
.compound-engineering/config.yaml:3(ref:) and:5(pack:). Each verdict comes from the rule'sapplies_whenmatched to the diff by meaning.expected-values-never-come-from-the-subjects-output.mdfake-and-real-store-laws.mdno-mocks-on-internal-glue.mdpin-dependency-semantics.mdport-fakes-pass-the-port-contract.mdreal-system-oracles.mdstaged-protocol-evidence.mdcallable-vs-resource-syntax.mddecode-never-cast.mdfour-channel-contracts.mdhandle-state-privacy.mdpipeable-dual-parity.mdpipeline-composition.mdpure-decision-workflows.mdresource-vs-handle-duality.mdsandwich-phase-order.mdscoped-lifecycle-boundaries.mdservice-and-layer-boundaries.mdsingle-namespace-barrel.mdstaged-lawful-builders.mdstore-serializable-unit-of-work.mdstore-unit-of-work-handle.mdfailures-name-the-gate-and-location.mdflake-outputs-build-once-on-main.mdgates-share-one-job.mdheavy-lanes-state-their-daily-minutes.mdheavy-suites-judge-every-main-commit.mdlight-checks-run-the-pinned-tool.mdlocal-gate-equals-pr-gate.mdmutation-runs-nightly-on-main.mdno-dev-shell-on-verdict-lanes.mdno-lane-grades-the-repos-own-docs.mdone-stuck-job-backstop.mdpr-gate-runs-only-what-the-diff-affects.mdred-main-reverts-its-culprit-same-day.mdrelease-promotes-the-staging-proven-build.mdsetup-under-a-minute.mdkill-survivors-with-contract-properties.mdsuppress-by-shape-in-an-ignorer.mdunkillable-survivors-are-dead-code.mdcondition-branch-agreement.mddeclared-entry-points.mdenumerated-entry-modules.mdimport-time-inertness.mdone-access-path.mdpublic-signature-types.mdsurface-changes-are-versioned.mdarbitrary-filter-floors.mdcross-field-invariants-as-struct-checks.mddata-only-schema-classes.mdinvariants-as-refinements.mdrecursive-schema-suspend.mdrefusal-properties-cover-unobservable-boundaries.mdrich-type-over-foreign-encoded.mdtagged-unions-over-state-by-presence.mdtests-own-no-schemas.mdCompound learning
ce-compound: documentation skipped. The repin has no non-obvious lesson that this body and the commit do not already hold. F3's cause is measured but not solved, and its follow-up will record the learning when it lands.docs/solutions/performance-issues/fetch-cargo-vendor-given-whole-source-rebuilds-crane-deps.mdmakes no claim that F3 contradicts.Readiness
Head
bca291de1bb642b3205413acb1f05153ccb38338, one commit onmainat187c25c1. CI 38456326800 (4 jobs) and Changeset Check 38456328340 are green. This is the only layer of its stack on trunkmain, and no other open PR of mine touches this file. The operator merges.