This repository was archived by the owner on Aug 10, 2026. It is now read-only.
chore(sop): CANON.md + release-please workflow + lefthook pre-push - #10
Merged
Conversation
Bring escapement onto terrarium federated-node standards (adopt-standards.md §1): the three SOP pillars the dogfood audit flagged as missing for this registered node. 1. CANON.md — ground-truth doctrine doc. Lineage frontmatter conforms_to terrarium/CANON.md; defines escapement, dispatch-protocol, custody-bridge, metering. Consolidates the shape from README.md + docs/dispatch-protocol-v0.1.md into one doctrine with a modules table, integration-contract edges, custody + observability posture, and hard rules. Registered node was missing its CANON (adopt-standards §1D + the lineage convention). 2. .github/workflows/release.yml — wired release-please (adopted from the soma-os workflow + unsigned-paas house rule). Manifest mode driven by the existing release-please-config.json + .release-please-manifest.json (two packages: crates/escapement-core [rust], edge/worker [node]). Actions SHA-pinned (no @latest / bare @vn). A standing Release PR replaces the manual tag flow. 3. lefthook.yml — added the pre-push affected-CI gate (was commit-msg + pre-commit-gitleaks only). Escapement is a Cargo workspace with no moon/proto toolchain, so the gate runs `cargo test --all-targets` (mirrors ci.yml's rust job — the "green before push = no CI surprise" invariant). Known deviation surfaced (not rewritten): adcadf5 ("refactor: rename project orrery → escapement") is the one unsigned commit in history (Christian Todie, pre-custody bootstrap). It is already pushed; rewriting shared history is disallowed. All commits from this change forward are signed — branch protection should require signed commits to keep it that way. Not in scope for this slice (per audit next_slice_priorities.escapement, operator- gated): SHA-pinning the 5 Actions in ci.yml; adding moon/proto/cliff toolchain; adding CLAUDE.md; Forgejo self-hosted CI. No push, no PR — local commit for operator coordination.
🤖 Agent Jury —
|
| Field | Value |
|---|---|
| Model | glm-5.2 |
| Verdict | needs-changes |
| Confidence | high |
| Findings | 1 |
Summary
Introduces the release-please GitHub Actions workflow, CANON.md doctrine, and a lefthook pre-push gate. The pre-push hook fails to enforce formatting and clippy checks as mandated by the newly added CANON.md, risking CI surprises on push.
Findings
| Severity | File | Line | Issue | Suggestion |
|---|---|---|---|---|
| warning | lefthook.yml | 25 | The pre-push hook runs cargo test --all-targets but omits cargo fmt --check and cargo clippy -D warnings, breaking parity with the CI gate mandated in CANON.md §Hard rules. |
Update the pre-push hook to execute cargo fmt --check && cargo clippy -D warnings && cargo test --all-targets to match the documented CI gate. |
Automated review by GLM-5.2 via LiteLLM gateway. Advisory — a human makes the final call.
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Global SOP dogfood compliance for escapement (per audit Track escapement).
The 1 unsigned commit (adcadf5, orrery→escapement rename) is surfaced as a known deviation — not rewritten (already pushed).
Need help on this PR? Tag
@codesmithwith what you need. Autofix is disabled.