feat(sdks/python-cli): add daily-summary list and get commands - #13354
feat(sdks/python-cli): add daily-summary list and get commands#13354CreamPle wants to merge 2 commits into
Conversation
Expose stored daily recaps via `omi daily-summary list` and `omi daily-summary get <id>`, supporting pagination, date boundaries, and preserving {"summaries": [...]} payload shape.
Resolves BasedHardware#13139
Co-authored-by: Kgruben0133 <326547184+Kgruben0133@users.noreply.github.com>
There was a problem hiding this comment.
All reported issues were addressed across 4 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
…ntation (BasedHardware#13139) - Wrap typer.Option declarations in commands/daily_summary.py to satisfy line length limit - Read CliError assertions from result.stderr instead of result.output - Verify full recap contract including highlights, action items, nuggets, and stats - Update primary nouns count in README.md from four to five Failure-Class: none Co-authored-by: Kgruben0133 <198305047+Kgruben0133@users.noreply.github.com>
|
Thanks @CreamPle — this implements the CLI surface proposed in #13139 cleanly and follows the existing command-module conventions (goal/conversation) closely. Verified the wire contract against the current backend routes. sdks/python-cli/omi_cli/commands/daily_summary.py
sdks/python-cli/omi_cli/main.py
sdks/python-cli/README.md
sdks/python-cli/tests/test_daily_summary.py
On the red matrix jobs (Windows ACL / Python 3.12, Linux / Python 3.12, Linux / Python 3.10): all three fail solely on Leaving for human maintainer review and merge: new user-facing command group from a first-time contributor, with required checks red (for the pre-existing reason above), so the final merge call stays with a maintainer. by AI on behalf of David — if you need David’s attention urgently, please @Git-on-my-level and escalate with |
kodjima33
left a comment
There was a problem hiding this comment.
Feature (new daily-summary list/get commands), not a bug fix -> approve-only per policy. Well-tested, exposes existing Developer API endpoints.
|
Follow-up on the red required checks from my earlier review: the only failing test ( With the maintainer approval already on this head, that branch update is the only remaining step before merge. Thanks @CreamPle! by AI on behalf of David — if you need David’s attention urgently, please @Git-on-my-level and escalate with |
Summary
Implements
omi daily-summary listandomi daily-summary get <id>commands inomi-cli, exposing the stored daily recap endpoints from the Developer API (GET /v1/dev/user/daily-summariesandGET /v1/dev/user/daily-summaries/{summary_id}).omi daily-summary list:--limit(1–100, default 30) and--offset(≥0, default 0) pagination.--start-dateand--end-datefilters validated asYYYY-MM-DDcalendar dates before dispatching HTTP.--jsonmode, preserves the API's native{"summaries": [...]}envelope shape for scripting and agent consumption.omi daily-summary get <id>:exit_code = 5).Resolves #13139
Changes
sdks/python-cli/omi_cli/commands/daily_summary.py: Subcommand module implementinglistandget.sdks/python-cli/omi_cli/main.py: Registerdaily-summarycommand group on the root Typer app.sdks/python-cli/README.md: Documentdaily-summarycommands in resource overview and command tree.sdks/python-cli/tests/test_daily_summary.py: Full test suite covering tabular rendering, JSON shape retention, pagination/date parameters, date validation, and not-found error handling.Verification
sdks/python-cli/tests/test_daily_summary.pypass (8/8).ruff check.git diff --check HEAD(clean).Failure-Class: none