Skip to content

πŸ› [fix] reads: malformed agent reads exit 64 instead of halting - #89

Merged
EricTechPro merged 3 commits into
mainfrom
fix/malformed-read-exit-64
Oct 29, 2026
Merged

EricTechPro merged 3 commits into
mainfrom
fix/malformed-read-exit-64

Conversation

@EricTechPro

Copy link
Copy Markdown
Owner

Note

⏳ In review Β· round 1 Β· βœ… 3/3 AC Β· head 71fd352

Problem

  • Where: lane agents calling super-board-github-read.py
    • a. A lane reads PR metadata, pushes, then reads the diff (or reads --kind diff with no --meta)
    • b. Or a lane asks prs-open, merge-state, issues with a field missing
  • Who: every lane in a wave
  • What happened: the helper treated the caller's malformed read as missing evidence and halted the whole run (exit 79), so one bad read stopped every lane (seen 2026-10-25)

Solution

  • --kind diff with no --meta exits 64 before any gh call, printing the metadata-then-diff form
  • FORMS gains diff, merge-state, prs-open, prs-merged, issues-closed and issues, so those malformed reads exit 64 with the valid form
  • A diff/meta mismatch exits 64 with the re-take-metadata hint; strict callers (SB_GITHUB_READ_STRICT=1: preflight, merge gate, card) still halt with 79
  • Codex lane prompt says a diff read needs --meta
  • Ported from the EricOS vendored fork (EricOS e0a1c9568, from BookZero f6a3b8795, 325be078b, 96a7e01d3)

Acceptance criteria

  • A malformed agent read fails only its call (exit 64, no halt file)
    ↳ test_github_reads.py Β· 9 failures on a2809b6, OK (21 tests) now
  • Strict callers still halt on the same bad evidence
    ↳ test_incomplete_dependency_pages_are_not_a_graph and test_truncated_diff_is_not_complete_evidence assert 79 under SB_GITHUB_READ_STRICT=1
  • Offline safety suite passes
    ↳ bash tests/run-safety.sh Β· 62 suites pass on macOS

Iteration history

Lane Done Time Details
πŸ”¨ builder βœ… Oct 29, 01:29 PDT PR open Β· 71fd352

Risk

🟑 Medium · changes which reads stop the run.

  • Door: two-way Β· revert and those reads halt the run again
  • Blast radius: lane reads Β· a lane that ignored exit 64 would now continue without that data, where before the run stopped; strict callers are unchanged

πŸ€– Generated with Claude Code

EricTechPro and others added 2 commits October 29, 2026 01:25
- diff with no --meta, a diff/meta mismatch and short prs-open/merge-state/issues reads must exit 64
- strict callers (merge gate) still halt with 79
- 9 failures on main: those reads halt every lane today

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- --kind diff with no --meta exits 64 with the metadata-then-diff form, before any gh call
- FORMS gain diff, merge-state, prs-open, prs-merged, issues-closed and issues
- codex lane prompt says diff reads need --meta; ported from EricOS e0a1c9568

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more β†’

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account β†’

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us β†’

EricTechPro added a commit that referenced this pull request Oct 29, 2026
- notes name the VERSION stamp on the public site
- the three EricOS fork ports each get a line with their PR

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- super-board-codex-lane.sh stays the one-line shim to super-board-lane.sh --backend codex
- the --kind diff needs --meta sentence moves into the lane prompt in super-board-lane.sh

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
EricTechPro added a commit that referenced this pull request Oct 29, 2026
…l map refresh (3.3.0) (#86)

* ✨ [feat] diagrams: security-audit map page and skill-map view

- New /security-audit/ page: Cloudflare's security-audit skill (commit c1c8a8c) on the shared sdlc layout, six phases, 63 parts with when/what/how/behind-the-scenes popovers and line-linked sources.
- layout_sdlc: optional meta.labels, per-stage name and icon, and `parallel` categories (no arrows, no START); SDLC maps rebuilt with identical diagrams.
- Registry, nav, Explore card, 960x600 thumb, Cloudflare logo, pages.yml and README link.
- skill-map.json: external security-audit node in its own root child view (six main steps), re-rendered with 0 crossings; visual tests pass.

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

* πŸ”’ [security] review: run pr-security-review on every PR, install security-audit (3.2.0)

- new bundled skill pr-security-review: Anthropic's local /security-review, prompt verbatim, diff target = PR base (MIT notice + source commit 0c6a49f)
- super-review runs it on every PR; findings are Bug Β· blocker routed to Super Build
- get.sh and onboard repair fetch cloudflare/security-audit-skill via npx skills; skills-lock.json detection, --no-helper-skills respected
- skills-ready: pr-security-review required in Review, security-audit optional
- super-qa drops its /security-review call; README, main page, skill map, simulator, manifests, onboard.md updated
- tests: get.sh security-audit cases, onboard repair order, readiness entries

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

* πŸ”’ [security] qa: run pr-security-review in QA, not Review

- super-qa runs pr-security-review on every PR as its one security check (folds the old /security-review call)
- each kept finding fails QA: ❌ line, [builder] thread, QA β†’ Ready; skill missing β†’ Block
- super-review drops its security step; the rest of the lane is unchanged
- skills-ready: pr-security-review required in qa, security-audit optional in qa; docs, families, manifests, README synced

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

* ✨ [feat] collect: hand verified findings to /to-spec and /to-tickets

- new collect_handoff.py: route (to-spec/to-tickets installed?), doc (one grouped findings doc), fork (1–5 β†’ /implement-spec, 6+ β†’ Backlog)
- findings doc at docs/super-board/findings/collect-<YYYY-MM-DD>.md, never overwritten; dry run prints it and writes nothing
- missing /to-spec or /to-tickets, or --direct β†’ today's Backlog filing, with the reason printed; scheduled intake uses --direct
- tests/test_collect_handoff.py; SKILL.md, README, docs flow and AGENTS.md block updated

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

* πŸ“ [docs] routing: write down which path to take, in plain words

- docs/super-board/routing.md: clear idea, foggy idea, bugs β†’ /to-spec β†’ /to-tickets
- build fork: 1–5 tickets β†’ /implement-spec, 6+ β†’ super-board; super-deploy planned
- linked from README and the super-board SKILL.md

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

* ✨ [feat] diagrams: two doors and a route fork on the skill map root

- root: Ideas (/grill-me, /wayfinder) and Bugs (/super-collect) meet at /to-spec β†’ /to-tickets; 1–5 tickets β†’ /implement-spec, 6+ β†’ /super-board; planned super-deploy; /security-audit joins the side tools
- pr-security-review moves from super-review to super-qa; super-collect hands a findings doc to /to-spec
- visual template: When Β· What Β· How Β· Example Β· Behind the scenes tabs, ==highlight==, examples gallery, planned nodes, loop edges, wrapping bullets on phones
- tests: test_visual_* pass (families and main-steps updated for the new root)

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

* πŸ”§ [chore] release: 3.3.0 notes and version

- VERSION, skills/super-board/VERSION, plugin.json and README badge β†’ 3.3.0
- RELEASE-NOTES: security check in QA, super-collect planning hand-off, routing doc
- bash tests/run-safety.sh: 63 suites pass

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

* ✨ [feat] diagrams: four /visual examples in the /visual dialog

- examples: PR description (recap of this branch), super-deploy plan, architecture map, command and script interface
- each has a full-size PNG and a thumb under 100 KB; Pages serves them at /skill-map/examples/
- landing thumb redrawn from the new root view; sync_explore --check passes

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

* πŸ“ [docs] diagrams: super-collect hand-off view matches the code

- collect-submit view: findings doc, /to-spec, /to-tickets, then 1–5 to /implement-spec on yes, 6+ to Backlog
- --direct, scheduled runs, GitHub issues and a missing /to-spec or /to-tickets go straight to Backlog
- collect-file node and its edges reworded to match SKILL.md and collect_handoff.py
- re-rendered skill-map.html and index.html; test_visual_*, visual check, sync_explore and run-safety pass

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

* πŸ§ͺ [test] pages: live site shows repo VERSION, not a typed release

- fails today: index, onboarding and writing-standard hardcode v3.0.2
- pins the dev placeholder, the build stamp and the VERSION path trigger

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

* πŸ‘· [ci] pages: stamp VERSION into the site at build

- data-sb-version placeholders read "dev" from disk, stamped at deploy
- pages.yml runs stamp_version.py and redeploys when VERSION changes
- release pill links to releases/latest

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

* πŸ“ [docs] release: 3.3.0 notes list the pages stamp and #88 #89 #90

- notes name the VERSION stamp on the public site
- the three EricOS fork ports each get a line with their PR

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

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@EricTechPro
EricTechPro merged commit 17a79c8 into main Oct 29, 2026
13 checks passed
@EricTechPro
EricTechPro deleted the fix/malformed-read-exit-64 branch October 29, 2026 19:24
EricTechPro added a commit that referenced this pull request Oct 29, 2026
- merge: non-Claude hosts merge by hand unless auto is set (#47, 7859103)
- lane: one generic launcher, super-board-lane.sh --backend (cc38679)
- setup: back-to-back fixes no longer crash on the backup folder (76e8ac5)
- #88, #89, #90 were already listed

Co-Authored-By: Claude Opus 5.5 <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.

1 participant