Skip to content

chore(tooling): enforce formatting and refresh TypeScript checks#104239

Merged
steipete merged 15 commits into
mainfrom
codex/toolchain-typecheck-hardening
Jul 11, 2026
Merged

chore(tooling): enforce formatting and refresh TypeScript checks#104239
steipete merged 15 commits into
mainfrom
codex/toolchain-typecheck-hardening

Conversation

@steipete

@steipete steipete commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

What Problem This Solves

Resolves a tooling gap where repository formatting was only enforced by local hooks, allowing formatter drift to accumulate outside hook-enabled environments. It also updates the exact-pinned TypeScript-native, Oxlint, and Oxfmt toolchain.

Why This Change Was Made

The aggregate local check, CI lint shard, and docs-only CI path now run format:check. The docs-only gate runs before the job clones the separate ClawHub repository, keeping the formatter scoped to OpenClaw. The change updates exact tool pins, removes the unused ScriptHost library, applies the Oxfmt 0.58 baseline, and resolves the newly enabled Oxlint findings.

The audit also confirmed that scripts/**/*.ts cannot be added honestly to the existing project graph as a small config-only change: release and E2E scripts import built artifacts, and the remaining source scripts expose substantial pre-existing type debt. This PR does not hide that debt with weakened compiler settings or exclusions.

The attempted Node 22 type-definition pin was also rejected after exact CI proved that it does not model the repository's current crypto, filesystem, and test APIs. The existing Node 26 type surface remains until a dedicated Node-22 compatibility lane can be introduced without weakening project-wide checking.

User Impact

No runtime behavior change. Contributors and CI now get deterministic formatting enforcement, including docs-only changes, and the repository uses current exact-pinned TypeScript/Oxc tooling.

Evidence

  • Blacksmith Testbox: Oxfmt 0.58.0 checked 19,753 files clean on Linux.
  • Blacksmith Testbox: focused Oxlint 1.73.0 check of every newly reported switch site completed with zero errors.
  • Exact-head GitHub CI on the final commit.
  • Autoreview (Codex, xhigh) rerun after each accepted finding.
  • git diff --check clean.

@steipete
steipete requested a review from a team as a code owner July 11, 2026 06:32
@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation channel: discord Channel integration: discord channel: line Channel integration: line channel: matrix Channel integration: matrix channel: slack Channel integration: slack channel: telegram Channel integration: telegram channel: tlon Channel integration: tlon channel: voice-call Channel integration: voice-call channel: zalouser Channel integration: zalouser app: web-ui App: web-ui gateway Gateway runtime extensions: memory-core Extension: memory-core extensions: open-prose Extension: open-prose cli CLI command changes scripts Repository scripts commands Command implementations docker Docker and sandbox tooling agents Agent runtime and tooling channel: feishu Channel integration: feishu extensions: kimi-coding extensions: venice extensions: kilocode channel: qqbot extensions: qa-lab extensions: memory-wiki extensions: codex plugin: google-meet extensions: deepinfra labels Jul 11, 2026
@openclaw-barnacle openclaw-barnacle Bot added extensions: meta Extension: meta size: XL maintainer Maintainer-authored PR labels Jul 11, 2026
@github-actions github-actions Bot added the dependencies-changed PR changes dependency-related files label Jul 11, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Dependency Guard

This PR changes dependency-related files. Maintainers should confirm these changes are intentional.

Changed files:

  • package.json
  • pnpm-lock.yaml

Maintainer follow-up:

  • Review whether the dependency changes are intentional.
  • Inspect resolved package deltas when lockfile, shrinkwrap, or workspace dependency policy changes are present.
  • Treat package-lock.json and npm-shrinkwrap.json diffs as security-review surfaces.
  • Run pnpm deps:changes:report -- --base-ref origin/main --markdown /tmp/dependency-changes.md --json /tmp/dependency-changes.json locally for detailed release-style evidence.

@github-actions

github-actions Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

Dependency graph changes noted

This PR includes dependency graph changes. The dependency guard is informational because the PR author is a repository admin or a member of @openclaw/openclaw-secops.

  • Current SHA: 2306830af9ae0cb5fddb63a797d2eefb28289a5b
  • Trusted actor: @steipete
  • Trusted role: pull request author; openclaw-secops

Security review is still recommended before merge when the dependency graph change is intentional.

@clawsweeper

clawsweeper Bot commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

Codex review: stale review; fresh review needed.

Summary
The latest durable ClawSweeper review was for head 2c7e4165f6966ac4c5aa455b302ad0cdcd5fa965, but the PR head is now 2306830af9ae0cb5fddb63a797d2eefb28289a5b. Its old verdict and PR readiness labels are no longer current.

Next step
Run or wait for a fresh ClawSweeper review on the current PR head.

@steipete
steipete merged commit 7bf80dc into main Jul 11, 2026
102 checks passed
@steipete
steipete deleted the codex/toolchain-typecheck-hardening branch July 11, 2026 08:09
@steipete

Copy link
Copy Markdown
Contributor Author

Merged via squash.

chenyangjun-xy pushed a commit to chenyangjun-xy/openclaw that referenced this pull request Jul 11, 2026
…nclaw#104239)

* chore(tooling): enforce current formatter and refresh checks

* chore(tooling): keep release changelog formatter-owned

* chore(tooling): retain compatible Node type surface

* ci: enforce formatting for docs-only changes

* ci: isolate docs formatter check

* chore(tooling): apply updated lint and format rules

* chore(tooling): satisfy updated switch lint

* style(ui): apply Linux formatter layout

* test(doctor): match quiet local audio contribution

* test(doctor): assert quiet output only

* test(doctor): follow restored information contract
github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jul 12, 2026
…nclaw#104239)

* chore(tooling): enforce current formatter and refresh checks

* chore(tooling): keep release changelog formatter-owned

* chore(tooling): retain compatible Node type surface

* ci: enforce formatting for docs-only changes

* ci: isolate docs formatter check

* chore(tooling): apply updated lint and format rules

* chore(tooling): satisfy updated switch lint

* style(ui): apply Linux formatter layout

* test(doctor): match quiet local audio contribution

* test(doctor): assert quiet output only

* test(doctor): follow restored information contract
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agents Agent runtime and tooling app: web-ui App: web-ui channel: discord Channel integration: discord channel: feishu Channel integration: feishu channel: line Channel integration: line channel: matrix Channel integration: matrix channel: qqbot channel: raft Channel integration: Raft channel: slack Channel integration: slack channel: telegram Channel integration: telegram channel: tlon Channel integration: tlon channel: voice-call Channel integration: voice-call channel: zalouser Channel integration: zalouser cli CLI command changes commands Command implementations dependencies-changed PR changes dependency-related files docker Docker and sandbox tooling docs Improvements or additions to documentation extensions: amazon-bedrock extensions: codex extensions: copilot extensions: deepinfra extensions: diagnostics-otel Extension: diagnostics-otel extensions: diagnostics-prometheus extensions: kilocode extensions: kimi-coding extensions: memory-core Extension: memory-core extensions: memory-wiki extensions: meta Extension: meta extensions: ollama extensions: open-prose Extension: open-prose extensions: qa-lab extensions: venice gateway Gateway runtime maintainer Maintainer-authored PR plugin: google-meet scripts Repository scripts size: XL

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant