docs: open P9.0R6 second-cycle route
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
# Phase 9.0R6 Second-Cycle Route Runtime Contract
|
||||
|
||||
## State Machine
|
||||
|
||||
```text
|
||||
P9.0R5 session_result
|
||||
-> route_board_unselected
|
||||
-> route_board_selected
|
||||
-> route_commit_review
|
||||
-> fourth_battle
|
||||
-> second_cycle_result
|
||||
```
|
||||
|
||||
Legal reverse paths are selected route to another route and commit review back
|
||||
to the same selected route. Route commit has no reverse path. Home and confirmed
|
||||
Restart clear the complete P9.0R1-R6 transient experience.
|
||||
|
||||
## Stable Route Offers
|
||||
|
||||
| ID | Name | Pressure | Exposure | Reward |
|
||||
|---|---|---|---|---:|
|
||||
| `R6-01` | Windwall Causeway / 风墙长堤 | captain front crush | low | `+4 Coin` |
|
||||
| `R6-02` | Bellglass Run / 钟晶疾道 | early tempo burst | medium | `+7 Coin` |
|
||||
| `R6-03` | Twinflare Ravine / 双辉裂谷 | split rear strike | high | `+10 Coin` |
|
||||
|
||||
The route board states known pressure, exposure, reward and current coverage.
|
||||
It does not expose exact future HP, mark an option recommended or preselect a
|
||||
route. Route identities are independently authored for this game.
|
||||
|
||||
## Coverage Rules
|
||||
|
||||
```text
|
||||
build_profile =
|
||||
guarded when retained_item == EQ-002
|
||||
tempo when retained_item == EQ-061
|
||||
full_line when added_rear is Farstring or Kindhand
|
||||
```
|
||||
|
||||
| Route | guarded | tempo | full_line |
|
||||
|---|---|---|---|
|
||||
| `R6-01` | covered: retained brace answers front crush | gap: initiative does not reduce the hit | partial: Kindhand can recover after the hit |
|
||||
| `R6-02` | gap: brace does not answer enemy tempo | covered: Early Bell acts before the burst | partial: broader rear line recovers but does not interrupt |
|
||||
| `R6-03` | gap: front brace does not protect split rear | gap: initiative does not protect split rear | covered: Farstring and Kindhand divide damage and recovery |
|
||||
|
||||
## Route Transaction
|
||||
|
||||
- `open_route_board` inherits exact current Coin, Company and build state.
|
||||
- `choose_route` validates one stable ID and mutates selection only.
|
||||
- `review_route` requires one selection and mutates nothing.
|
||||
- `cancel_review` returns to the selected board state.
|
||||
- `commit_route` is the only route commit, locks the current snapshot once and
|
||||
starts the fourth battle. Duplicate commit is inert.
|
||||
- Route entry costs `0 Coin`; reward is not granted until battle result.
|
||||
|
||||
## Fourth Battle Matrix
|
||||
|
||||
| Route/build | Duration | Front after pressure | Rear after pressure/support |
|
||||
|---|---:|---:|---:|
|
||||
| R6-01 guarded | `7.40` | `90`, then `100` only if original rear is Kindhand | `100` |
|
||||
| R6-01 tempo | `6.40` | `60`, then `72` only if original rear is Kindhand | `100` |
|
||||
| R6-01 full_line | `7.00` | `70 -> 82` | `100` |
|
||||
| R6-02 guarded | `8.00` | `70`, then `82` only if original rear is Kindhand | `100` |
|
||||
| R6-02 tempo | `6.00` | `70`, then `82` only if original rear is Kindhand | `100` |
|
||||
| R6-02 full_line | `6.80` | `70 -> 82` | `100` |
|
||||
| R6-03 guarded | `7.80` | `100` | `100 -> 65`; Kindhand self-supports to `77` |
|
||||
| R6-03 tempo | `6.70` | `100` | `100 -> 65`; Kindhand self-supports to `77` |
|
||||
| R6-03 full_line | `7.00` | `100` | `100 -> 65 -> 88` |
|
||||
|
||||
Every HP mutation emits one existing P9.0R3 feedback payload over the actual
|
||||
front, original rear or enemy actor. Both rear professions act once on the
|
||||
full-line route. Enemy reaches `0`; no respawn, casualty, replacement or save
|
||||
state is created.
|
||||
|
||||
## Reward And Result
|
||||
|
||||
Reward commit is exactly once after enemy defeat:
|
||||
|
||||
```text
|
||||
R6-01: coin += 4
|
||||
R6-02: coin += 7
|
||||
R6-03: coin += 10
|
||||
```
|
||||
|
||||
Result order is build profile and route, pressure/coverage consequence, exact
|
||||
HP/time, one-time reward and Coin/Company, then Restart/Home only.
|
||||
|
||||
## Presentation
|
||||
|
||||
- Route selection is a world/map scene with three adjacent route nodes and the
|
||||
current Company visible, not a settings form or receipt table.
|
||||
- Primary `844x390` viewport has no scrolling and every action is at least 44px.
|
||||
- Front crush uses a front danger cue; tempo uses an early action cue; rear
|
||||
split marks the actual rear actor and places its number feedback there.
|
||||
- Existing art is a bounded Riftblade-family presentation; no new enemy catalog
|
||||
identity is claimed.
|
||||
|
||||
## Fast Evidence
|
||||
|
||||
- Focused test covers 3x3 coverage, all matrix outcomes, original-rear
|
||||
counterfactuals, selection/revision, review cancel, once-only commit/reward,
|
||||
invalid input and cleanup.
|
||||
- Parsed ScreenTouch continues from a real P9.0R5 session result through route
|
||||
selection, review, cancel/revise, battle and result with fallback/direct `0`.
|
||||
- Normal-render captures cover route unselected, each build coverage, review,
|
||||
the three pressure languages and representative results.
|
||||
- P9.0R5/P9.0R4/P9.0R3 focused regressions remain mandatory.
|
||||
- Fast preview evidence cannot become formal candidate evidence.
|
||||
Reference in New Issue
Block a user