Skip to content

refactor: migrate workspace.core + wiki.core onto @statewalker/webrun-builder - #3

Merged
mkotelnikov merged 6 commits into
mainfrom
webrun-builder
Aug 3, 2026
Merged

refactor: migrate workspace.core + wiki.core onto @statewalker/webrun-builder#3
mkotelnikov merged 6 commits into
mainfrom
webrun-builder

Conversation

@mkotelnikov

Copy link
Copy Markdown
Contributor
  • workspace.core: ProjectBuilder becomes a thin extends BuildEngine<Project> adapter (host = project), so requireAdapter(ProjectBuilder) + every wiki/webapp handler stay unchanged (byte-identical, wiki.core 170 green). The 6 engine files moved to webrun-builder; builders/index.ts uses explicit named re-exports to shadow star-export collisions.
  • Dep swap shared-dataflowwebrun-dataflow/webrun-builder (workspace:*).
  • Pre-existing test-drift fixes (per request): webapp.core ~deps assertion, workspace.test void callbacks.

Coordinated cross-repo change — part of Phase 1 of the webrun-monorepo consolidation. This PR is one of four interdependent PRs that must be reviewed and merged together:

  • statewalker/webrun-files (receives the moved/extracted packages)
  • statewalker/statewalker-shared (loses shared-dataflow)
  • statewalker/statewalker-workbench (migrates onto webrun-builder)
  • statewalker/webrun-wire (loses webrun-modules)

Merging any one alone will break the workspace graph. Do not merge individually.

Verification (whole set, via the umbrella): webrun-dataflow 131 · webrun-modules 100 · webrun-builder 3 · workspace.core 79 · wiki.core 170 · webapp.core 24 — all green; umbrella build exits 0; tsc --noEmit clean; zero @statewalker/shared-* deps in the webrun-files monorepo.

Process: built under /adversary-builder — plan hardened by 4 independent critics (loop-D), implementation hardened by 4 more (loop-F) that verified the engine + dataflow substrate byte-identical against the original (diff, not just tests). History preserved on all moves.

🤖 Generated with Claude Code

mkotelnikov and others added 6 commits August 3, 2026 21:23
…brun-dataflow

Rewrite the 3 builder import sites (project-builder, transaction-store,
updates-store) from @statewalker/shared-dataflow to @statewalker/webrun-dataflow,
and drop the @statewalker/shared-dataflow catalog entry from pnpm-workspace.yaml.
The workspace.core/wiki.core package.json deps are dropped separately (Task 4/5).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ce.core) + drop unused (wiki.core)

Folds the Task 4/5 dep-drop into Task 1 to keep the umbrella installable between tasks
(removing the catalog entry orphans consumers otherwise). Baseline green: webrun-dataflow 131,
workspace.core 81, wiki.core 170.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ojectBuilder = BuildEngine<Project> adapter

Delete the 6 extracted builder files (now in webrun-builder); ProjectBuilder becomes a thin
BuildEngine<Project> adapter (host=project) so requireAdapter + all wiki/webapp handlers stay
unchanged. builders/index.ts uses explicit named re-exports (RegisteredBuilder/BuilderProvider/
BuilderHandler from ./types.js; Logger/NULL_LOGGER from ../types/logger.js) to shadow star-export
collisions. workspace.core 79 (81-2 moved json-io), wiki.core 170 byte-identical.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ap workspace.test onLoad/onUnload callbacks

- webapp.core module-server test asserted the pre-~deps-proxy output; updated to the current
  same-origin ~deps proxy path (pinned-version check lives in webrun-modules' own suite).
- workspace.test onLoad/onUnload callbacks returned push()'s number where void is expected (tsc).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ant doc + drop dead type re-exports

- document that ProjectBuilder resolves the logger once at construction, so
  the host must register its LoggerAdapter before resolving it
- remove 6 dead passthrough re-exports from builders/types.js (they reach
  the package root via index.ts's export *); keep the 3 Project-bound aliases

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
workspace.core migrated onto @statewalker/webrun-builder: the signal-driven
build engine (BuildEngine<THost>) plus its stores/scanner/ignore moved out;
workspace.core now keeps only the thin ProjectBuilder Project-bound adapter.
Update the two READMEs that attributed the build engine itself to
workspace.core. Public builder API (ProjectBuilder, registerBuilder,
BuilderProvider, ignore) is unchanged, so public-API-only docs are left as-is.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mkotelnikov
mkotelnikov merged commit b8b4d50 into main Aug 3, 2026
1 check failed
@mkotelnikov
mkotelnikov deleted the webrun-builder branch August 5, 2026 22:19
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