Skip to content

fix(cli): rename aactl binary to awrit (TD-CLI-001)#8

Merged
devonartis merged 1 commit into
developfrom
fix/td-cli-001-aactl-to-awrit-rename
Apr 10, 2026
Merged

fix(cli): rename aactl binary to awrit (TD-CLI-001)#8
devonartis merged 1 commit into
developfrom
fix/td-cli-001-aactl-to-awrit-rename

Conversation

@devonartis

Copy link
Copy Markdown
Owner

Summary

Mechanical rename of the CLI binary from aactl to awrit across the ship-to-main surface. No logic changes — pure directory, file, and string rename. Aligns the CLI tool identity with the product brand.

Resolves: TD-CLI-001 (marked RESOLVED in TECH-DEBT.md).

Scope

Renames (git mv, history preserved):

  • cmd/aactl/cmd/awrit/
  • docs/aactl-reference.mddocs/awrit-reference.md

String rewrites across ~36 files:

  • Cobra Use field in root.go
  • cmd/broker/main.go error message
  • .github/workflows/ci.yml build step
  • .gitignore (both /awrit and /aactl listed during transition)
  • internal/cfg/cfg.go + internal/cfg/configfile.go user-visible comments
  • 10 docs files, 2 scripts, README, CONTRIBUTING, docker-compose.yml
  • 8 test files (env.sh + user-stories.md + LIVE-TEST-TEMPLATE.md + regression-plan.md)

Intentionally NOT updated (historical records)

  • tests/*/evidence/*.md — past test run evidence describes what happened at the time. Rewriting would misrepresent history.
  • CHANGELOG.md historical entries — same principle. Only the new Unreleased entry is added.
  • MEMORY.md, FLOW.md, .plans/**, .claude/**, .agents/** — stripped from main, developer-facing tracking uses the old name for historical context.

NOT in scope (separate work)

  • Go module path rename (github.com/devonartis/agentauth) — gated on the GitHub repo rename
  • agentauthagentwrit brand sweep across docs for the TD-TOKEN-001 / TD-CFG-001 / TD-010 default changes — separate direct-push to develop per explicit user instruction ("push not a pr for the docs")

Test plan

  • go build ./... clean (cmd/awrit now compiles)
  • go vet ./... clean
  • gofmt -l returns empty
  • go test ./... — all packages pass locally (16/16 including the new cmd/awrit test)
  • CI: 13 gates + gates-passed aggregator green
  • CI docker-build gate validates the broker image still builds with the new cmd/awrit path
  • CI smoke-l25 gate validates the broker + awrit CLI still work end-to-end against the L2.5 contract

Mechanical rename of the CLI binary from aactl to awrit across the
ship-to-main surface. No logic changes — pure directory/file/string
rename to align the CLI identity with the product brand.

Production:
- cmd/aactl/ -> cmd/awrit/ (directory rename via git mv, preserves history)
- docs/aactl-reference.md -> docs/awrit-reference.md (file rename)
- cmd/awrit/root.go: Cobra Use field "aactl" -> "awrit"
- cmd/broker/main.go: error message "Run 'aactl init'..." -> "Run 'awrit init'..."
- .github/workflows/ci.yml: go build ./cmd/aactl -> ./cmd/awrit
- .gitignore: /awrit added alongside /aactl (both listed during transition
  so stray binaries under either name stay untracked)
- internal/cfg/configfile.go: user-visible aactl references in comments updated
- internal/cfg/cfg.go: aactl references in inline doc comments updated

Docs + scripts + tests (bulk sed):
- docs/api.md, docs/architecture.md, docs/awrit-reference.md,
  docs/common-tasks.md, docs/design-decisions.md, docs/getting-started-operator.md,
  docs/integration-patterns.md, docs/scenarios.md, docs/scope-model.md,
  docs/troubleshooting.md
- scripts/gates.sh, scripts/stack_up.sh
- README.md, CONTRIBUTING.md, docker-compose.yml
- tests/LIVE-TEST-TEMPLATE.md, tests/app-launch-tokens/env.sh,
  tests/p0-production-foundations/{env.sh, user-stories.md},
  tests/p1-admin-secret/{env.sh, user-stories.md},
  tests/sec-l1/regression-plan.md,
  tests/sec-l2a/{env.sh, user-stories.md}

Intentionally NOT updated (historical records):
- tests/*/evidence/*.md — past test run evidence files describe what
  happened at the time using the tool name as it existed then. Rewriting
  these would misrepresent history.
- CHANGELOG historical entries — same principle. Only the new "Unreleased"
  entry for this rename is added.
- MEMORY.md, FLOW.md, .plans/**, .claude/**, .agents/** — stripped from
  main anyway, developer-facing tracking that uses the old name for
  historical context.

NOT in scope:
- Go module path rename (github.com/devonartis/agentauth) — gated on the
  GitHub repo rename, separate work
- agentauth -> agentwrit brand sweep across docs for the TD-TOKEN-001 /
  TD-CFG-001 / TD-010 defaults — separate direct-push to develop per user
  instruction ("push not a pr for the docs")

Validation: go build ./..., go vet ./..., gofmt -l, go test ./... all
green across all 16 packages (cmd/awrit now compiles as the CLI binary).

Marks TD-CLI-001 RESOLVED in TECH-DEBT.md.
@devonartis devonartis merged commit a958a3b into develop Apr 10, 2026
17 checks passed
@devonartis devonartis deleted the fix/td-cli-001-aactl-to-awrit-rename branch April 10, 2026 19:50
devonartis added a commit that referenced this pull request Apr 12, 2026
Includes:
- PR #6: hardcoded identity audit fixes (TD-TOKEN-001/002/003, TD-CFG-001/002, TD-TEST-001)
- PR #7: adminTTL → cfg.AdminTokenTTL (TD-010)
- PR #8: aactl → awrit binary rename (TD-CLI-001)
- PR #11: docs audit P1/P2 corrections + docs-layout-archon-style sweep
- PR #12: runtime rebrand alignment — problemdetails URN, obs metrics,
  awrit init config path (TD-RUNTIME-001, TD-OBS-001, TD-CLI-002),
  GitHub repo rename agentauth → agentwrit, Go module path rename,
  README/CONTRIBUTING/docs sweep, CI brand-alignment gate
- Direct-to-develop: brand sweep docs (684083b)

Stripped 16 dev-only paths: MEMORY.md, FLOW.md, TECH-DEBT.md,
MEMORY_ARCHIVE.md, CLAUDE.md, AGENTS.md, COWORK_SESSION.md,
COWORK_DOCS_AUDIT.md, .plans/, .claude/, .agents/, audit/, adr/,
.vscode/, .active_module, generate_pdf.py.
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