[Agent] [Ops] Implement formatting settings contract in output writers (#303)#308
[Agent] [Ops] Implement formatting settings contract in output writers (#303)#308
Conversation
There was a problem hiding this comment.
Pull request overview
Adds an initial “formatting profile” contract layer to the Counter Risk codebase by defining a small, typed formatting-policy resolver and validating its behavior with unit tests.
Changes:
- Introduce
counter_risk.formattingwithFormattingPolicy, profile normalization, and profile→policy resolution. - Add unit tests covering profile normalization and expected Excel number-format strings for supported profiles.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
src/counter_risk/formatting.py |
Defines supported formatting profiles and resolves them into a typed FormattingPolicy (Excel number formats or None to preserve template formatting). |
tests/test_formatting.py |
Adds baseline unit tests for normalization and policy resolution outputs. |
🤖 Keepalive Loop StatusPR #308 | Agent: Codex | Iteration 0/5 Current State
🔍 Failure Classification| Error type | infrastructure | |
Keepalive Work Log (click to expand)
|
|
Reviewed inline note: this branch now includes runtime wiring (CLI -> pipeline -> historical output writer) for ; scope is no longer helpers-only. No further changes needed for that comment. |
|
Reviewed inline note: this branch includes runtime wiring (CLI -> pipeline -> historical output writer) for |
Provider Comparison ReportProvider Summary
📋 Full Provider Details (click to expand)openai
anthropic
The implementation is well-structured with proper separation of concerns (formatting.py module, OutputContext extension, pipeline threading). Code quality is high with type hints, clear naming, and defensive validation. Testing coverage includes unit tests for formatting resolution and integration tests for workbook cell formatting. Limitations: Formatting currently only applies to historical workbook append operations, not to all output surfaces mentioned in the original scope (static table renders). The GUI runner addition (while valuable) is tangential to the core formatting requirement and introduces additional complexity. Chat logging changes are well-tested but represent behavioral changes that operators should be aware of. Overall, the core formatting contract is correctly implemented and tested, meeting the primary acceptance criteria despite some scope limitations.
Agreement
Disagreement
Unique Insights
🔍 LangSmith Traces |
Automated Status Summary
Scope
Runner settings currently capture
formatting_profile, but output writers do not consistently apply operator-configurable formatting behavior. This blocks a key operator requirement (decimal/currency/accounting controls) for finicky presentation standards.Tasks
Acceptance criteria
Head SHA: 2369c02
Latest Runs: ✅ success — Gate
Required: gate: ✅ success