Skip to content

review(pr-1247-followup): rename file to reflect both triggers + fix bare-grep placeholder#1249

Merged
AceHack merged 4 commits intomainfrom
free-memory/depends-on-search-discipline-rename-and-grep-fix-aaron-2026-05-02
May 2, 2026
Merged

review(pr-1247-followup): rename file to reflect both triggers + fix bare-grep placeholder#1249
AceHack merged 4 commits intomainfrom
free-memory/depends-on-search-discipline-rename-and-grep-fix-aaron-2026-05-02

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented May 2, 2026

Summary

Two Copilot post-merge findings on PR #1247 (already merged):

P2 — filename mismatch. MEMORY.md entry described two-trigger discipline (creation + pickup); filename was feedback_at_pickup_time_prereq_check_discipline_*, reading as pickup-only. Renamed to feedback_depends_on_backlog_search_discipline_at_creation_and_at_pickup_*.

P1 — bare grep placeholder. At-creation procedure had grep -l "tags:.*<tag>" ... where ... was a placeholder; copy-paste risk turns it into repo-wide grep pulling in references/ clones. Replaced with explicit docs/backlog/P*/B-*.md glob + warning sentence.

Why follow-up PR (not deferred)

Per Aaron 2026-05-02: "the answer to if it matters is almost always yes in real life lol" — post-merge findings on substrate-rule memos warrant their own follow-up PR rather than backlog deferral.

What changed

  • git mv of the memory file (97% similarity preserved)
  • MEMORY.md pointer updated to new filename
  • Procedure body has explicit path glob in the grep example + anti-bare-placeholder warning sentence

Test plan

  • No remaining inbound references to old filename (verified via grep -rln)
  • Frontmatter name: already reflects both triggers (no change needed)
  • CI green

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings May 2, 2026 23:53
@AceHack AceHack enabled auto-merge (squash) May 2, 2026 23:54
AceHack added a commit that referenced this pull request May 2, 2026
…ollow-up + #1245 rebase

#1246 (depends_on 100%) + #1247 (at-creation/at-pickup discipline)
merged on main. #1245 (skill-flywheel memo) DIRTY conflict
cleared via rebase, auto-merge armed. #1248 auto-merge armed.
#1249 opened addressing #1247 post-merge Copilot findings
(filename rename + grep-placeholder fix).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack and others added 2 commits May 2, 2026 19:55
…bare-grep placeholder

Two Copilot post-merge findings on PR #1247:

P2 — filename mismatch. The MEMORY.md entry described a
two-trigger discipline (creation + pickup), but the filename
was feedback_at_pickup_time_prereq_check_discipline_*, which
reads like pickup-only. Renamed to
feedback_depends_on_backlog_search_discipline_at_creation_and_at_pickup_*
so the filename matches the substantive content.

P1 — bare grep placeholder. The at-creation procedure had
`grep -l "tags:.*<tag>" ...` where `...` was a placeholder.
Copilot caught the risk: a contributor copy-pasting literally
gets a repo-wide grep that pulls in references/ clones and
other noise. Replaced with explicit
`grep -l "tags:.*<tag>" docs/backlog/P*/B-*.md`; added a
sentence warning against bare placeholders.

MEMORY.md pointer updated to the new filename.

Worked example of "if it matters is almost always yes":
post-merge findings on substrate-rule memos warrant their
own follow-up PR rather than backlog deferral.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ollow-up + #1245 rebase

#1246 (depends_on 100%) + #1247 (at-creation/at-pickup discipline)
merged on main. #1245 (skill-flywheel memo) DIRTY conflict
cleared via rebase, auto-merge armed. #1248 auto-merge armed.
#1249 opened addressing #1247 post-merge Copilot findings
(filename rename + grep-placeholder fix).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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

This follow-up PR cleans up a recently added memory artifact so its filename matches the two-trigger discipline described in the memo, and it tightens the documented backlog-search example to avoid an unsafe copy-paste pattern. It fits the repository’s memory/index maintenance workflow by keeping the memory/ corpus internally consistent and less error-prone for future edits.

Changes:

  • Renames the memory file so the filename reflects both trigger points: row creation and pickup time.
  • Updates memory/MEMORY.md to point at the renamed file.
  • Replaces the bare grep placeholder in the memo with an explicit backlog path glob and a warning about repo-wide grep misuse.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
memory/feedback_depends_on_backlog_search_discipline_at_creation_and_at_pickup_aaron_2026_05_02.md Clarifies the at-creation search procedure with an explicit docs/backlog/P*/B-*.md grep target and warning text.
memory/MEMORY.md Updates the index entry to reference the renamed memory file.

…ries

Multiple post-merge findings across PRs #1245, #1247, #1248
addressed:

PR #1247 followup (this PR's primary purpose):
- Renamed feedback_at_pickup_time_prereq_check_discipline_*
  → feedback_depends_on_backlog_search_discipline_at_creation_and_at_pickup_*
  to reflect both triggers
- Fixed bare-grep-placeholder in the at-creation procedure

PR #1245 + #1248 post-merge consequences (rebase-discovered):
- Stale references to old filename in MEMORY.md (line 8
  duplicate from #1247's original index entry that survived
  the rename) + future-domain memo (lines 35 and 90 referenced
  the old filename) — all updated to new filename
- MEMORY.md index entries trimmed for brevity per #1248's P2
  finding (memory/README.md "keep entries terse" rule)
- Quotes in skill-flywheel index entry that didn't match
  verbatim source removed; verbatim preservation lives in
  the memo body, not the one-line index

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
… rebased + 4 post-merge findings triaged

Two-merge tick: #1245 (skill-flywheel) + #1248 (future-skill-domain).
PR #1249 went DIRTY from concurrent merges; rebase cleared it +
caught stale filename refs the rename was supposed to update.

4 post-merge findings triaged: 2 false positives (table
double-pipes — Copilot rendering bug), 1 real (verbatim-quote
mismatch in index entry; quotes removed since terseness > quote-
preservation in MEMORY.md), 1 real (entry too long; trimmed to
one-liner per memory/README.md).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 2, 2026 23:57
@AceHack AceHack merged commit 59f6b41 into main May 2, 2026
26 checks passed
@AceHack AceHack deleted the free-memory/depends-on-search-discipline-rename-and-grep-fix-aaron-2026-05-02 branch May 2, 2026 23:59
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

Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.

Comment thread memory/MEMORY.md
Comment thread memory/MEMORY.md
Comment thread docs/hygiene-history/ticks/2026/05/02/2357Z.md
Comment thread docs/hygiene-history/ticks/2026/05/02/2354Z.md
@AceHack
Copy link
Copy Markdown
Member Author

AceHack commented May 3, 2026

All 5 post-merge findings addressed in PR #1251:

  • 3 fixed in code: line-35 stale ref in future-domain memo (the surviving ref after prior only fired on line 90); MEMORY.md count 12→13 (specialists table); MEMORY.md count 5→6 (procedure skills table)
  • 2 tick-shard findings (2354Z + 2357Z) NOT corrected — tick shards are append-only history preserving agent-belief-at-time. The shards accurately reflect Otto's belief at write-time; retroactively rewriting them would be ahistorical. The follow-up PR fixes the underlying issue.

Resolving threads with cross-reference to the follow-up PR.

AceHack added a commit that referenced this pull request May 3, 2026
…o + correct MEMORY.md counts (#1251)

Three Copilot post-merge findings on PR #1249 (already merged):

1. **Stale filename ref at line 35** of future-domain memo —
   the rebase + replace_all pass claimed "All occurrences
   replaced" but only line 90 actually got updated; line 35
   kept the old `feedback_at_pickup_time_prereq_check_discipline_*`
   reference. This is the kind of two-claim-vs-reality drift
   the human maintainer-2026-05-02 lesson surfaces directly:
   the previous PR's commit message overstated what landed
   ("all stale refs fixed") when one ref survived. Fix now.

2. **MEMORY.md said "12-row surface→specialist table"** but
   the skill-flywheel memo's table has 13 data rows. Off
   by one. Corrected to 13.

3. **MEMORY.md said "5 procedure skills"** but the
   future-domain memo's procedure-skills table has 6
   candidates (decision-archaeology + 2 prereq-search skills
   + depends_on-relationship-analyst + backlog-flywheel-mechanizer
   + parallel-tracks-dispatcher = 6). Corrected to 6.

The two tick-shard findings (2354Z + 2357Z claiming the
rename closed the drift) are NOT corrected — tick shards are
append-only history that preserve agent-belief-at-time. The
shards accurately reflect Otto's belief at write-time; the
follow-up PR fixes the underlying issue but doesn't rewrite
history.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request May 3, 2026
…future-domain memo + #1251 post-merge corrections

Aaron 2026-05-03 named multi-harness alignment/convergence on
design as another future skill domain. Filed in same shape as
prior tick's git-native-backlog memo. PR #1251 closed 3 of 5
post-merge findings on #1249 (line-35 stale ref + 2 MEMORY.md
counts); 2 tick-shard findings left intact as append-only
history.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request May 3, 2026
…future-domain memo + #1251 post-merge corrections

Aaron 2026-05-03 named multi-harness alignment/convergence on
design as another future skill domain. Filed in same shape as
prior tick's git-native-backlog memo. PR #1251 closed 3 of 5
post-merge findings on #1249 (line-35 stale ref + 2 MEMORY.md
counts); 2 tick-shard findings left intact as append-only
history.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request May 3, 2026
…skill domain (Aaron 2026-05-03) (#1252)

* free-memory: multi-harness alignment/convergence on design as future skill domain (Aaron 2026-05-03)

Aaron 2026-05-03: *"when designing anything you should go
through a multi harness alignment/convergence on the design,
that's a good skill domain to have too."*

Second forward-looking architectural observation in two
consecutive ticks. Establishes a pattern: Aaron is enumerating
the emerging skill-domain landscape Otto + future contributors
will operate in.

The discipline: run designs through N harnesses; convergence
= structural-soundness signal; divergence = hidden-assumption
surface. Distinct from multi-AI peer review (post-output) —
this is pre-output design convergence.

Composes with existing substrate:
- Drive-bridge AI-to-AI peer review (Otto ↔ Claude.ai brat-voice)
- 5-AI peer convergence on poll-the-gate (task #355)
- Bidirectional alignment + BFT-many-masters (ALIGNMENT.md)
- Karpathy edge-runner framing
- Sibling git-native-backlog-management future-domain memo

Memo enumerates canonical starting set (5 procedure skills + 4
named-persona experts + 5 tools), promotion-trigger criteria
(BP-14 + judgment-disagreement; same shape as sibling memo),
and 3 worked-example seeds:
1. 5-AI poll-the-gate convergence (convergence-validator mode)
2. Drive-bridge brat-voice consultation (divergence-prospector
   mode; surfaced 2 architectural errors via cross-harness
   review)
3. Aarav specialist review on B-0169 (counter-example: when
   single-specialist suffices, multi-harness is overkill —
   demonstrates the routing question)

Filed in same shape as the git-native-backlog domain memo per
the canonical-starting-set + promotion-trigger pattern that
emerged 2026-05-02.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* hygiene(tick-history): 2026-05-03T00:08Z — multi-harness convergence future-domain memo + #1251 post-merge corrections

Aaron 2026-05-03 named multi-harness alignment/convergence on
design as another future skill domain. Filed in same shape as
prior tick's git-native-backlog memo. PR #1251 closed 3 of 5
post-merge findings on #1249 (line-35 stale ref + 2 MEMORY.md
counts); 2 tick-shard findings left intact as append-only
history.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* free-memory(refine): two-axis (harness × model/effort) + vocabulary alignment with harness "effort" term

Aaron 2026-05-03 same-tick refinements:

1. **Two-axis refinement:** *"i should say multi harness /
   multi model we have access to both."* The discipline
   operates across the harness × model matrix, not just one
   axis. Within Claude Code: Opus / Sonnet / Haiku; across
   harnesses: many providers. Frontmatter name + description
   updated to reflect both axes; tables expanded.

2. **Foundation-first sizing rule** + **metrics-recording-now**:
   *"we should still use the larger models for now with higher
   thinking modes ... recording some metrics on harnesses and
   models themselves will be useful for many things in the
   future more than just budget."* Metrics-table added (latency
   / cost / convergence-rate / divergence-class / quality / drift
   / thinking-mode availability) with budget-vs-other-uses
   columns.

3. **Vocabulary alignment:** *"your harness calls this effort."*
   Renamed `model-size-router` → `effort-router`; replaced "model-size
   capacity" with "effort" everywhere; added a vocabulary-alignment
   section establishing the bridging convention (use local harness
   term in harness-targeted skills; use neutral "compute-tier" only
   in cross-harness substrate).

