Document and verify independent output destinations

This commit is contained in:
2026-10-03 13:53:05 +00:00
parent ddfc3dd4c7
commit 6ae1d7cd5f
8 changed files with 145 additions and 38 deletions

View File

@@ -1,7 +1,7 @@
# Implementation Plan: Independent Output Destinations
**Last updated:** 2026-10-03
**Status:** Stage 1 complete; Stage 2 pending.
**Status:** Complete; Stages 1–2 implemented and verified.
**Audience:** gpt-5.6-terra coding agent.
## Scope and Execution
@@ -94,6 +94,9 @@ destination constraints, then commit the coherent code/test unit.
**Files:** `cmd/audita/main_integration_test.go`, `docs/cli.md`,
`docs/config.md`, `docs/operations.md`,
`docs/integrations/subprocess.md`, and `docs/roadmap/narratio-feature.md`.
**Completion:** Complete — the full Go test suite, maintained configuration
examples, affected Markdown links, and whitespace checks pass.
Touch another document only if its current statement actually conflicts with
the new behavior.

View File

@@ -2,10 +2,10 @@
**Last updated:** 2026-10-03
**Status:** Proposed; not implemented. This roadmap records the intended external
behavior and the reasons for it. The [implementation plan](implementation.md)
owns the ordered work; the [Narratio request](feature-request-narratio.md)
provides the consumer context.
**Status:** Implemented and verified. This roadmap records the external behavior
and the reasons for it. The [implementation plan](implementation.md) records the
completed work; the [Narratio request](feature-request-narratio.md) provides the
consumer context.
## Purpose
@@ -21,8 +21,9 @@ working-state lifecycle; Narratio owns its destination paths and operator views.
- `--output FILE` writes the transcript to `FILE`, or stdout when omitted.
- Ordinary reporting is enabled by default. With file output, `errors.yml`,
`recoveries.yml`, and `report.md` go beside the transcript. With stdout output,
`--report-dir DIR` or `reporting.stdout_dir` selects their directory. The
current selection logic ignores `--report-dir` when `--output` is supplied.
`--report-dir DIR` or `reporting.stdout_dir` selects their directory. An
explicit `--report-dir` also selects reports for file output; without it, the
configured `reporting.stdout_dir` value remains stdout-only.
- Reports are initialized before input processing, then updated on completion or
failure where possible. Early configuration or destination failures can occur
before report initialization and therefore leave no report files.
@@ -30,10 +31,10 @@ working-state lifecycle; Narratio owns its destination paths and operator views.
enable debug capture. Capture is enabled by `diagnostics.debug` or an explicit
`--debug`; when enabled, Audita retains a `run-<id>` directory beneath the
selected root. Debug remains optional, including after unsuccessful runs.
- The output session already receives distinct transcript and report paths and
checks active destinations for conflicts with each other and protected inputs.
The limitation is primarily in CLI report-directory selection, not in report
encoding or the output session's basic shape.
- The output session receives distinct transcript and report paths and checks
active destinations for conflicts with each other and protected inputs. The
CLI selects the report destination while the output session retains its
existing collision checks, preflight, initialization, and finalization.
The current contracts are in [CLI](../cli.md), [configuration](../config.md),
[operations](../operations.md), [subprocess guidance](../integrations/subprocess.md),