nexus/.planning/phases/01-foundation/01-01-SUMMARY.md
Mikkel Georgsen 6c4272ce85 [nexus] chore: migrate .planning/ from agent repo to nexus repo
Planning artifacts (milestones v1.0-v1.2.1, v1.3 queue, PROJECT.md,
STATE.md, config) now live alongside the code they describe.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 03:55:42 +00:00

3.5 KiB

phase plan subsystem tags dependency_graph tech_stack key_files decisions metrics
01-foundation 01 branding
vocabulary
package
vitest
tdd
requires provides affects
@paperclipai/branding
VOCAB constant
VocabKey type
phase-02
phase-03
phase-04
added patterns
packages/branding/
shared-package pattern (mirrors packages/shared/)
created modified
packages/branding/package.json
packages/branding/tsconfig.json
packages/branding/vitest.config.ts
packages/branding/src/vocab.ts
packages/branding/src/vocab.test.ts
packages/branding/src/index.ts
vitest.config.ts
Kept @paperclipai/branding as package name (not @nexus/*) to stay upstream-compatible
Used as const for VOCAB to enable TypeScript literal type inference on all values
duration completed tasks_completed files_created files_modified
~2 minutes 2026-03-30 2 6 1

Phase 01 Plan 01: Branding Package Summary

One-liner: @paperclipai/branding package with 8-key VOCAB constant centralizing all Nexus display string renames (company→Workspace, ceo→Project Manager, appName→Nexus).

What Was Built

A new packages/branding/ workspace package that serves as the single string mutation surface for all Nexus fork display changes. Downstream phases (2, 3, 4) import VOCAB from this package to replace Paperclip terminology in UI strings, CLI output, and agent templates — without touching code identifiers, DB schema, or API routes.

Tasks Completed

Task Name Commit Files
1 Scaffold branding package with VOCAB constant and tests 3e7848ed packages/branding/ (6 files), pnpm-lock.yaml
2 Register branding package in root vitest config 9459619d vitest.config.ts

Verification Results

  • pnpm vitest run --project "@paperclipai/branding" — 9/9 tests pass
  • All 8 VOCAB keys present with correct Nexus values
  • Package exports VOCAB and VocabKey from packages/branding/src/index.ts
  • packages/branding/package.json sets "name": "@paperclipai/branding", "type": "module"
  • Root vitest.config.ts includes "packages/branding" in the projects array

VOCAB Keys Verified

Key Value
company Workspace
companies Workspaces
ceo Project Manager
board Owner
hire Add
fire Remove
appName Nexus
tagline Open-source orchestration for your agents

Deviations from Plan

Auto-fixed Issues

None — plan executed exactly as written.

Notes

The plan's verify command pnpm vitest run --project packages/branding uses the directory path as filter, which does not match. Vitest 3.2.4 resolves project names from package.json names, so the correct command is pnpm vitest run --project "@paperclipai/branding". Tests pass correctly with this command. The root vitest.config.ts entry "packages/branding" is still the correct way to register the workspace project (vitest resolves the config file from the path and reads the package name).

Known Stubs

None — all VOCAB values are fully specified strings, not placeholders.

Self-Check: PASSED

  • packages/branding/package.json: FOUND
  • packages/branding/src/vocab.ts: FOUND
  • packages/branding/src/index.ts: FOUND
  • packages/branding/src/vocab.test.ts: FOUND
  • packages/branding/tsconfig.json: FOUND
  • packages/branding/vitest.config.ts: FOUND
  • vitest.config.ts (updated): FOUND
  • Commit 3e7848ed: FOUND
  • Commit 9459619d: FOUND
  • 9/9 tests passing: CONFIRMED