Three same-tick maintainer expansions of the original observation
captured in the same memo + same PR. Composes with the earlier
sibling git-native-backlog domain memo (PR #1248).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* review(pr-1252-postmerge): fix 11 Copilot findings — 0xZ placeholder + count drift + MEMORY.md dedupe

11 Copilot findings on PR #1252 (now wait-ci, awaiting auto-merge):

1. **P2 `00:0xZ tick`** — placeholder text not actual time;
   replaced with "around the 00:08Z tick" (the actual UTC
   when Aaron sent the message).

2-3. **MEMORY.md duplicate entries** — the rebase after PR
   #1251 landed preserved BOTH the original entries (lines
   7-8) AND the post-rebase entries (lines 10-11) for
   git-native-backlog + skill-flywheel memos. Lines 7-8 had
   the corrected counts (6 procedure skills, 13-row table);
   lines 10-11 had stale (5 + 12). Removed lines 10-11
   (duplicates of 7-8); single canonical pointer per memo.

4-11. **Count drift across the multi-harness memo** — same-
   tick refinements (effort-router skill + metrics.ts +
   multi-model-roster.md) added rows to the procedure-skills
   + tooling tables but didn't update the canonical-starting-
   set summary. Counts corrected throughout:
   - Line 112 of memo body: "5 procedure skills + 5 tools"
     → "6 procedure skills (including effort-router) + 7 tools
     (including metrics.ts + multi-model-roster.md)"
   - Line 9 of MEMORY.md: same correction in index entry

Pattern this teaches: same-tick refinements that add rows to
tables should ALSO update summary-counts elsewhere in the
same file. Future skill-creator + memo-author should grep for
"N procedure skills" / "M tools" patterns when adding rows.

Note: courier-ferry-protocol.md reference Copilot flagged
was already removed by my earlier two-axis refinement edits;
no action needed for that finding.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request May 3, 2026
…ist + tool-status across memo

4 substantive findings on PR #1259 (in-flight):

1. **Section heading drift** — "## Empirical evidence (this
   session, 9+ PRs, 15+ distinct drift instances)" still said
   "15+" while body table has 20 rows + summary says 20.
   Updated heading to "20 distinct drift instances".

2. **Carved sentence stale at "9"** — line 115 still said
   "9 instances caught across 7 PRs". Updated to "20 instances
   across 9+ PRs" + named that instances #10-#20 landed after
   discipline-naming + named v0-shipped status.

3. **PR list incorrect** — frontmatter listed `#1247` (not in
   table) and excluded `#1249, #1257, #1259` (which ARE in
   table). Corrected to `#1245, #1248/#1249, #1250, #1252,
   #1253, #1254, #1255, #1256, #1257, #1259`.

4. **"Until tool ships" + "v0 shipped" contradiction** —
   reorganized §96 to put tool-status FIRST ("v0 shipped covering
   count-drift; v1+ extends to remaining 6 sub-classes; until
   v1+ ships covering all 7, the discipline outside count-drift
   is still manual").

2 tick-shard findings (0049Z + 0058Z) NOT addressed — tick
shards are append-only history preserving agent-belief-at-time.
The shards accurately recorded my belief at write-time; the
underlying memo is the canonical truth and is fixed in this PR.
A note in the next tick shard acknowledges the over-claims.

Drift instances #21 + #22 + #23 + #24 (this PR's own findings)
are not yet catalogued in the table — they will land in the
next sync pass to avoid recursing forever in this PR.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
AceHack added a commit that referenced this pull request May 3, 2026
…tmatter + body + MEMORY.md (#1259)

* review(pr-1257-postmerge): update verify-then-claim count drift (9→18+) in frontmatter + body + MEMORY.md

Copilot post-merge findings on PR #1257 (already merged):
the body of verify-then-claim memo says "15+ drift instances"
but the FRONTMATTER description and MEMORY.md index entry
still say "9 drift instances" — count drift between body
and metadata.

This is itself drift instance #19 (count drift, sub-class
already catalogued). Fixed in three places:

1. **Frontmatter description** updated 9 → 18+, names the
   PRs covered (#1245-#1256 and counting), names the 7 sub-
   classes catalogued, sharpens the manual-insufficient
   framing to reflect post-naming drift.

2. **Body line 91** ("9 drift instances above" → "18+ drift
   instances above across 7 recurring sub-classes").

3. **MEMORY.md index entry** updated to reflect 18+ count + 7
   sub-classes + manual-insufficient framing + the
   instances-#10-#18-landed-AFTER-naming evidence.

The frontmatter ↔ body drift is itself a recurring sub-class
within count-drift: when body content updates but metadata
doesn't, the index summary lies. The substrate-claim-checker
TS tool spec gets another check: scan frontmatter description
+ MEMORY.md entry against body content for count consistency.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* hygiene(tick-history): 2026-05-03T00:49Z — frontmatter↔body↔MEMORY.md count drift caught (drift #19)

Body said 15+, frontmatter description + MEMORY.md said 9 —
count drift across surfaces. Each new tick produces new drift
instances even when the discipline cataloguing the drift was
authored last tick. Mechanization (substrate-claim-checker TS
tool) is the only path. Spec gets another concrete check:
cross-surface count consistency.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* review(pr-1259): add table rows #16-#20 to match the "20" count claim

Copilot caught: frontmatter description + MEMORY.md said "18+
drift instances" but body table only had 15 rows — opposite-
direction count drift introduced by the very PR fixing the
prior count drift. **This is itself drift instance #20** —
self-recursive count drift; the count-fix introduces new
count drift in the opposite direction.

Fix: added 6 catalogue rows to the body table (#16-#20)
matching the claimed 20-instance count. Body now has 20 rows;
all three surfaces (frontmatter description + body table +
MEMORY.md index entry) consistent at 20.

The 6 new rows document drift instances #16-#20 — including
THIS PR's own drift as instance #20, demonstrating the
self-recursive sub-class explicitly.

Also updated:
- Sub-class section: self-recursive instances now [#10, #11, #19, #20]
- Body line 96: "20 drift instances above" + note that v0 of
  substrate-claim-checker shipped in PR #1260
- Frontmatter description: count → 20; instances range →
  #10-#20; v0 shipped reference
- MEMORY.md: count → 20; v0 shipped reference

This is the perfect worked example for the substrate-claim-
checker tool's value: the very count-drift-fix produced new
count drift, which the tool catches automatically. v0 (PR
#1260) would have caught this pre-publish.

Verified manually: `awk '/Drift instance/,/^$/'` + `grep -c
"^| [0-9]"` returns 20 rows; matches all 3 surfaces.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* hygiene(tick-history): 2026-05-03T00:58Z — count-fix introduced opposite-direction drift; body extended to 20 rows

Even authoring a PR to fix count drift produces opposite-direction
count drift. Drift instance #20 self-recursively documents this
PR's own drift. Substrate-claim-checker v0 (PR #1260) would have
caught it pre-publish — empirical evidence v0 was the right
architectural answer.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* review(pr-1259): synchronize section heading + carved sentence + PR list + tool-status across memo

4 substantive findings on PR #1259 (in-flight):

1. **Section heading drift** — "## Empirical evidence (this
   session, 9+ PRs, 15+ distinct drift instances)" still said
   "15+" while body table has 20 rows + summary says 20.
   Updated heading to "20 distinct drift instances".

2. **Carved sentence stale at "9"** — line 115 still said
   "9 instances caught across 7 PRs". Updated to "20 instances
   across 9+ PRs" + named that instances #10-#20 landed after
   discipline-naming + named v0-shipped status.

3. **PR list incorrect** — frontmatter listed `#1247` (not in
   table) and excluded `#1249, #1257, #1259` (which ARE in
   table). Corrected to `#1245, #1248/#1249, #1250, #1252,
   #1253, #1254, #1255, #1256, #1257, #1259`.

4. **"Until tool ships" + "v0 shipped" contradiction** —
   reorganized §96 to put tool-status FIRST ("v0 shipped covering
   count-drift; v1+ extends to remaining 6 sub-classes; until
   v1+ ships covering all 7, the discipline outside count-drift
   is still manual").

2 tick-shard findings (0049Z + 0058Z) NOT addressed — tick
shards are append-only history preserving agent-belief-at-time.
The shards accurately recorded my belief at write-time; the
underlying memo is the canonical truth and is fixed in this PR.
A note in the next tick shard acknowledges the over-claims.

Drift instances #21 + #22 + #23 + #24 (this PR's own findings)
are not yet catalogued in the table — they will land in the
next sync pass to avoid recursing forever in this PR.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* hygiene(tick-history): 2026-05-03T01:06Z — 5-surface count-drift sub-pattern; prior shards over-claimed "all surfaces consistent"

Memos have 5 count-bearing surfaces (frontmatter + body table +
section heading + carved sentence + MEMORY.md), not just 3. Prior
shards (0049Z + 0058Z) claimed "all 3 surfaces consistent" when
the section heading + carved sentence still had stale counts.
Acknowledgment lands here in append-only history; substrate-claim-
checker v1+ spec gets enumeration of all count-bearing surfaces.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 <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