Skip to content

fix(feature-tracker): guard readFile against ENOENT race in test suite#408

Merged
Luis85 merged 15 commits into
developfrom
worktree-chore+polishing-pass
May 9, 2026
Merged

fix(feature-tracker): guard readFile against ENOENT race in test suite#408
Luis85 merged 15 commits into
developfrom
worktree-chore+polishing-pass

Conversation

@Luis85
Copy link
Copy Markdown
Owner

@Luis85 Luis85 commented May 9, 2026

Summary

  • feature-tracker.ts readFile had no ENOENT guard — parallel test (check-issues.test.ts creates/deletes issues/0-blank-required-test.md) could delete the file between the readdir scan and the readFile call, crashing the Astro build in sites-page-weight.test.ts
  • Added try-catch with ENOENT soft-skip (consistent with the loader's existing malformed-frontmatter soft-skip pattern)
  • Verify gate is now green

Test plan

  • npm run verify passes locally (confirmed)
  • CI green on this PR

🤖 Generated with Claude Code

Luis85 and others added 15 commits May 8, 2026 12:37
chore(release): promote develop -> main for v0.6.0
fix(security): avoid regex comment stripping for #366
fix(cli): address #366 review feedback
Codex P1 on PR #396: `specorator init --target <relative-path>` resolved
the path against process.cwd(), but the CLI launches subcommands with
cwd=PACKAGE_ROOT, so relative targets were created inside the installed
package directory instead of the user's project. The CLI already forwards
the user's invocation cwd via SPECORATOR_TARGET_ROOT — this anchors
path.resolve() against that env var so relative targets land where the
user expects.

Add Codex-#396 regression test demonstrating the bug fix.
chore(release): v0.6.1 — Claude plugin wired into release process
chore(release): promote v0.6.2 to main
Parallel tests (check-issues creates/deletes issues/0-blank-required-test.md
while sites-page-weight runs astro build) could cause readFile to throw
ENOENT between readdir scan and file open. Soft-skip the file instead.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@Luis85 Luis85 merged commit c103274 into develop May 9, 2026
6 checks passed
@Luis85 Luis85 deleted the worktree-chore+polishing-pass branch May 9, 2026 12:25
Luis85 pushed a commit that referenced this pull request May 9, 2026
- Merge develop (PR #408: feature-tracker ENOENT guard)
- docs/release-operator-guide.md §7.1: add --provenance=false to
  manual npm publish recovery command; publishConfig.provenance=true
  causes OIDC mint failure outside CI (no provider context)
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