Skip to content

feat: multi-target-repo support#5

Open
ub-tech wants to merge 4 commits into
mainfrom
feat/multi-target-repo-support
Open

feat: multi-target-repo support#5
ub-tech wants to merge 4 commits into
mainfrom
feat/multi-target-repo-support

Conversation

@ub-tech

@ub-tech ub-tech commented Mar 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add scripts/repo-registry.ts — scans REPO_<ALIAS>_URL env vars to build a multi-repo registry, with backward compat for TARGET_REPO_URL
  • Update import-plan-to-linear.ts — validates ticket.repo against registry, per-repo overlap detection, writes ticket-repo-map.json
  • Update WORKFLOW.md — hooks resolve repo from ticket-repo-map.json, replace hardcoded your-target-repo with $TARGET_REPO_DIR, add .target-repo-dir sentinel
  • Update /ship — CI command resolution reads REPO_<ALIAS>_CI_COMMANDS, per-repo APPROVAL_REQUIRED_FROM
  • Update /plan-eng-review, /plan-ceo-review — auto-discovery reads per-repo doc paths
  • Update manifest template, commands, README, CLAUDE.md with multi-repo docs

Test plan

  • 22 unit tests pass for repo-registry.ts (multi-repo, backward compat, alias resolution, error cases)
  • Manual: set REPO_BACKEND_URL + REPO_FRONTEND_URL, run npx tsx scripts/repo-registry.ts
  • Manual: create manifest with multi-repo tickets, dry-run import-plan-to-linear.ts, verify ticket-repo-map.json
  • Manual: verify Symphony workspace creates correct repo directory from ticket-repo-map

🤖 Generated with Claude Code

ub-tech and others added 4 commits March 20, 2026 18:05
New scripts/repo-registry.ts scans REPO_<ALIAS>_URL env vars to build
a registry of target repos. Falls back to TARGET_REPO_URL for backward
compat. Includes 22 unit tests. Updates .env.example with REPO_* pattern
documentation and adds test:registry npm script.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
import-plan-to-linear.ts: validates ticket.repo against registry aliases,
scopes overlap detection per-repo, writes ticket-repo-map.json.

WORKFLOW.md: hooks resolve repo from ticket-repo-map.json, replace
hardcoded your-target-repo with $TARGET_REPO_DIR, add .target-repo-dir
sentinel for workspace directory resolution.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
/ship: CI command resolution reads REPO_<ALIAS>_CI_COMMANDS, per-repo
APPROVAL_REQUIRED_FROM, repo alias in PR body.

/plan-eng-review, /plan-ceo-review: auto-discovery reads per-repo
doc paths with global fallback.

planning-manifest-v2.template.json: add target_repos section.
plan-to-linear.md: ticket.repo must match registered alias.
kickoff.md: document multi-repo usage pattern.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
README: multi-repo config section with REPO_* variable table, updated
workspace directory structure diagram.

CLAUDE.md: document multi-repo config pattern and ticket.repo = registry
alias contract.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@ub-tech ub-tech force-pushed the feat/multi-target-repo-support branch from c5dfe5a to 4f53619 Compare March 20, 2026 23:49
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