Skip to content

feat: add workspace bridge core#309

Merged
logohere merged 3 commits into
mainfrom
feat/workspace-bridge
Jun 23, 2026
Merged

feat: add workspace bridge core#309
logohere merged 3 commits into
mainfrom
feat/workspace-bridge

Conversation

@logohere

@logohere logohere commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add .doghouse/workspace.json workspace manifest support
  • add WorkspaceContext / RepoContext core modules for N-repo products
  • add deterministic workspace graph generation
  • add dotdog workspace init/add/list/validate/graph
  • add read-only MCP workspace.list with structuredContent and trustedAsInstruction: false
  • add root-bound path helpers, secret redaction, and safe command runner
  • harden repo mapping to skip .env / secret-looking files and avoid absolute local repo roots in generated map prose
  • replace shell-string execSync usage in packages/dotdog/src with arg-array execFileSync
  • slim package metadata and add npm pack audit script

Verification

  • bun test
  • bun test packages/dotdog/__tests__/workspace.test.ts
  • bun run --cwd packages/dotdog lint
  • node scripts/check-pack.mjs
  • git diff --check
  • bun packages/dotdog/src/cli.ts workspace validate
  • bun packages/dotdog/src/cli.ts workspace graph --json

Specdog workspace smoke test

Validated a local specdog workspace using:

  • dotdog
  • dogbench
  • specdog-github-io
  • specs

The workspace graph emits all four repo nodes and explicit contains edges from workspace:specdog.

Self-review notes

  • Scope is intentionally limited to manifest/resolver/registry/graph/CLI/MCP read surface/security hardening.
  • This PR does not add cross-repo write orchestration or inferred cross-repo search/trace.
  • Workspace graph currently contains explicit repo/group/manifest facts only.

@logohere

Copy link
Copy Markdown
Collaborator Author

Self-review complete.

What I checked:

  • PR scope against the workspace-bridge handoff: manifest, resolver, registry, graph, CLI, MCP read surface, path safety, package slimming.
  • PR file list and diff scope.
  • GitHub checks after the follow-up portable-manifest commit.
  • Local verification previously run on this branch: bun test, bun run --cwd packages/dotdog lint, node scripts/check-pack.mjs, git diff --check, dotdog workspace validate, and dotdog workspace graph --json.
  • Specdog local workspace smoke test using dotdog, dogbench, specdog-github-io, and specs.

Issues found during self-review:

  • The original PR body had literal n characters instead of markdown newlines. Fixed by updating the PR body.
  • The committed .doghouse/workspace.json initially referenced local sibling repos from the smoke test. Fixed in bc91a2e by making it a portable single-repo dotdog workspace.
  • The PR includes prior branch carryover changes that move compiled DAG paths from .dotdog to .doghouse and add MCP graph coverage. Those appear intentional and are covered by tests.

Current status:

  • GitHub checks are green.
  • PR is mergeable.
  • No merge performed here because GitHub still reports required review.

Remaining follow-ups, intentionally out of this PR:

  • cross-repo write orchestration
  • inferred cross-repo search/trace
  • broader MCP workspace tool suite beyond workspace.list
  • user-facing docs for workspace workflows beyond the initial CLI surface

1 similar comment
@logohere

Copy link
Copy Markdown
Collaborator Author

Self-review complete.

What I checked:

  • PR scope against the workspace-bridge handoff: manifest, resolver, registry, graph, CLI, MCP read surface, path safety, package slimming.
  • PR file list and diff scope.
  • GitHub checks after the follow-up portable-manifest commit.
  • Local verification previously run on this branch: bun test, bun run --cwd packages/dotdog lint, node scripts/check-pack.mjs, git diff --check, dotdog workspace validate, and dotdog workspace graph --json.
  • Specdog local workspace smoke test using dotdog, dogbench, specdog-github-io, and specs.

Issues found during self-review:

  • The original PR body had literal n characters instead of markdown newlines. Fixed by updating the PR body.
  • The committed .doghouse/workspace.json initially referenced local sibling repos from the smoke test. Fixed in bc91a2e by making it a portable single-repo dotdog workspace.
  • The PR includes prior branch carryover changes that move compiled DAG paths from .dotdog to .doghouse and add MCP graph coverage. Those appear intentional and are covered by tests.

Current status:

  • GitHub checks are green.
  • PR is mergeable.
  • No merge performed here because GitHub still reports required review.

Remaining follow-ups, intentionally out of this PR:

  • cross-repo write orchestration
  • inferred cross-repo search/trace
  • broader MCP workspace tool suite beyond workspace.list
  • user-facing docs for workspace workflows beyond the initial CLI surface

@logohere logohere merged commit c6ae6cb into main Jun 23, 2026
2 checks passed
@logohere logohere deleted the feat/workspace-bridge branch June 23, 2026 23:21
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