HydroRoll-Team / HydroRoll-Team/OneRoll
Ship v1-to-v2 language compatibility diagnostics and migration guidance
- Dominant language
- Python
- Stars
- 3
- Forks
- 1
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 2
Description
## Parent
- #7
## What to build
Ship the accepted v1-to-v2 language, result, error, and Python API contracts as executable diagnostics and migration documentation.
## Frozen migration families
- `^` to `**` and flat precedence to explicit v2 precedence/parentheses.
- `!`/bare `e` to `e[=max]`.
- Numeric `r`, `ro`, `R`, `a`, and `c` shorthand to Validator forms.
- `kh` to `k`, `dh` to `d`, and observed ascending `s` to `sl`.
- Incomplete v1 `K` versus corrected atomic v2 semantics.
- V1 dictionary `roll`/`run` to typed `Engine.roll`/`Engine.run`/`Engine.run_batch`.
- Deprecated `OneRoll` and convenience batch/statistics helpers to Engine plus typed results.
- `OneRollError(ValueError)` field/code handling and optional `[cli]`/`[tui]` installation.
- Reserved `@` and CLI-only `help`/`la`.
## Acceptance criteria
- [ ] Every compatibility-sensitive or known-defect v1 corpus case maps to an RFC-0001 migration entry.
- [ ] V1 mode and dictionary adapters remain available throughout 2.x; removal is a 3.0-or-later decision.
- [ ] Diagnostics include phase, span, construct, stable code, and canonical replacement.
- [ ] Strict v2 never silently reinterprets a v1-only form.
- [ ] Rust/Python/CLI before-and-after examples are executable.
- [ ] The guide maps every RFC-0004 deprecated class/function to a typed Engine replacement.
- [ ] Package-extra and structured-exception migration examples run in isolated environments.
## Blocked by
- #15
- #16
- #19
- #24
- #38
- #39
- #40
- #41
- #42
- #43
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with parent issue #7 and the RFC-0001 and RFC-0004 references, then review the blocked issues #15, #16, #19, and #24 plus #38–#43. Validate the Rust, Python, and CLI before-and-after examples, migration entries, diagnostics, adapters, typed replacements, and isolated package-extra examples against the acceptance criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, rust
- Domain
- api, cli, compilers, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100