Record remaining adoption and output-failure decisions

This commit is contained in:
2026-11-09 14:02:56 +00:00
parent 267aca4b76
commit 97f6f48098
2 changed files with 96 additions and 6 deletions

View File

@@ -1,6 +1,6 @@
# CommandKit Adoption Outline
**Updated:** 2026-11-08
**Updated:** 2026-11-09
**Status:** Initial outline. Adoption is part of the agreed target, not an optional
future evaluation. Implementation is gated on the upstream release described
@@ -44,6 +44,7 @@ Before opening the gate, review the published APIs against the capture and
destination-validation cases below, select compatible released ckconfig and ckprompt
versions, and record the exact versions and source revisions in the
[master dependency selection](library-adoption.md#baseline-and-selected-dependency-set).
The concrete release selection is [master open decision 1](library-adoption.md#1-commandkit-released-dependency-set).
No future version number is assumed. The integrations need new releases only
if their existing releases are incompatible with the selected core version.
@@ -209,8 +210,9 @@ design and inventory work can proceed before it opens.
framework around CommandKit.
4. Adapt domain process handlers to reporting/outcome boundaries, preserving
transcript/artifact integrity, cancellation, and partial success. Apply the
resolved visibility and completion-summary rules above; specify write failures
before implementation. Standard command statuses, including comparison status
resolved visibility and completion-summary rules above; resolve
[output-failure behavior](#output-failure-behavior) before implementation.
Standard command statuses, including comparison status
3, should not be forced into the old Audita-only status table without a domain
reason. Validate quiet mode against the transcript destination before creating
outputs or starting model work, using the released reporting-mode accessor.
@@ -318,3 +320,30 @@ quiet destination validation. Presence information remains available through
native typed input. Resolve any remaining integration gap upstream rather than
inspecting private state, inferring input from emitted output, redeclaring the core flag,
or reparsing arguments. The mode accessor alone does not unblock capture wiring.
## Open Decisions
### Output-Failure Behavior
This is decision 3 in the [master discussion order](library-adoption.md#open-decisions).
Specify how failed transcript, report, debug-artifact, and standard reporter writes
influence the process outcome. The existing visibility rules and prohibition on
a successful completion summary after required-output failure remain selected.
**Recommendation:** required transcript and enabled ordinary-report failures fail
the invocation. Optional debug-artifact failures remain nonfatal and use the
standard reporting path with existing redaction and visibility rules. Standard
CommandKit reporter failures follow native behavior rather than an Audita-owned
replacement policy. This preserves the distinction between delivering the
requested product and retaining supplemental diagnostic evidence, while avoiding
a second reporting implementation. Validate the exact adopted reporter behavior
and cover early and late output failures, including a report failure after the
transcript has already been written.
**Alternative:** also make debug-artifact failures fatal when debug capture was
explicitly requested. This treats capture as a required deliverable and makes
incomplete evidence visible in the process outcome, but can fail an otherwise
successful transcript run solely because supplemental evidence could not be
saved. Standard reporter behavior would still remain upstream-owned. Choose the
artifact requirement deliberately rather than infer it from the debug reporting
mode, which remains independent of capture.