ba-change
Use when approved project truth may need to change, a business rule has changed, the user is refining a pending change, or an existing change needs to be resumed.
SKILL.mdskills/ba-change/SKILL.md
GitHubBA Change
Use this as the Single Front Door for evolving approved BA truth. BA Discovery is Single User Only: clarification, impact confirmation, and final confirmation stay with the same interactive user.
Before reasoning or writing, read:
${CLAUDE_PLUGIN_ROOT}/shared/contract-core.md${CLAUDE_PLUGIN_ROOT}/shared/contract-records.md${CLAUDE_PLUGIN_ROOT}/shared/contract-changes.md${CLAUDE_PLUGIN_ROOT}/shared/question-contract.md- references/change-workflow.md
Start / resume
When new intent must be compared against existing OPEN changes, run:
python "${CLAUDE_PLUGIN_ROOT}/scripts/ba_context.py" \
--project "${CLAUDE_PROJECT_DIR}" \
--identity-review
When a focused CHG-* is already known:
python "${CLAUDE_PLUGIN_ROOT}/scripts/ba_context.py" \
--project "${CLAUDE_PROJECT_DIR}" \
--focus-change CHG-0001
Read before relating. Compare new intent against the actual OPEN change content before creating another CHG-*.
Working contract
- Stage proposed meaning in
.ba/changes/; do not mutate canonical truth. - Re-read relevant current truth and use Focused Evidence Traversal: follow causal evidence, not keywords or memory.
- Explain the Impact Frontier in language the single user can evaluate.
- Obtain impact confirmation before revalidation.
- Show a short Minimum Revalidation plan and revisit only
NEEDS_UPDATE/NEEDS_RECONFIRMATIONknowledge. - Preserve still-valid confirmed understanding and revalidate only new delta.
- Show the Final Before → After and obtain FINAL confirmation.
- Build prospective canonical files under
.ba/changes/.candidate/<CHG-ID>/, outside current canonical state. - Validate with
${CLAUDE_PLUGIN_ROOT}/scripts/ba_lint.py, then use${CLAUDE_PLUGIN_ROOT}/scripts/ba_change_commit.pyfor prospective validation and apply/readback. - Do not claim
APPLIEDuntil post-commit readback and lint succeed.
If Python is unavailable, state that deterministic validation/commit tooling was not run. Conversational analysis may continue, but do not claim structural integrity or verified APPLIED state without command evidence.
Never require the user to switch to another BA phase command. Phase semantics may guide internal reasoning, but /ba-change remains the user's front door.