Skip to content

fix: clean broken doc references, add shrink test script, pin CI actions, and skip Go tests gracefully - #826

Open
poorvith-mp wants to merge 1 commit into
JuliusBrussee:mainfrom
poorvith-mp:fix/docs-ci-and-test-resilience
Open

fix: clean broken doc references, add shrink test script, pin CI actions, and skip Go tests gracefully#826
poorvith-mp wants to merge 1 commit into
JuliusBrussee:mainfrom
poorvith-mp:fix/docs-ci-and-test-resilience

Conversation

@poorvith-mp

@poorvith-mp poorvith-mp commented Aug 12, 2026

Copy link
Copy Markdown

Summary

This PR addresses several gaps and broken references identified in repo;

  1. Broken doc references: Replaces dead relative markdown links pointing to internal monorepo specs (docs/decisions/*, docs/prd/*, docs/CAVEMAN_LEARN_SPEC.md, docs/FASTCONTEXT_EXPLORER_SPEC.md, docs/research/*, PRODUCTS.yaml, examples/coding-agent) with plain text code references across package docs.
  2. Missing shrink test script: Adds "test": "node --test tests/*.test.mjs" and package smoke testing in shrink/, fixing the prepack path from ../cli to ../packages/cli.
  3. CI Action SHA Pinning: Pins third-party GitHub Actions (actions/checkout, actions/setup-node, actions/setup-python) in .github/workflows/ci.yml to full commit SHAs with version comments (matching engine-ci.yml).
  4. Graceful Go test skipping: Wraps execFileSync("go", ...) in packages/cli runtime test suites with a toolchain existence check so tests skip cleanly (t.skip("go toolchain not found")) in Node-only environments without Go on PATH.
  5. Debug-gated diagnostics: Adds if (process.env.CAVEMAN_DEBUG === '1') logging for silent fs.unlinkSync catches in hooks and opencode plugin.
  6. Cross-platform test resilience: Fixes directory locking and symlink permission handling in standalone hook and symlink test suites on Windows.

Closes #825

Verification

  • npm test: 152 tests (145 passed, 7 skipped, 0 failed).
  • node --test packages/cli/tests/agent-compression-conformance.runtime.mjs packages/cli/tests/harness-agent-upstream.runtime.mjs packages/cli/tests/harness-session-history.runtime.mjs packages/cli/tests/wrap-restart.runtime.mjs: 10 tests skipped cleanly when Go is absent.
  • node --test shrink/tests/package.test.mjs: 1 passed.
  • node --test mcp/tests/package.test.mjs: 1 passed.
  • node tests/test_*.js: all standalone hook suites passed.

Signed-off-by: Poorvith M P poorvith007@proton.me

…ons, and skip Go tests gracefully

- Replace unresolvable relative markdown links pointing to internal monorepo specs and omitted paths with plain text across explorer, skills, packages, engine, and proxy docs.
- Add "test" script and package smoke test to shrink/package.json and shrink/tests/package.test.mjs. Fix prepack path in shrink/package.json.
- Pin third-party Actions in .github/workflows/ci.yml to full commit SHAs with version comments (matching engine-ci.yml).
- Add Go toolchain existence checks to packages/cli runtime test suites so Go-dependent tests skip gracefully instead of failing when Go is absent.
- Add CAVEMAN_DEBUG diagnostic logging for silent fs.unlinkSync catches in hooks and opencode plugin.
- Fix cwd and permission handling in standalone hook and symlink test suites on Windows.

Closes JuliusBrussee#825

Signed-off-by: Poorvith M P <poorvith007@proton.me>
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.

Fix broken internal doc links, shrink test script, CI SHA pinning, and Go test skipping

1 participant