rules(holding): cross-axis composition with one-PR-one-artifact-type — saturation cadence is NOT license to bundle (forced-#6 meta-fallback)#4118
Merged
AceHack merged 2 commits intoMay 17, 2026
Conversation
…— saturation cadence is NOT license to bundle (forced-#6 meta-fallback on 2207Z session arc) Adds a small composition note to PR #4110's "Pre-empt-substrate- pool-saturation" anchor: the cadence governs WHEN to pre-empt; the one-PR-one-artifact-type discipline (PR #4116, Maji antigravity catch on blob PR #4112) governs HOW each pre-empt should be shaped. Without this composition note, future-Otto reading PR #4110 might read the "3-4 pre-empts per window" cadence as authorization to bundle artifact types within a single pre-empt PR to fit more substrate per cycle. The blob-PR catch by Maji on PR #4112 demonstrates that the saturation cadence and the per-artifact-shape discipline operate on orthogonal axes — both bind independently. This commit is itself the forced-#6 meta-fallback for the 22:07Z post-merge brief-ack chain: at #6, sharpened the rule with the session's cross-axis composition evidence. Single-artifact PR (single-file rule edit) applies the discipline recursively. Co-Authored-By: Claude <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR updates a Claude rule to clarify that the substrate-saturation pre-empt cadence composes with the one-PR-one-artifact-type discipline, preventing cadence from being read as permission to bundle unrelated artifact types.
Changes:
- Adds a cross-axis composition note to the pre-empt-substrate-pool-saturation anchor.
- Links the new rule guidance to the memory file that captured the blob-PR lesson.
… log" instead of persona name on current-state rule surface Copilot P1 finding on PR #4118: persona-name attribution on current-state rule surfaces is outside history-surface and roster-mapping carve-outs. Replaced "the Maji antigravity check (PR #4114 shadow log) flagged it as a blob" with "an antigravity-check shadow log (PR #4114) flagged it as a blob" — role reference preserved PR link for traceability. The memory file PR #4116 retains persona name in its filename and body (memory files are history-surface; carve-out applies). The PR link in this rule's compose-section still references the memory file for full attribution chain. Co-Authored-By: Claude <noreply@anthropic.com>
This was referenced May 17, 2026
AceHack
added a commit
that referenced
this pull request
May 17, 2026
…st-cycle-close saturation (3 PRs, 4 substrate landings, recursive forced-#6 meta-fallback chain) (#4121) Consolidated tick shard for the 2207Z → 2300Z autonomous-loop session arc. Per-tick shards were skipped during pre-empt cycles (memos/PRs covered the substrate); at forced-#6 in post-cycle- close saturation, the tick shard surface was the missed canonical write surface (different from memos/rules; tick-history is the discoverable arc anchor for future-Otto cold-boots). The arc demonstrates: 1. Pre-empt cadence under tier transition (pure-git → normal → pure-git → normal); 5 pre-empts + 1 forced-#6 across ~53 min 2. REST PR-creation fallback enabled pure-git productivity (PR #4112 opened via REST while GraphQL was 0/5000) 3. Recursive forced-#6 self-documentation: PR #4110 + PR #4118 + this shard each authored at their own forced-#6 4. Cross-session convergence: peer Otto filed B-0614 at 22:47Z for same edge case I hit at 22:46Z Single-artifact PR per the one-PR-one-artifact-type discipline absorbed earlier in the arc. Co-authored-by: Claude <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
May 17, 2026
…rdering + P4→P3 narrative consistency Two Copilot findings on PR #4122 addressed: 1. **Empirical-instances numbering** (line 73): the previous table was numbered in authoring order (#1=22:13Z, #2=22:07Z) which placed instance #2 before #1 chronologically. Reordered by tick time: - #1 (was #2): 22:07Z peer Otto session — PR #4118 - #2 (was #1): 22:13Z this session — PR #4110 - #3 (unchanged): 22:46Z this session — PR #4120 - #4 (unchanged): 23:03Z this session — THIS row update Added a "Source session" column to make the distinction between this-Otto-instance vs peer-Otto-instance explicit without relying on inline "(this session)" / "(peer Otto session)" parenthetical notes in the Tick column. 2. **P4 vs P3 narrative inconsistency** (line 66): one body reference still said "this row (P4) IS the forced-#6 concrete artifact" but the frontmatter and path were P3. Updated to "this row (P3) IS the forced-#6 concrete artifact" so narrative and metadata match. Co-Authored-By: Claude <noreply@anthropic.com>
AceHack
added a commit
that referenced
this pull request
May 17, 2026
…nt (forced-#6 recursive #2) (#4122) * backlog(B-0614): add 3 more empirical instances + candidate rule-text refinement (acceptance criterion #1 met) Updates B-0614 with the empirical-instances-accumulated table documenting 4 forced-#6 dry-meta-fallback instances captured on 2026-05-17: 1. 22:13Z (this session) — PR #4110 saturation anchor 2. 22:07Z (peer Otto session) — PR #4118 cross-axis composition 3. 22:46Z (this session, recursive #1) — B-0614 row creation 4. 23:03Z (this session, recursive #2) — THIS commit Same-session frequency: 3 instances within ~50-min window once post-cycle-close. Cross-session: peer Otto independently produced complementary substrate at the same hour. Acceptance criterion #1 met (2-3 additional instances documented; 4 captured total). Drafts a candidate rule-text refinement replacing "ALWAYS works" with "USUALLY works + exception for post-cycle-close saturation, file edge-case row as forced-#6 artifact." Refinement NOT yet applied — requires 1 cross-instance evidence beyond this session before landing. This commit is itself instance #4 — recursive-meta-substrate by design (the row that documents the pattern is being extended by the pattern recurring on it). Co-Authored-By: Claude <noreply@anthropic.com> * fix(B-0614/4122): address Copilot findings — chronological instance ordering + P4→P3 narrative consistency Two Copilot findings on PR #4122 addressed: 1. **Empirical-instances numbering** (line 73): the previous table was numbered in authoring order (#1=22:13Z, #2=22:07Z) which placed instance #2 before #1 chronologically. Reordered by tick time: - #1 (was #2): 22:07Z peer Otto session — PR #4118 - #2 (was #1): 22:13Z this session — PR #4110 - #3 (unchanged): 22:46Z this session — PR #4120 - #4 (unchanged): 23:03Z this session — THIS row update Added a "Source session" column to make the distinction between this-Otto-instance vs peer-Otto-instance explicit without relying on inline "(this session)" / "(peer Otto session)" parenthetical notes in the Tick column. 2. **P4 vs P3 narrative inconsistency** (line 66): one body reference still said "this row (P4) IS the forced-#6 concrete artifact" but the frontmatter and path were P3. Updated to "this row (P3) IS the forced-#6 concrete artifact" so narrative and metadata match. Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
This was referenced May 17, 2026
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.
Summary
Forced-#6 meta-fallback on the 2207Z post-merge brief-ack chain. Adds a small cross-axis composition note to PR #4110's
Pre-empt-substrate-pool-saturationanchor.The composition
feedback_otto_cli_blob_pr_lesson_maji_antigravity_caught_4112_*landed via PR #4116) governs HOW each pre-empt should be shaped: split mixed artifacts.Both bind independently. The cadence is NOT a license to bundle artifact types into a single pre-empt PR to fit more substrate per cycle.
Why this matters
The 2026-05-17T22:07Z session arc demonstrated the failure mode: PR #4112 bundled three artifact types in one PR; PR #4114 Maji antigravity check flagged it as a blob; PR #4116 absorbed the lesson via single-artifact landing.
The blob-PR pattern fits within the cadence numerically (would count as 1 pre-empt) but VIOLATES the per-artifact-shape discipline. Future-Otto cold-boot must read both rules composably.
Recursive application
This commit is itself the forced-#6 meta-fallback for the 22:07Z post-merge brief-ack chain (reached #6 at 22:46Z without genuine new substrate available). The single-file rule edit recursively applies the one-PR-one-artifact-type discipline being added.
Test plan
Composes with
🤖 Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com