Skip to content

docs(rule): canary compose with verify-before-deferring + 6th empirical anchor#4411

Merged
AceHack merged 1 commit into
mainfrom
otto/canary-rule-compose-verify-before-deferring-2026-05-20
May 20, 2026
Merged

docs(rule): canary compose with verify-before-deferring + 6th empirical anchor#4411
AceHack merged 1 commit into
mainfrom
otto/canary-rule-compose-verify-before-deferring-2026-05-20

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented May 20, 2026

Summary

Closes the loop on the refinement candidate documented in PR #4410 (merged at 1d8303d8):

  1. Sharpens .claude/rules/codeql-no-source-on-docs-only-pr-is-broken-commit-canary.md's pre-worktree-creation guard from blanket "Lior active → DO NOT create worktree" to a verify-before-defer composition — the absent action remains SAFEST, but bounded substrate work can attempt isolated worktree with mandatory post-creation guard.

  2. Adds 6th empirical anchor (2026-05-20T14:13Z): isolated worktree-add during 3-proc Lior activity produced clean tree (ls-tree HEAD = 53, status = 0, post-commit ls-tree = 53). This is the empirical evidence backing the refinement.

Empirical scoreboard (all 6 attempts)

Date Time Lior state Outcome
2026-05-15 1338Z 18min into cleanup clean ✅
2026-05-15 1345Z active corrupted ❌ (PR #3492)
2026-05-15 1521Z 3.2% CPU corrupted ❌
2026-05-15 1547Z 0.0% CPU corrupted ❌
2026-05-15 1631Z absent clean ✅
2026-05-20 1413Z 3 procs active clean ✅ (this PR's anchor)

3 clean, 3 corrupted. Pre-worktree blanket-defer stays as safest baseline; post-worktree-creation guard remains load-bearing.

What changed

  • Pre-worktree-creation guard section: header updated, body adds verify-before-defer composition pointer + empirical anchor reference
  • New "Empirical anchor (2026-05-20T14:13Z)" section before "Composes with"

What did NOT change

  • The 3 existing guards (pre-worktree, post-worktree-creation, post-commit) remain operationally specified
  • The "DO NOT create worktree" prescription stays as the safest stance when no bounded substrate is at stake
  • The verify-before-deferring.md composes-with entry was already there; this edit makes the rule body consistent with that claim

Test plan

  • git ls-tree HEAD = 53 post-commit (canary check on this very PR)
  • Branch guard via git branch --show-current before commit
  • Isolated worktree at /private/tmp/zeta-otto-cli-cold-boot-1413z
  • CI required checks (next tick will poll)

🤖 Generated with Claude Code

…al anchor

Sharpens the pre-worktree-creation guard from blanket "Lior active → DO
NOT" to a verify-before-defer composition: the absent action remains
SAFEST, but bounded substrate work can attempt isolated worktree with
mandatory post-creation guard (next section) — proceed if clean, abort
if corrupted.

Adds 2026-05-20T14:13Z as 6th empirical anchor (PR #4410 1d8303d):
isolated worktree-add during 3-proc Lior activity produced clean tree
(ls-tree HEAD = 53, status = 0, post-commit ls-tree = 53). Brings the
empirical scoreboard to 3 clean + 3 corrupted across 6 attempts.

Substrate-honestly: clean outcomes correlate with Lior-between-cycles
OR Lior-absent OR Lior-active-but-not-corrupting; the post-worktree-
creation guard remains the load-bearing check that distinguishes cases.
The pre-worktree blanket-defer stance stays as the safest baseline
when no bounded substrate is at stake; verify-before-defer is the
named alternative for the bounded case (closes loop on PR #4410's
documented refinement candidate).

Composes with `verify-before-deferring.md` (already in composes-with
list; this edit makes the rule body consistent with that claim) and
the Maji audit at docs/research/2026-05-20-shadow-lesson-log-otto-paralysis.md.

Co-Authored-By: Claude <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 20, 2026 14:25
@AceHack AceHack enabled auto-merge (squash) May 20, 2026 14:25
@AceHack AceHack merged commit 443345d into main May 20, 2026
28 checks passed
@AceHack AceHack deleted the otto/canary-rule-compose-verify-before-deferring-2026-05-20 branch May 20, 2026 14:27
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the CodeQL docs-only canary rule to better describe a “verify-before-defer” refinement for worktree creation under concurrent agent activity, and records an additional empirical data point (2026-05-20T14:13Z) supporting that refinement.

Changes:

  • Refines the pre-worktree guard section wording to describe a verify-before-defer composition approach.
  • Adds a new “Empirical anchor (2026-05-20T14:13Z)” section capturing the 6th worktree-creation datapoint.

Comment on lines +75 to +83
**Verify-before-defer composition (when bounded substrate work is at
stake)**: per `.claude/rules/verify-before-deferring.md` the substrate-
honest discipline is to test the operative question rather than narrate
the obstacle from inferred conditions. The composite pattern is:
attempt isolated worktree creation → run post-worktree-creation guard
IMMEDIATELY (next section) → proceed if clean, abort + remove worktree
if corrupted. This relaxation REQUIRES the post-creation guard to be
non-optional; the pre-worktree blanket defer remains the safest stance
when no bounded substrate is at risk. Empirical: 2026-05-20T14:13Z
Comment on lines +128 to +130
6th data point validating verify-before-defer composition. Per the Maji
audit `docs/research/2026-05-20-shadow-lesson-log-otto-paralysis.md`
critique of narration-over-action, an Otto-CLI cold-boot tick attempted
Comment on lines 67 to 72
```bash
if ps -A | grep -qE "gemini.*Lior|lior.*loop"; then
echo "Lior-gemini active — DO NOT create worktree"
echo "Lior-gemini active — pre-worktree defer is SAFEST"
echo "Use memory-file + bus-envelope substrate paths instead"
exit 1
fi
AceHack added a commit that referenced this pull request May 20, 2026
…sure + forced-#6 (#4412)

Adds a 6th empirical anchor to `holding-without-named-dependency-is-
standing-by-failure.md` documenting today's session pattern:

- 2 PRs landed in ~20 min (#4410 tick shard + #4411 canary rule sharpening)
- All 4 rate-limit tiers traversed (Normal → cost-aware → extreme →
  pure-git) in single session
- Cycle-1 brief-ack #1-#5 with explicit-no-pre-empt-at-#5 + forced
  #6 producing this very anchor
- Verify-before-defer composition (PR #4411) used for worktree creation
  during 3-proc Lior activity — 2nd empirical use of the composite

Pattern generalizes: rapid-substrate-closure → natural brief-ack drain
→ forced #6 produces compounding rule sharpening. This is the
discipline's "happy path" shape; the 2 prior empirical anchors
(2026-05-17 sustained-named-dep, 2026-05-18 post-arc) are the failure
modes off this path.

Branch-pushed-no-PR per pure-git tier discipline; PR creation deferred
to post-rate-limit-reset (~5 min from commit time).

Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants