Skip to content

Develop#223

Merged
mrdailey99 merged 7 commits into
mainfrom
develop
Jun 8, 2026
Merged

Develop#223
mrdailey99 merged 7 commits into
mainfrom
develop

Conversation

@mrdailey99

Copy link
Copy Markdown
Collaborator

No description provided.

mrdailey99 and others added 6 commits June 8, 2026 09:37
RCA: docs/PROVAR_TEST_STEP_REFERENCE.md, the bestPracticesEngine VALID_API_IDS allow-list and the loop prompts all referenced control.TryCatchFinally, an apiId that does not exist in Provar (the canonical control-flow step is control.Finally), and the schema also carried a doubled list.ListCompareListCompare
Fix: normalized every TryCatchFinally reference to control.Finally across the reference doc, allow-list, comment and prompts; corrected the ListCompare schema apiId; added a data-driven test pinning every documented apiId to the validator allow-list; bumped version to 1.6.1 and synced server.json

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…y-apiid

PDX-512: fix(mcp): correct invalid TryCatchFinally apiId to control.Finally
RCA: runSfCommand buffered the entire child stdout/stderr in memory via spawnSync({ maxBuffer: 50 MB }), so a verbose DETAILED Provar run overflowed the cap and aborted with ENOBUFS, losing the run even though results were written to disk.
Fix: capture child stdout/stderr to temp files via stdio fds with no maxBuffer and read them back after exit, removing the in-memory ceiling; translate any residual ENOBUFS into an actionable error; migrate spawn-stub tests to the file-backed model and add an over-cap regression test.
RCA: adversarial review found captureSpawnToFiles could leak a descriptor if the second openSync threw, its finally rmSync could throw (Windows EBUSY/EPERM) and mask the real result, the ENOBUFS message was test-run-specific yet shared, and qualityHub's handleSpawnError never got the ENOBUFS branch.
Fix: split capture into captureSpawnToFiles + spawnCapturingToDir so cleanup covers a failed second open and rmSync is best-effort; extract one generic ENOBUFS-aware handleSpawnError into spawnErrors.ts used by both automation and qualityHub; soften the overstated "regardless of size" docs; add a real-subprocess >50MB integration test plus a qualityHub ENOBUFS test.
…-to-file

PDX-513: fix(mcp): stream sf child stdio to files to prevent ENOBUFS
RCA: the testrun ENOBUFS bug report was committed in PR #222, but bug reports are local working docs whose rationale belongs in commit messages and PR descriptions, not the repo tree, and the directory was never gitignored.
Fix: git rm --cached the tracked report (keeping the author's local copy) and add docs/bug-reports/ to .gitignore so investigation notes stay on the author's machine and cannot be re-committed by accident.
PDX-0: chore(docs): untrack docs/bug-reports and ignore the directory
@mrdailey99 mrdailey99 merged commit a8befbc into main Jun 8, 2026
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