capture.py file-level

at sha256:a · View file ↗ · Intel ↗

History
1 files
1 commits
0 hotspots
0 🧊 dead
0 💥 blast risk
sha256:6 fix(ISR): default require_independent_second_reviewer to require Opera… · aaronrene · Sep 2, 2026
1 """Capture JSON emitted by CLI commands for HTTP handlers."""
2
3 from __future__ import annotations
4
5 from typing import Any
6
7 from cli.output import OutputContext
8
9
10 class CapturingOutputContext(OutputContext):
11 """Output context that records the last JSON payload instead of printing it."""
12
13 def __init__(self) -> None:
14 super().__init__(json_mode=True, quiet=True)
15 self.json_payload: dict[str, Any] | None = None
16
17 def emit_json(self, payload: dict[str, Any]) -> None:
18 self.json_payload = payload