Skip to content

refactor: relocate workspace/cli concerns out of orchestrator (isolation 2/7)#117

Merged
Exelord merged 1 commit into
mainfrom
claude/module-isolation-2
Jun 10, 2026
Merged

refactor: relocate workspace/cli concerns out of orchestrator (isolation 2/7)#117
Exelord merged 1 commit into
mainfrom
claude/module-isolation-2

Conversation

@Exelord

@Exelord Exelord commented Jun 10, 2026

Copy link
Copy Markdown
Member

Migration PR 2 of the module-isolation series (docs/design/module-isolation-2026-06.md). Mechanical moves, zero behavior change, history-following renames:

  • orchestrator/nested-dirs.tsworkspace/nested-dirs.ts — project-boundary geometry is a workspace concern; it only fed the orchestrator by accident of history.
  • orchestrator/fingerprint.tsworkspace/fingerprint.ts — workspace-file hashing, byte-identical move.
  • orchestrator/plan-format.tscli/plan-format.ts — plan rendering (text/JSON/DOT) is presentation; orchestrator keeps the RunPlan data types. Consistent with cli/format.ts owning formatBytes.
  • ProjectEntry moved from graph/task-graph.ts to workspace/workspace.ts (it's "discovered project + loaded config" — a workspace product); graph re-exports it so importers don't churn in this PR.

Docs/module pages + layout trees updated to match. The boundary-law test from #116 passes — every new edge (graph → workspace, cli → orchestrator) is in the ALLOWED matrix.

Test plan

  • 538/538 tests, lint, format — full CI gate green in worktree

🤖 Generated with Claude Code

Module-isolation migration PR 2 (docs/design/module-isolation-2026-06.md):

- ProjectEntry moves to workspace/workspace.ts — it is the joint
  product of discovery + config loading, not a graph concern.
  graph/task-graph.ts keeps a type re-export so importers don't churn.
- nested-dirs.ts and fingerprint.ts move to workspace/ — project
  geometry and workspace-file hashing are workspace products; their
  old home forced workspace logic to import from graph.
- plan-format.ts moves to cli/ — pure presentation; the orchestrator
  keeps the RunPlan data types (cli → orchestrator edge is allowed).

Mechanical relocation, zero behavior change. Boundary test still
green; docs module-path references updated.
@Exelord Exelord merged commit 1ce7496 into main Jun 10, 2026
1 check passed
@Exelord Exelord deleted the claude/module-isolation-2 branch June 10, 2026 18:41
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