HydroRoll-Team / HydroRoll-Team/OneRoll
Expose cancellable analysis in CLI and TUI
- Dominant language
- Python
- Stars
- 3
- Forks
- 1
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 2
Description
## Parent
- #3
## What to build
Expose the accepted sampling and exact-analysis capabilities through CLI and TUI workflows with explicit mode selection, progress, cancellation, and machine-readable export.
## RFC-0006 client contract
- Expose sampled and exact analysis as separate commands or controls; do not use an ambiguous mode Boolean.
- Always display the selected mode and active limits.
- Sampling consumes a complete Program; exact mode accepts one Instruction.
- Exact requests never fall back automatically. Display the stable capability/error reason and let the user start a separate sampling request.
- JSON preserves the versioned contract; CSV must document how typed AnalysisValues and rational probabilities are encoded.
- Run long work outside the TUI event loop with shared cancellation/deadline semantics.
- Closing an analysis view cancels and joins its work instead of detaching it.
## Acceptance criteria
- [ ] Users explicitly select sampled or exact analysis and see the active limits.
- [ ] Long operations report progress and can be cancelled without corrupting state.
- [ ] CLI supports stable JSON and CSV export for analysis results.
- [ ] TUI analysis runs without blocking interaction.
- [ ] Unsupported exact requests display the capability reason without silent fallback.
- [ ] Client conformance cases cover mode selection, export, cancellation, and errors.
## Blocked by
- #31
- #33
- #28
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the RFC-0006 client contract and the blocked issues #31, #33, and #28 to understand the available analysis capabilities. Trace the CLI and TUI workflows and the client conformance cases before planning the cross-cutting changes. Done means explicit mode and limits, progress and cancellation, non-blocking TUI behavior, stable JSON and CSV export, and visible exact-capability errors without fallback.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, rust
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100