4.3 KiB
4.3 KiB
Sprint 015 - Operations CLI
Topic & Scope
- Surface orchestrator and scheduler capabilities via CLI
- Add job management, dead-letter handling, and scheduler preview
- Working directory:
src/Cli/ - Expected evidence: CLI commands, Doctor checks
Dependencies & Concurrency
- No upstream sprint dependencies
- Can run in parallel with sprints 004-014, 016-017
- Depends on existing Orchestrator and Scheduler services
Documentation Prerequisites
docs/modules/orchestrator/architecture.mddocs/modules/scheduler/architecture.mddocs/product/advisories/17-Jan-2026 - Features Gap.md(Batch 12)
Delivery Tracker
OPS-001 - Add stella orchestrator jobs list/show commands
Status: DONE Dependency: none Owners: Developer
Task description:
- Create OrchestratorCommandGroup.cs with jobs subcommands
- List jobs with filtering by status, type, and time range
- Show detailed job information including steps and timing
Completion criteria:
stella orchestrator jobs listreturns job list- Supports
--status pending|running|completed|failedfilter - Supports
--type <job-type>filter - Supports
--fromand--totime range stella orchestrator jobs show <job-id>returns job details- Supports
--format json|table
OPS-002 - Add stella orchestrator jobs retry/cancel commands
Status: DONE Dependency: OPS-001 Owners: Developer
Task description:
- Add job lifecycle management commands
- Retry failed jobs with optional parameter override
- Cancel pending or running jobs
Completion criteria:
stella orchestrator jobs retry <job-id>retries failed job- Supports
--forceto retry non-failed jobs stella orchestrator jobs cancel <job-id>cancels job- Cancel only works on pending/running jobs
- Operations require appropriate permissions
OPS-003 - Add stella orchestrator deadletter list/show/replay commands
Status: DONE Dependency: none Owners: Developer
Task description:
- Add dead-letter queue management commands
- List messages in dead-letter queue
- Show message details and failure reason
- Replay messages back to processing queue
Completion criteria:
stella orchestrator deadletter listreturns DLQ messagesstella orchestrator deadletter show <msg-id>shows message details- Details include original message, failure reason, retry count
stella orchestrator deadletter replay <msg-id>replays messagestella orchestrator deadletter replay --allreplays all messages- Supports
--format json|table
OPS-004 - Add stella scheduler preview command
Status: DONE Dependency: none Owners: Developer
Task description:
- Add scheduler preview command
- Show upcoming scheduled jobs for a time window
- Include job type, schedule expression, and next run time
Completion criteria:
stella scheduler previewshows upcoming jobs- Supports
--window 24h|7d|30dfor preview window - Output includes job name, schedule, next run time
- Supports
--format json|table
OPS-005 - Add Doctor checks for job queue health
Status: DONE Dependency: none Owners: Developer
Task description:
- Add Doctor check for job queue health
- Monitor queue depth, processing rate, and DLQ size
- Alert on backlog or high DLQ count
Completion criteria:
stella doctor --check check.operations.queueruns queue check- Check monitors pending job count
- Check monitors processing rate
- Check monitors DLQ size
- Warns on backlog > threshold
- Warns on DLQ > threshold
- Remediation hints for queue issues
Execution Log
| Date (UTC) | Update | Owner |
|---|---|---|
| 2026-01-17 | Sprint created from Features Gap advisory Batch 12 | Planning |
| 2026-01-16 | OPS-001, OPS-002: Created OrchestratorCommandGroup.cs with jobs commands | Developer |
| 2026-01-16 | OPS-003: Added deadletter list/replay commands | Developer |
| 2026-01-16 | OPS-004: Created scheduler preview and list commands | Developer |
| 2026-01-16 | OPS-005: Created Operations Doctor plugin with job queue, dead letter, and scheduler checks | Developer |
Decisions & Risks
- Job retry may cause duplicate processing; idempotency required
- DLQ replay should preserve original message context
- Scheduler preview accuracy depends on cron parsing
Next Checkpoints
- Sprint kickoff: TBD
- Mid-sprint review: TBD
- Sprint completion: TBD