Skip to content

chore(deps): refresh toolchain - #37

Merged
steipete merged 1 commit into
mainfrom
agent/refresh-toolchain
Jul 13, 2026
Merged

steipete merged 1 commit into
mainfrom
agent/refresh-toolchain

Conversation

@steipete

@steipete steipete commented Jul 13, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • refresh the mature TypeScript, Vite, Vitest, Node type, and pnpm toolchain versions
  • keep package, CI, benchmark, coverage, and Crabbox hydration pnpm pins current
  • resolve the TypeScript compiler through its declared package binary so prepack works with TypeScript 7 exports

Impact

No public API or runtime filesystem behavior change. Package preparation remains deterministic and now supports the current TypeScript compiler layout.

Validation

  • exact pnpm 10.34.5 frozen install
  • actionlint
  • pnpm check: 421 passed, 3 skipped
  • security suite: 59 passed
  • coverage, docs build, audit with zero vulnerabilities
  • packed-install validation across all 19 exports and filesystem containment failures
  • structured review: no actionable findings

Real package proof

Redacted terminal output from the exact PR candidate:

$ pnpm exec tsc --version
Version 7.0.2

$ pnpm dlx pnpm@10.34.5 pack --out /tmp/fs-safe.tgz
> @openclaw/fs-safe@0.4.1 prepack
> node scripts/prepack-build.mjs
@openclaw/fs-safe 0.4.1 packed successfully

$ pnpm add /tmp/fs-safe.tgz
+ @openclaw/fs-safe 0.4.1

$ node validate.mjs
overall_behavior=satisfies_contract
entry_points_imported=19
valid_round_trip=true
traversal=outside-workspace
absolute_path=outside-workspace
symlink_read=symlink
symlink_write=path-alias
hardlink_read=hardlink
create_no_clobber=already-exists
denied_mutation=denied-path
read_size_limit=too-large
outside_content_unchanged=true
valid_state_persists_after_failures=true

Packed tarball: 201,185 bytes; SHA-256 3028e2d98f55c81c4c4e5fcbecf41be22713cc1b90b8835f380036a63ea2b39b.

@steipete
steipete requested a review from a team as a code owner July 13, 2026 11:28
@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. labels Jul 13, 2026
@clawsweeper

clawsweeper Bot commented Jul 13, 2026 •

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed July 13, 2026, 7:37 AM ET / 11:37 UTC.

Summary
Refreshes five development dependencies and repository pnpm pins, regenerates the lockfile, and resolves the prepack TypeScript compiler through the package-declared binary.

Reproducibility: not applicable. This PR is a dependency and package-build maintenance update rather than a reported runtime bug. Its relevant validation path is the demonstrated prepack, packed installation, export import, and filesystem-contract run.

Review metrics: 3 noteworthy metrics.

  • Dependency Surface: 5 dev dependencies and 5 pnpm pins updated. The change refreshes the compiler/test toolchain and each repository pnpm bootstrap location.
  • Validation Matrix: 6 OS/runtime checks plus lint, coverage, and benchmarks. The exact head passes Node 22 and Node 24 validation across macOS, Linux, and Windows.
  • Package Contract: 19 published exports validated. The real-package proof exercises every packed entry point rather than only the source checkout.

Merge readiness
Overall: 🦞 diamond lobster
Proof: 🦞 diamond lobster
Patch quality: 🦞 diamond lobster
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Next step before merge

  • No automated repair is needed; this implementation PR is ready for ordinary maintainer merge review.

Security
Cleared: No concrete security or supply-chain concern was found: action references remain pinned, dependency resolution is lockfile-backed, and the reported audit is clean.

Review details

Best possible solution:

Merge the focused toolchain update after ordinary maintainer review, retaining the manifest-derived compiler resolution and coordinated exact package/workflow pins.

Do we have a high-confidence way to reproduce the issue?

Not applicable: this PR is a dependency and package-build maintenance update rather than a reported runtime bug. Its relevant validation path is the demonstrated prepack, packed installation, export import, and filesystem-contract run.

Is this the best way to solve the issue?

Yes: resolving tsc from the installed package manifest is a narrow maintainable response to the updated compiler package layout, and the packed artifact proof validates that approach without changing runtime filesystem behavior.

AGENTS.md: not found in the target repository.

Codex review notes: model internal, reasoning high; reviewed against 6f358b3ebf47.

Label changes

Label changes:

  • add proof: sufficient: Contributor real behavior proof is sufficient. The updated PR body contains exact-head terminal output demonstrating TypeScript 7 prepack, tarball installation, all exports, and representative filesystem-safety behavior after the change.
  • add rating: 🦞 diamond lobster: Overall readiness is 🦞 diamond lobster; proof is 🦞 diamond lobster and patch quality is 🦞 diamond lobster.
  • add status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (terminal): The updated PR body contains exact-head terminal output demonstrating TypeScript 7 prepack, tarball installation, all exports, and representative filesystem-safety behavior after the change.
  • remove status: 📣 needs proof: Current PR status label is status: 👀 ready for maintainer look.
  • remove rating: 🦪 silver shellfish: Current PR rating is rating: 🦞 diamond lobster, so this older rating label is no longer current.

Label justifications:

  • P3: This is routine, well-validated toolchain and package-build maintenance with no public runtime API change.
  • rating: 🦞 diamond lobster: Overall readiness is 🦞 diamond lobster; proof is 🦞 diamond lobster and patch quality is 🦞 diamond lobster.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (terminal): The updated PR body contains exact-head terminal output demonstrating TypeScript 7 prepack, tarball installation, all exports, and representative filesystem-safety behavior after the change.
  • proof: sufficient: Contributor real behavior proof is sufficient. The updated PR body contains exact-head terminal output demonstrating TypeScript 7 prepack, tarball installation, all exports, and representative filesystem-safety behavior after the change.
Evidence reviewed

What I checked:

  • Unique work remains: Current main still declares TypeScript 6.0.3 and pnpm 10.33.2, so the toolchain refresh and TypeScript 7 compatibility change are not already implemented. (package.json:120, 6f358b3ebf47)
  • Focused compiler compatibility change: The branch replaces direct resolution of TypeScript's internal bin path with resolution through the installed package manifest's declared tsc binary. (scripts/prepack-build.mjs:8, 898876c2df37)
  • Exact-head package proof: The PR body shows TypeScript 7.0.2, successful prepack and tarball installation, all 19 exports importing, and representative containment failures leaving external and valid state unchanged. (898876c2df37)
  • Cross-platform validation: Node 22 and Node 24 checks pass on macOS, Ubuntu, and Windows; workflow lint, coverage, and benchmarks also pass on the exact head. (.github/workflows/ci.yml:43, 898876c2df37)
  • Package and workflow pins remain coordinated: The packageManager field and the benchmark, CI, and coverage workflows consistently move to pnpm 10.34.5, while Crabbox hydration independently advances its pnpm 11 pin. (package.json:131, 898876c2df37)

Likely related people:

  • steipete: Prior repository release and package history connects this contributor to package publication, lockfile maintenance, and the prepack surface beyond merely proposing this PR. (role: recent package and release contributor; confidence: high; commits: de07f4f69176, 898876c2df37; files: package.json, pnpm-lock.yaml, scripts/prepack-build.mjs)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (1 earlier review cycle)
  • reviewed 2026-07-13T11:31:46.934Z sha 898876c :: needs real behavior proof before merge. :: none

@clawsweeper clawsweeper Bot added proof: sufficient Contributor real behavior proof is sufficient. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. and removed rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. labels Jul 13, 2026
@steipete
steipete merged commit b6fa049 into main Jul 13, 2026
19 checks passed
@vincentkoc
vincentkoc deleted the agent/refresh-toolchain branch August 2, 2026 07:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

P3 Low-risk cleanup, docs, polish, ergonomics, or speculative feature. proof: sufficient Contributor real behavior proof is sufficient. rating: 🦞 diamond lobster Very strong PR readiness with only minor maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant