Document green packaged gate and next-phase reopening
This commit is contained in:
parent
5c6305d563
commit
32abad5d19
6 changed files with 71 additions and 16 deletions
|
|
@ -242,9 +242,10 @@ for the full 29-repo queue and per-repo wiring posture.
|
|||
- `scripts/Invoke-HyperTwistClassicCubePackage.ps1`
|
||||
- `scripts/Launch-HyperTwistClassicCubePackage.ps1`
|
||||
- [x] Define the temporary package-gate boot route explicitly as `/Engine/Maps/Templates/OpenWorld?game=/Script/UnrealHyperTwist.HyperTwistClassicCubeGameMode` until the dedicated `L_HyperTwist_ClassicTraining` map exists
|
||||
- [ ] Package `UnrealHyperTwist` for Windows (not just Editor build)
|
||||
- [ ] Launch packaged build on Windows host
|
||||
- [ ] Verify: cube visible, clickable, scramble applies, timer works, solve detected
|
||||
- [x] Package `UnrealHyperTwist` for Windows (not just Editor build)
|
||||
- [x] Launch packaged build on Windows host
|
||||
- [x] Verify: cube visible, clickable, scramble applies, timer works, solve detected
|
||||
- [x] Validation evidence on `2026-06-11`: isolated Windows worktree `C:\HyperTwist_worktrees\phase3pkg`, reverse-SSH fallback lane `localhost:22023`, `Build.bat` editor build `Succeeded`, `BuildCookRun` `ExitCode=0`, archive output in `C:\HyperTwist_worktrees\phase3pkg_packaged`, and packaged smoke boot succeeded through `scripts/Launch-HyperTwistClassicCubePackage.ps1`
|
||||
|
||||
**Estimated actions:** 20–30
|
||||
**Estimated time:** 1–2 days
|
||||
|
|
@ -255,6 +256,8 @@ for the full 29-repo queue and per-repo wiring posture.
|
|||
|
||||
**Prerequisite:** Phase 1A (rob-twophase) + Phase 2 (renderer) + Phase 3C packaged gate GREEN
|
||||
|
||||
**Widening read after `2026-06-11` package proof:** the gate is now open. The more adequate next move is still to finish the separate Phase `3A` editor-owned `.umap` / light / material lane first, then widen into `4A` solver hints and follow-along because that deepens the core training loop without adding the extra microphone/provider/device surface of Phase `5`.
|
||||
|
||||
### 4A — Solver HUD Integration
|
||||
- [ ] Add "Hint" button to HUD
|
||||
- [ ] On click: query solver for next optimal move from current state
|
||||
|
|
@ -280,6 +283,8 @@ for the full 29-repo queue and per-repo wiring posture.
|
|||
|
||||
**Prerequisite:** Phase 1B (freestyle) + Phase 1C (piper) + Phase 3C packaged gate GREEN
|
||||
|
||||
**Widening read after `2026-06-11` package proof:** this phase is no longer blocked by packaging, but it is still the lower-leverage immediate move versus Phase `4A` because speech widens operational surface area across capture devices, transcripts, audio routing, and provider-side orchestration. Treat it as reopened, not as the first move ahead of solver-guided training.
|
||||
|
||||
### 5A — Voice Command Input
|
||||
- [ ] Add "Voice" button to HUD (or use freestyle global hotkey)
|
||||
- [ ] On hotkey hold: capture microphone audio → stream to freestyle loopback
|
||||
|
|
@ -448,16 +453,17 @@ for the full 29-repo queue and per-repo wiring posture.
|
|||
| 318 test files, 0 gameplay | 30+ targeted tests, 1 controller-owned classic-cube runtime loop |
|
||||
| 1,142 docs, 20 content assets | Docs trimmed to functional truth |
|
||||
| No donor repos linked | C++ repos compiled and linked |
|
||||
| No .uasset, .umap | Procedural geometry + first-party runtime loop, with level packaging still pending |
|
||||
| No .uasset, .umap | Procedural geometry + first-party runtime loop, with packaged validation now green and dedicated map assets still pending |
|
||||
|
||||
---
|
||||
|
||||
## Immediate Next Step
|
||||
|
||||
**Phase 3A + 3C:** first playable level packaging and presentation proof. The repaired
|
||||
code lane now owns browser-shell authority, click/touch interaction, scramble playback,
|
||||
HUD timing, fresh-attempt restart, and orbit-camera ownership in first-party code. The remaining next move is
|
||||
content/presentation/package proof that cannot be fully closed from the current text-only lane:
|
||||
**Phase 3A after packaged-gate closure:** the repaired code lane now owns browser-shell authority,
|
||||
click/touch interaction, scramble playback, HUD timing, fresh-attempt restart, orbit-camera
|
||||
ownership, and a green Windows packaged proof. The remaining next move is the editor-owned
|
||||
content/presentation lane, followed by a re-run of the same packaged gate after those authored
|
||||
assets land:
|
||||
|
||||
- `AHyperTwistClassicCubeActor` with geometry, rotation, click input, scramble
|
||||
- `AHyperTwistClassicCubePlayerController` with left/right click, touch, and `R`-to-restart ownership
|
||||
|
|
@ -466,9 +472,17 @@ content/presentation/package proof that cannot be fully closed from the current
|
|||
- `UHyperTwistSolverLibrary` with rob-twophase two-phase solver
|
||||
- `UHyperTwistBrowserWidget` with authoritative shell loading plus bundled-runtime/fallback browser bootstrapping
|
||||
|
||||
Editor-side work needed:
|
||||
Already-proven package lane:
|
||||
- source-owned package validation is green on `2026-06-11` via fallback reverse-SSH `localhost:22023`
|
||||
- the isolated Windows worktree route avoids touching the dirty primary `C:\HyperTwist` checkout while still proving build, cook, stage, archive, and packaged smoke launch
|
||||
|
||||
Editor-side work still needed:
|
||||
- Create 6 simple colored materials (White, Yellow, Green, Blue, Orange, Red)
|
||||
- Optional polish-only replacement `WBP_HyperTwistGameHUD` if the first-party runtime widget should be visually upgraded beyond the code-built HUD
|
||||
- Create `L_HyperTwist_ClassicTraining` level with cube actor, lights, and the orbit camera pawn placed or configured as the preferred presentation lane
|
||||
- Add orbit-camera controls and any packaged-build specific presentation polish
|
||||
- Package and launch the Windows build to prove the repaired runtime loop in a packaged environment
|
||||
- Add any authored presentation polish that should live in assets rather than source
|
||||
- Re-run `scripts/Invoke-HyperTwistClassicCubePackage.ps1` after the dedicated map lands so the same packaged proof is tied to the final presentation lane
|
||||
|
||||
Recommended widening order after the dedicated map pass:
|
||||
- `Phase 4A` solver hint HUD and `Phase 4B` follow-along training
|
||||
- `Phase 5` voice input and narration after the solver-guided loop is present
|
||||
|
|
|
|||
|
|
@ -145,6 +145,33 @@ The sensitive runbook now carries the exact current Windows-side tunnel
|
|||
commands, known-hosts scratch file, listener verification command, reverse-sync
|
||||
commands, and the still-current password-backed login path.
|
||||
|
||||
## Addendum - 2026-06-11 (fallback lane package proof)
|
||||
|
||||
Live follow-up on `2026-06-11` established these additional facts:
|
||||
|
||||
- `22022` was no longer healthy for SSH in that session and should be treated as
|
||||
unavailable when it refuses banner/auth
|
||||
- `22023` was healthy again and returned the Windows shell identity
|
||||
`desktop-ks3vghu\anthracite ace`
|
||||
- the Windows host name still resolved as `DESKTOP-KS3VGHU`
|
||||
- a dirty primary `C:\HyperTwist` checkout was intentionally left untouched
|
||||
- the validated route instead used an isolated Windows worktree:
|
||||
`C:\HyperTwist_worktrees\phase3pkg`
|
||||
- a committed tree snapshot was streamed into that isolated worktree from the
|
||||
Linux side, avoiding Windows Git credential and dirty-worktree hazards
|
||||
- `Build.bat` for `UnrealHyperTwistEditor` succeeded from the isolated worktree
|
||||
- `RunUAT BuildCookRun` succeeded from the same isolated worktree and archived to
|
||||
`C:\HyperTwist_worktrees\phase3pkg_packaged`
|
||||
- packaged smoke launch succeeded from
|
||||
`C:\HyperTwist_worktrees\phase3pkg_packaged\Windows\UnrealHyperTwist.exe`
|
||||
|
||||
Operational rule added by this proof:
|
||||
|
||||
- if the primary Windows repo is dirty or lacks Git auth, do not force it clean
|
||||
just to obtain Unreal validation
|
||||
- prefer an isolated reverse-SSH worktree populated from the committed source
|
||||
tree, then run build/package/smoke validation there
|
||||
|
||||
## Addendum - 2026-06-03 (stale-listener recovery)
|
||||
|
||||
Live follow-up on `2026-06-03` established this additional operational rule:
|
||||
|
|
|
|||
|
|
@ -96,6 +96,16 @@ re-verified live on `2026-06-01` through `localhost:22022` on the VPS, and the
|
|||
fallback lane on `localhost:22023` was exercised on `2026-06-03` after a
|
||||
stale-listener incident on `22022`.
|
||||
|
||||
Additional live proof on `2026-06-11` closed the classic-cube packaged gate over
|
||||
that same fallback lane: `22022` was refusing SSH, `22023` accepted the
|
||||
connection, an isolated Windows worktree at
|
||||
`C:\HyperTwist_worktrees\phase3pkg` was populated from the committed Linux tree,
|
||||
`Build.bat` succeeded, `BuildCookRun` completed with `ExitCode=0`, archive
|
||||
output was written to `C:\HyperTwist_worktrees\phase3pkg_packaged`, and the
|
||||
packaged classic-cube smoke boot succeeded. This means the doctrine now has live
|
||||
proof not just for editor builds, but for full package/cook/archive/launch
|
||||
validation over the reverse-SSH lane as well.
|
||||
|
||||
Operational reading:
|
||||
|
||||
- use `localhost:22022` as the primary reverse-SSH lane
|
||||
|
|
|
|||
|
|
@ -177,4 +177,4 @@ Current repaired note:
|
|||
|
||||
## Next Step
|
||||
|
||||
**Current next step after repair:** package-proof and presentation-proof work, not Phase 0. The repaired code lane already owns the authoritative browser shell, native-sidecar browser bridge, first-party classic-cube player controller, first-party orbit camera pawn, active-cube camera follow, above-floor validation-map cube spawn, and first-party timer/HUD loop including GUI or keyboard scramble restart. The remaining best move is to run the real Windows packaged-build gate through `scripts/Invoke-HyperTwistClassicCubePackage.ps1`, then keep the dedicated `.umap` plus material/light polish as the separate Unreal Editor asset lane.
|
||||
**Current next step after repair:** the intended Phase 1 wiring question is closed and the Windows packaged-build gate is now green, so the remaining best move is no longer "prove packageability." The repaired code lane already owns the authoritative browser shell, native-sidecar browser bridge, first-party classic-cube player controller, first-party orbit camera pawn, active-cube camera follow, above-floor validation-map cube spawn, first-party timer/HUD loop including GUI or keyboard scramble restart, and a successful packaged smoke boot through `scripts/Invoke-HyperTwistClassicCubePackage.ps1`. The next best move is the separate Unreal Editor asset lane: dedicated `.umap`, simple authored materials, lights, and presentation tuning, followed by a repeat of the same packaged gate on that authored map. After that, widen into `Phase 4A` solver-guided training before `Phase 5` speech.
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ repo.
|
|||
| Feature | Status | Primary authority | Notes |
|
||||
|---|---|---|---|
|
||||
| Native puzzle-state runtime | Implemented now | first-party runtime + landed donor packets | Core product identity. |
|
||||
| Classic-cube playable runtime loop | Implemented now | first-party current code + landed timer/training substrate | First-party `AHyperTwistClassicCubeActor`, `AHyperTwistClassicCubeGameMode`, `AHyperTwistClassicCubePlayerController`, `AHyperTwistClassicCubeOrbitPawn`, and `UHyperTwistClassicCubeHUDWidget` now own the bounded classic-cube scramble/play/timer/solve loop with left-click, right-click, touch, middle-mouse drag orbit, scroll-wheel zoom, GUI or keyboard fresh-attempt restart, solved-state submission, active-cube orbit focus, and above-floor validation-map spawn in code. The current package-gate route is source-controlled through `scripts/Invoke-HyperTwistClassicCubePackage.ps1` and `scripts/Launch-HyperTwistClassicCubePackage.ps1` using the explicit classic-cube boot URL until the dedicated `.umap` lands. Packaged-build proof plus art/material/level polish remain separate next-step work. |
|
||||
| Classic-cube playable runtime loop | Implemented now | first-party current code + landed timer/training substrate | First-party `AHyperTwistClassicCubeActor`, `AHyperTwistClassicCubeGameMode`, `AHyperTwistClassicCubePlayerController`, `AHyperTwistClassicCubeOrbitPawn`, and `UHyperTwistClassicCubeHUDWidget` now own the bounded classic-cube scramble/play/timer/solve loop with left-click, right-click, touch, middle-mouse drag orbit, scroll-wheel zoom, GUI or keyboard fresh-attempt restart, solved-state submission, active-cube orbit focus, and above-floor validation-map spawn in code. The package-gate route is source-controlled through `scripts/Invoke-HyperTwistClassicCubePackage.ps1` and `scripts/Launch-HyperTwistClassicCubePackage.ps1` using the explicit classic-cube boot URL until the dedicated `.umap` lands, and that route is now proven green on `2026-06-11` through the fallback reverse-SSH `localhost:22023` Windows lane plus packaged smoke boot. Dedicated `.umap`, art/material, and authored presentation polish remain separate editor-owned next-step work. |
|
||||
| Classic-cubing semantic/runtime adapter | Implemented now | landed `cubing/cubing.js` packet | Live adapter family. |
|
||||
| Classic-cubing semantic, bridge, and `MPL`-boundary reference grounding | Implemented now | `cubing/cubing.js` retained boundary-sensitive lane + first-party current code | Current live `Classic Cubing Semantics and Runtime` reference side includes seven rewritten first-party contract/reference targets grounded in `cubing/cubing.js`: semantics, geometry, viewer adapter, device boundary, search contract, Melinda bridge, and explicit `MPL` compliance-boundary notes. This does not displace the landed `Phase 4R-A` first-party owner lane, the separate `cubing/twisty.js` replay shell lane, the separate `cubing/alg.js` parser/AST lane, or the explicit practical `MPL` path and notice-retention boundary. |
|
||||
| Seeded competition scramble workflow and lightweight scramble-operator shell adjuncts | Deep-source grounded retained | `cubing/cubing.js` retained lane + `cubing/mark3` / `cubing/scramble.cubing.net` successor evaluation | Source-backed successor surfaces sharpen competition-spec workflow and operator-shell expectations above the retained scramble and visualization seams, but they do not displace `cubing/cubing.js` or `cubing/twisty.js`; `scramble-display` remains comparison-only. |
|
||||
|
|
|
|||
|
|
@ -44,13 +44,17 @@ Current consolidated milestone snapshot:
|
|||
`C:\HyperTwist\docs\ops\HYPERTWIST_REVERSE_SSH_WINDOWS_BUILD_LANE_VERIFICATION_2026-06-01.md`
|
||||
- the classic-cube Phase 3 lane is now split explicitly into:
|
||||
- code-owned runtime closure already present in first-party code
|
||||
- a real packaged Windows gate that still must run green
|
||||
- a real packaged Windows gate, now proven green on `2026-06-11`
|
||||
- a separate editor-owned `.umap` / lights / materials polish lane
|
||||
- the current packaged validation bridge for that lane is source-controlled via
|
||||
`C:\HyperTwist\scripts\Invoke-HyperTwistClassicCubePackage.ps1` and
|
||||
`C:\HyperTwist\scripts\Launch-HyperTwistClassicCubePackage.ps1`
|
||||
- `Phase 4` and `Phase 5` widening should not proceed ahead of the classic-cube
|
||||
packaged gate; they reopen only after that gate is green
|
||||
- the latest package proof used the verified fallback reverse-SSH lane on
|
||||
`localhost:22023`, an isolated Windows worktree at
|
||||
`C:\HyperTwist_worktrees\phase3pkg`, and a successful packaged smoke launch
|
||||
- `Phase 4` and `Phase 5` widening are therefore reopened, but the preferred next
|
||||
move remains the separate editor-owned dedicated-map/material/light closure
|
||||
before solver and speech widening
|
||||
|
||||
- the canonical HyperTwist repo-row portfolio is now treated as `75` rows, not `71`
|
||||
- currently implemented rows are now `35`, not `20`
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue