Skip to content

chore!: rename to caia-cli — repo, distribution, and import package (3.0.0) - #11

Merged
Ali Bahaloo (alibahaloo) merged 1 commit into
mainfrom
chore/rename-caia-cli
Jul 26, 2026
Merged

chore!: rename to caia-cli — repo, distribution, and import package (3.0.0)#11
Ali Bahaloo (alibahaloo) merged 1 commit into
mainfrom
chore/rename-caia-cli

Conversation

@alibahaloo

Copy link
Copy Markdown
Collaborator

The command has always been caia. The repo, the uv/pip distribution name, and the import package still carried the long form. This aligns all three.

Before After
Repo xavient/cisco-advisory-impact-agent xavient/caia-cli (already renamed)
Distribution cisco-advisory-impact-agent caia-cli
Import package cisco_advisory_impact_agent/ caia/
Command caia caia — unchanged
Product name Cisco Advisory Impact Agent unchanged

caia-cli names the artifact; "Cisco Advisory Impact Agent" remains the product name and is what the splash banner prints under the CAIA wordmark. Everything already user-facing — the command, CAIA_* environment variables, and the per-user config directory — was caia before this change and is untouched.

Breaking change

Existing installs cannot reach 3.0.0 through caia --update. GitHub redirects the old repo URL, so the git fetch succeeds, but uv then fails on a distribution name mismatch (caia-cli != cisco-advisory-impact-agent). The failure is loud and non-destructive: the current install keeps working. Users migrate with

uv tool uninstall cisco-advisory-impact-agent
uv tool install caia-cli --from git+https://github.com/xavient/caia-cli

Uninstall-first rather than --force, because two uv tools both providing a caia executable is the one messy state here, and because it sidesteps the Windows self-uninstall file lock. Saved credentials survive — the per-user config directory was already named caia and neither step touches it, so no re-running --config.

VERSION goes to 3.0.0: the documented install path breaks for existing installs, which is MAJOR under the repo's own semver rule.

Changes

  • pyproject.toml — dist name, script target, packages, Homepage, Repository
  • cisco_advisory_impact_agent/ -> caia/git mv, so all 13 modules record as renames and git blame survives
  • caia/version.pyDIST_NAME, DEFAULT_REPO, UA, the three constants driving --version/--update/--uninstall
  • tests/ — imports across 10 files, plus the two dist-name string assertions in test_version.py
  • README.md and docs/index.html — install commands, all repo links, the releases-API fetch behind the version pill, and a migration note in both (the constitution's Documentation gate requires the two to mirror each other)
  • tools/install-test.shREPO_URL, RELEASES_API, install command
  • .specify/memory/constitution.md — 2.2.0 -> 2.2.1 (PATCH) for the install command in the Distribution constraint, with a Sync Impact Report entry. No principle or gate changes in substance.

Needed no changes: both workflows, CONTRIBUTING.md, .env.example, .gitignore, tools/release.py — all use <repo> placeholders, globs, or were already caia-based.

specs/ and brds/ are left as written. They are frozen spec-kit records that already carry an even earlier name (cisco-advisory-impact-analyzer) which was never retro-edited; rewriting them would falsify the record.

Verification

  • 244 tests pass (python -m unittest discover -s tests)
  • Clean-venv pip install . -> metadata resolves as caia-cli == 3.0.0, the caia entry point lands on PATH, and the documented python -m caia.cli fallback works
  • Landing page renders — the migration callout reuses the existing .callout styling
  • Pre-release window is safe: --version swallows the failed latest-check and just prints the version; --update reports "Could not determine the latest version" and exits 3 rather than crashing, until the 3.0.0 Release is published

After merge

Tag 3.0.0 (python tools/release.py) so the version check resolves, confirm GitHub Pages now serves at xavient.github.io/caia-cli, then send existing users the migration command above.

🤖 Generated with Claude Code

…3.0.0)

The command has always been `caia`; the repo, the uv/pip distribution name, and the
import package still carried the long form. Align all three:

  repo          xavient/cisco-advisory-impact-agent -> xavient/caia-cli
  distribution  cisco-advisory-impact-agent         -> caia-cli
  package       cisco_advisory_impact_agent/        -> caia/

The product name "Cisco Advisory Impact Agent" is unchanged — caia-cli names the
artifact, not the product.

BREAKING CHANGE: existing installs cannot reach this through `caia --update`, because
the distribution name changed and uv fails on the name mismatch. Users remove the old
tool with `uv tool uninstall cisco-advisory-impact-agent` and install `caia-cli`. The
per-user config directory is already named `caia`, so saved credentials survive the
move; README.md and docs/index.html both carry that migration note.

Historical spec and BRD records under specs/ and brds/ are left as written, matching
the existing precedent for the earlier `cisco-advisory-impact-analyzer` name.

Constitution 2.2.0 -> 2.2.1 (PATCH): the install command in the Distribution
constraint, which the Documentation gate requires to stay accurate.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@alibahaloo Ali Bahaloo (alibahaloo) added the enhancement New feature or request label Jul 26, 2026
@alibahaloo
Ali Bahaloo (alibahaloo) merged commit 36aa7a6 into main Jul 26, 2026
2 checks passed
@alibahaloo
Ali Bahaloo (alibahaloo) deleted the chore/rename-caia-cli branch July 26, 2026 05:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant