Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
There was a problem hiding this comment.
Pull request overview
Updates the backlog documentation to capture (1) a follow-up hygiene-tool extraction item for recurring markdown table corruption fixes and (2) a priority bump (P3 → P2) plus scope clarification for the post-install scripting migration to Bun + TypeScript.
Changes:
- Add new backlog row B-0027 describing a proposed tool to fix markdown table wrong-column-count issues (MD055/MD056).
- Move B-0015 from
P3/toP2/and expand its scope to explicitly cover post-install tools (with the pre-install vs post-install distinction). - Delete the old
P3/copy of the B-0015 row.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| docs/backlog/P3/B-0027-fix-markdown-table-cell-count-tool-otto-346-followup.md | New P3 backlog row capturing the MD055/MD056 tool-extraction follow-up and TS-target intent. |
| docs/backlog/P3/B-0015-migrate-batch-resolve-pr-threads-to-bun-ts.md | Removes the old P3 version of B-0015 (row moved to P2). |
| docs/backlog/P2/B-0015-migrate-batch-resolve-pr-threads-to-bun-ts.md | Re-adds B-0015 as P2 and expands “composes with” + adds the 2026-04-26 priority bump/scope notes. |
6c448a5 to
2dd1d7b
Compare
…6 follow-up after honest-relapse-catch Aaron 2026-04-26: *"hmmm"* — caught me using inline `python3 << 'PYEOF'` heredoc to truncate a corrupted tick-history row IMMEDIATELY AFTER shipping Otto-346 principle and two tools embodying it. Honest acknowledgment captured in this backlog row: - Shipped Otto-346 principle (recurring dynamic Python = signal of missing substrate primitive) - Shipped PR #541 (sort-tick-history-canonical.py) and PR #542 (fix-markdown-md032-md026.py) absorbing recurring patterns - Then immediately wrote inline Python for the next problem - Relapse — the discipline needs per-instance vigilance, not one-time naming The owed work: extract tools/hygiene/fix-markdown-table-cell-count.py for the markdown-table-row-with-wrong-column-count fix pattern (MD055/MD056 violations). Harder than MD032/MD026 because: - Auto-fix requires heuristics (which `|` is spurious?) - Risk of removing legitimate content - Mitigation: default-dry-run, --auto flag for unambiguous cases, log every change Captures the meta-discipline observation: Otto-346 application requires per-instance vigilance. Before each inline-Python invocation, check "have I done this exact shape before? could I plausibly do it again? is it mechanical?" — if 2-of-3 yes, extract first then apply. Composes with Otto-341 (mechanism over discipline; Aaron's "training-data default toward shortcut-suppression"), Otto-346 candidate (this is the application-discipline counterpart), Otto-345 (tools-as-substrate inheritance), prior tools (PR #539/#541/#542). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
…ygiene tools (Aaron 2026-04-26 ask) Aaron 2026-04-26: *"we need to move the typescript migration of our scripts to higher priority so you will stop trying to write python and shell code lol ... our post install code"* + *"pre install code still has to go to the user where they live shell and windows powershell"* The recurring `python3 << 'PYEOF'` heredocs and bash scripts I keep writing in `tools/hygiene/` are POST-install tools that belong in TypeScript per the migration plan. The tools shipped this session (PR #539/#541/#542) are interim — they absorb recurring patterns NOW per Otto-346 but should rewrite to TS once the sibling-migration guardrail unblocks. Pre/post-install scope clarification (Aaron 2026-04-26): - Pre-install scripts (tools/setup/install.sh, devcontainer bootstrap): MUST stay shell + PowerShell — that's what's available before Bun installs - Post-install scripts (tools/hygiene/, tools/git/, dev-time tooling): TARGET = TypeScript via Bun The distinction is structural. docs/POST-SETUP-SCRIPT-STACK.md already encodes the rationale; this priority bump operationalizes it. Two changes in this commit: 1. B-0015 priority P3 → P2; moved to docs/backlog/P2/; scope expanded to cover sibling tools/hygiene/* and tools/git/*; pre/post-install distinction captured 2. B-0027 (just-filed) updated with implementation-target note: TypeScript not Python; wait for sibling-migration guardrail or use exception-label pattern Composes with: docs/POST-SETUP-SCRIPT-STACK.md, Otto-346 (recurring pattern absorption — but absorb in the right language), Otto-341 (mechanism over discipline; the migration IS the mechanism), B-0015 (existing TS-migration row). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
…-match (Copilot P1 finding) Copilot P1 finding: 'git log --all -G "|: "' treats | as regex alternation (matches everything containing empty pattern OR ': '), not the literal pipe-colon-space pattern intended. Two fixes offered: 1. Recommended: 'git log --all -S "|: "' uses -S (string-match, not regex) which avoids the escape-issue entirely. Documented as the recommended form for literal-string searches. 2. Alternative: '-G' with escaped pipe '\|: ' for regex shapes that genuinely need -G semantics. Both forms now documented; the recommended (-S) form fixes the bug while the regex (-G with escape) preserves the option for regex use-cases.
2dd1d7b to
db0fa45
Compare
There was a problem hiding this comment.
Pull request overview
Updates the per-row backlog to capture (1) owed work for a dedicated “markdown table wrong column-count” fix tool (Otto-346 follow-up), and (2) a priority bump + scope clarification for migrating post-install tooling to Bun+TypeScript.
Changes:
- Add new P3 backlog row B-0027 describing a proposed markdown table cell-count fixer tool and its TS-first implementation target.
- Move B-0015 from P3 → P2 and expand its scope to cover broader post-install script migration (tools/hygiene + tools/git), clarifying pre-install vs post-install scripting targets.
- Remove the old P3 copy of B-0015 after relocation.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| docs/backlog/P3/B-0027-fix-markdown-table-cell-count-tool-otto-346-followup.md | New backlog row capturing the MD055/MD056 table-corruption tool concept and TS target per post-install policy. |
| docs/backlog/P3/B-0015-migrate-batch-resolve-pr-threads-to-bun-ts.md | Removes the old P3 instance of B-0015 as part of the priority bump relocation. |
| docs/backlog/P2/B-0015-migrate-batch-resolve-pr-threads-to-bun-ts.md | Reintroduces B-0015 at P2 with added 2026-04-26 scope/priority rationale and post-install vs pre-install distinction. |
…delimited substrings with leading/trailing spaces (lint) Codex/Copilot CI flagged MD038 errors at line 50: `: ` and `+ ` inline code spans had leading-space (the unescaped space inside the backticks). Fix: replaced backtick-delimited `: ` and `+ ` with descriptive text 'colon-then-space \`:\`+space' and 'plus-then-space \`+\`+space' — readers still see the literal characters explicitly, but no backtick-delimited substring contains the boundary space that triggers MD038. Idiomatic markdown for 'inline code that contains a space character' is to either escape the space with a non-breaking-space sequence OR to describe the literal characters in prose; the latter is clearer for documentation.
Summary
Two related backlog updates from Aaron's 2026-04-26 catches and direction.
B-0027 — markdown-table-cell-count fix tool (Otto-346 follow-up)
Aaron's "hmmm" caught me using inline
python3 << 'PYEOF'heredoc to truncate a corrupted tick-history row IMMEDIATELY AFTER shipping Otto-346 principle and two tools embodying it. Honest acknowledgment of relapse + owed-work captured.Captures the meta-discipline observation: Otto-346 application requires per-instance vigilance, not one-time naming. Each new instance is a fresh test of the discipline.
B-0015 — bump P3 → P2 + scope expansion
Aaron 2026-04-26: "we need to move the typescript migration of our scripts to higher priority so you will stop trying to write python and shell code lol ... our post install code" + "pre install code still has to go to the user where they live shell and windows powershell"
The recurring Python heredocs and bash scripts I keep writing in
tools/hygiene/are POST-install tools that belong in TypeScript per the migration plan. The interim tools shipped this session (PR #539/#541/#542) absorb recurring patterns NOW per Otto-346 but should rewrite to TS once the sibling-migration guardrail unblocks.Pre/post-install structural distinction (Aaron's clarification)
tools/setup/install.sh, devcontainer bootstrap, anything that runs BEFORE Bun is available): MUST stay shell + PowerShell — that's what's available where the user lives. Cross-platform pair (.sh+.ps1) is the right shape.tools/hygiene/,tools/git/, dev-time tooling, anything that runs AFTER Bun installs): TARGET = TypeScript via Bun. Single cross-platform script, first-class typing, better refactor surface.The distinction is structural; this PR captures it in B-0015's expanded composes-with section.
Composes with
docs/POST-SETUP-SCRIPT-STACK.md— existing rationale this operationalizesWhat this DOES NOT do
Test plan
🤖 Generated with Claude Code