Skip to content

Run 3 Print Diagnostics — Implementation Summary

Date: 2026-04-15 → 2026-04-18 Repositories: operations, documentation Plan: run-3-diagnostics/project-plan.md Exit gate: plan/run-3-diagnostics/validate-exit.sh Phase doc: phase-3-diagnostics/verification.md

All six tracker tasks completed. Exit criteria passed.

Three diagnostic capabilities exposed on every print endpoint:

  • debug=true — response includes the constructed Documint payload alongside the normal result, per SAC::PRINT-DX::FR-0003..0005.
  • dry-run=true — payload is constructed but Documint is not called and no print-status side effects occur, per SAC::PRINT-DX::FR-0006..0009.
  • live-print documentation alignment — already-implemented parameter documented as part of the diagnostics surface, per SAC::PRINT-DX::FR-0001..0002.

OpenAPI descriptions updated on every endpoint so the parameters appear in generated client docs and in the api-proxy types.

  • debugPayload: JsonElement? on GroupRenderResult rather than a separate DiagnosticRenderResult wrapper. The Run 2 refactor to renderGroups() removed the need for a wrapper type — the field on the existing per-group result is the smallest possible change.
  • Parameter precedence: dry-run > debug > live-print. Once dry-run=true, live-print is irrelevant (no Documint call) and debug=true is implicit (payload always returned). Documented in SAC::PRINT-DX and asserted in unit tests T-P3-007 / T-P3-008.
  • No print-status side effects in dry-run. Dry-run does not record a print event; this was the deliberate semantic that lets support staff inspect a payload without touching tenant state.
  • make build in operations — green; new unit tests for parameter precedence and dry-run side-effect-free behaviour.
  • Integration tests against ContainerizedPostgres — green.
  • API-level validation deferred to Run 4 (where dry-run is the primary technique used to validate other phases without Documint connectivity).
  • operations#163 (merge 7a81c9c), the diagnostics portion.

Copyright: (c) Arda Systems 2025-2026, All rights reserved