fix/trailing-comma-opencode-json
7 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
85c579b51f |
fix(cli): display full session IDs in session list output
CI / status-check (push) Blocked by required conditions
CI / benchmark-regression (push) Waiting to run
CI / push-validation (push) Successful in 36s
CI / helm (push) Successful in 45s
CI / build (push) Successful in 58s
CI / lint (push) Successful in 1m9s
CI / quality (push) Successful in 1m18s
CI / typecheck (push) Successful in 1m31s
CI / security (push) Successful in 1m36s
CI / e2e_tests (push) Successful in 3m42s
CI / unit_tests (push) Successful in 4m38s
CI / integration_tests (push) Successful in 4m51s
CI / coverage (push) Has started running
CI / docker (push) Successful in 1m30s
CI / benchmark-publish (push) Has started running
CI / helm (pull_request) Successful in 32s
CI / push-validation (pull_request) Successful in 23s
CI / build (pull_request) Successful in 1m2s
CI / lint (pull_request) Successful in 1m11s
CI / quality (pull_request) Successful in 1m16s
CI / typecheck (pull_request) Successful in 1m24s
CI / security (pull_request) Successful in 1m38s
CI / benchmark-publish (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 4m36s
CI / unit_tests (pull_request) Successful in 4m48s
CI / benchmark-regression (pull_request) Failing after 1m23s
CI / docker (pull_request) Successful in 1m49s
CI / coverage (pull_request) Successful in 10m54s
CI / integration_tests (pull_request) Failing after 3m59s
CI / status-check (pull_request) Failing after 4s
Remove the [:8] truncation from session IDs in the Rich table row, Most Recent summary, and Oldest summary fields of list_sessions() and _session_list_dict(). Session IDs are 26-character ULIDs and must be usable directly for copy-paste into session tell, session show, and other session commands. The structured output (JSON/YAML) already used full IDs in the sessions[*].id field, but the summary panel leaked the truncation into those formats as well. Added Behave scenarios: - Rich table displays full 26-character ULIDs (scoped to table region) - Summary panel shows full ULIDs for unnamed sessions (scoped to panel) - Summary panel shows session names for named sessions - Full ULID from list output works with session tell (round-trip, uses parsed ULID, not hardcoded constant) Review Cycle 2 fixes: - docs/specification.md: Updated YAML output example to full ULIDs - docs/showcase/*.md: Updated all example output blocks to full ULIDs - docs/reference/session_cli.md: Replaced placeholder with full ULID - features/session_cli.feature: Consecutive When steps -> And - features/steps/session_cli_steps.py: Summary panel asserts both IDs, 8-char negative guard in table output, ULID capture scoped to table region with fixture verification, named-session absence check for second session - CHANGELOG.md: Added [Unreleased] entry for the behavioral change ISSUES CLOSED: #10970 |
||
|
|
f2b60cc3d6 |
fix(cli): restore session list json contract
CI / benchmark-publish (pull_request) Has been skipped
CI / helm (pull_request) Successful in 35s
CI / push-validation (pull_request) Successful in 21s
CI / build (pull_request) Successful in 52s
CI / lint (pull_request) Successful in 1m0s
CI / quality (pull_request) Successful in 1m33s
CI / security (pull_request) Successful in 1m45s
CI / typecheck (pull_request) Successful in 1m49s
CI / integration_tests (pull_request) Successful in 3m58s
CI / e2e_tests (pull_request) Successful in 4m32s
CI / unit_tests (pull_request) Successful in 5m55s
CI / docker (pull_request) Successful in 1m31s
CI / coverage (pull_request) Successful in 10m47s
CI / status-check (pull_request) Successful in 3s
CI / build (push) Successful in 47s
CI / lint (push) Successful in 57s
CI / helm (push) Successful in 28s
CI / quality (push) Successful in 1m11s
CI / typecheck (push) Successful in 1m34s
CI / security (push) Successful in 1m36s
CI / push-validation (push) Successful in 21s
CI / benchmark-publish (push) Failing after 40s
CI / integration_tests (push) Successful in 3m47s
CI / e2e_tests (push) Successful in 4m9s
CI / unit_tests (push) Successful in 7m0s
CI / docker (push) Successful in 1m31s
CI / coverage (push) Successful in 10m40s
CI / status-check (push) Successful in 3s
Ensure the session list helper only emits the documented fields so downstream consumers stay compliant, and tighten the Behave coverage to enforce the contract.\n\nISSUES CLOSED: #6436 |
||
|
|
b92f0270c2 |
fix(cli): fix session show/list JSON output to not redact input messages (#6436)
ISSUES CLOSED: #6436 |
||
|
|
54285e0f33 |
fix(cli): correct session show rich output Session Summary panel field labels and fields
CI / lint (push) Waiting to run
CI / typecheck (push) Waiting to run
CI / security (push) Waiting to run
CI / quality (push) Waiting to run
CI / unit_tests (push) Waiting to run
CI / integration_tests (push) Waiting to run
CI / e2e_tests (push) Waiting to run
CI / coverage (push) Blocked by required conditions
CI / benchmark-regression (push) Blocked by required conditions
CI / benchmark-publish (push) Waiting to run
CI / build (push) Waiting to run
CI / docker (push) Blocked by required conditions
CI / helm (push) Waiting to run
CI / status-check (push) Blocked by required conditions
Reviewed and APPROVED. Closes #3040. |
||
|
|
a0df5a4cd0 |
fix(cli): wrap format_output() in spec-required JSON/YAML envelope across all CLI commands
CI / lint (pull_request) Successful in 27s
CI / typecheck (pull_request) Successful in 57s
CI / security (pull_request) Successful in 1m2s
CI / quality (pull_request) Successful in 34s
CI / build (pull_request) Successful in 23s
CI / helm (pull_request) Successful in 26s
CI / unit_tests (pull_request) Failing after 7m7s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Failing after 11m8s
CI / integration_tests (pull_request) Failing after 22m44s
CI / coverage (pull_request) Successful in 10m50s
CI / status-check (pull_request) Failing after 2s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m6s
Implements the spec-required JSON/YAML output envelope for all CLI commands
that use format_output(). The envelope structure is:
{
"command": "<command that was run>",
"status": "ok" | "warn" | "error",
"exit_code": 0,
"data": { ... command-specific payload ... },
"timing": { "duration_ms": 123 },
"messages": [{ "level": "ok", "text": "..." }]
}
Changes:
- Add _build_envelope() helper to construct the spec-required envelope
- Add optional command, status, exit_code, messages parameters to format_output()
- Wrap json/yaml output in the envelope; plain/table/rich/color unchanged
- Add timing measurement (duration_ms) to all json/yaml outputs
- Add new BDD feature file (cli_json_envelope.feature) with 14 scenarios
testing envelope field presence, values, and data payload
- Update 14 existing step files to unwrap the envelope when checking
specific data keys (backward-compatible via _unwrap_envelope() helper)
Closes #3431
|
||
|
|
e4493e8978 |
fix(cli): correct session show rich output Session Summary panel field labels and fields
CI / lint (pull_request) Successful in 21s
CI / typecheck (pull_request) Successful in 52s
CI / quality (pull_request) Successful in 35s
CI / security (pull_request) Successful in 1m8s
CI / build (pull_request) Successful in 29s
CI / helm (pull_request) Successful in 22s
CI / unit_tests (pull_request) Failing after 6m49s
CI / docker (pull_request) Has been skipped
CI / e2e_tests (pull_request) Successful in 17m4s
CI / integration_tests (pull_request) Failing after 22m47s
CI / coverage (pull_request) Successful in 10m57s
CI / status-check (pull_request) Failing after 1s
CI / benchmark-publish (pull_request) Has been skipped
CI / benchmark-regression (pull_request) Successful in 57m8s
Fixes three deviations from docs/specification.md in the agents session show
rich output Session Summary panel:
1. Renamed 'Session ID:' label to 'ID:' to match spec exactly.
2. Removed 'Namespace:' field which is not part of the spec.
3. Added 'Automation:' field sourced from session.metadata['automation_profile'],
defaulting to '(none)' when not set.
4. Field order now matches spec: ID → Actor → Messages → Created → Updated → Automation.
Updated features/session_cli.feature to assert the corrected field labels are
present ('ID:', 'Actor:', 'Messages:', 'Created:', 'Updated:', 'Automation:')
and that the removed fields ('Session ID:', 'Namespace:') are absent.
Added 'the session CLI output should not contain' step definition to
features/steps/session_cli_steps.py to support the new negative assertions.
ISSUES CLOSED: #3040
|
||
|
|
04c8a886db | feat(cli): add session commands |