Clarify cstimer oracle reopen criteria
This commit is contained in:
parent
c02c3310e9
commit
0bb51d98f9
6 changed files with 146 additions and 7 deletions
|
|
@ -0,0 +1,133 @@
|
||||||
|
# HyperTwist cstimer Benchmark Oracle And Reopen Criteria Reconciliation - 2026-05-27
|
||||||
|
|
||||||
|
## Status
|
||||||
|
|
||||||
|
This document is the source-backed clarification note for the retained
|
||||||
|
`cs0x7f/cstimer` row after the timer-family hierarchy was already sharpened
|
||||||
|
between:
|
||||||
|
|
||||||
|
- `Aarav2709/KubeTimr`
|
||||||
|
- `kash/cubedesk`
|
||||||
|
- `cs0x7f/cstimer`
|
||||||
|
- `cubing/qqTimer`
|
||||||
|
|
||||||
|
It answers two narrow questions:
|
||||||
|
|
||||||
|
- what exact `cstimer` slices remain authoritative as retained oracle only
|
||||||
|
- what would justify reopening a future timer-pattern clean-room lane
|
||||||
|
|
||||||
|
Result:
|
||||||
|
|
||||||
|
- `cstimer` stays intentionally non-live
|
||||||
|
- no reopening of landed `KubeTimr` or `CubeDesk` product code is required
|
||||||
|
- no timer-adjacent restrictive packet opens by default
|
||||||
|
- only exact slice-local gaps can justify a future dedicated clean-room reopen
|
||||||
|
|
||||||
|
## Source basis
|
||||||
|
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_PHASE_0R_PACKET_0R_E_EVALUATION_2026-05-13.md`
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_TIMER_BENCHMARK_AND_IMPLEMENTATION_HIERARCHY_RECONCILIATION_2026-05-27.md`
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_CUBEDESK_TIMER_TRAINER_SESSION_HIERARCHY_RECONCILIATION_2026-05-27.md`
|
||||||
|
- `C:\HyperTwist\docs\REPO_LICENSE_TRACKING.md`
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md`
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md`
|
||||||
|
- `C:\Workspaces\HyperTwist\repos.manifest.json`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\kernel.js`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\timer.js`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\stats\stats.js`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\scramble\scramble.js`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\lib\puzzlefactory.js`
|
||||||
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer\src\js\hardware\gancube.js`
|
||||||
|
|
||||||
|
## Exact retained oracle slices
|
||||||
|
|
||||||
|
The retained `cstimer` row is not just a generic "timer benchmark."
|
||||||
|
|
||||||
|
It remains the authoritative restrictive oracle for these exact timer-adjacent
|
||||||
|
families:
|
||||||
|
|
||||||
|
- competition-grade timer semantics:
|
||||||
|
ready-state, inspection-state, running-state, penalty posture, multi-phase
|
||||||
|
timing, phase-step behavior, alert or voice cadence, and input-mode
|
||||||
|
expectations
|
||||||
|
- rolling stats and solve-history semantics:
|
||||||
|
average or mean math, `DNF` handling, ranking and filtering behavior,
|
||||||
|
cross-session and per-session summaries, save/delete flows, and CSV/session
|
||||||
|
export posture
|
||||||
|
- scramble-registry breadth and control:
|
||||||
|
registry-driven scramble-type ownership, cached generation, filter/state
|
||||||
|
controls, equal-probability posture, and training pre-scramble expectations
|
||||||
|
- smart-device and `GAN` behavior:
|
||||||
|
BLE discovery posture, characteristic routing, versioned protocol handling,
|
||||||
|
move-history recovery, time-alignment recovery, and battery or device-state
|
||||||
|
expectations
|
||||||
|
- module and boundary posture:
|
||||||
|
mature property or event-bus separation between timer modules, stats,
|
||||||
|
scramble, puzzle-viewer adapters, and hardware-adjacent flows
|
||||||
|
|
||||||
|
The retained row does **not** keep the browser shell as its center of gravity.
|
||||||
|
|
||||||
|
The jQuery/PWA host, legacy page shell, and general product UI remain
|
||||||
|
implementation detail, not future owner approval.
|
||||||
|
|
||||||
|
## What does not reopen
|
||||||
|
|
||||||
|
This retained oracle does not reopen:
|
||||||
|
|
||||||
|
- the landed `KubeTimr` local timer subsystem slice
|
||||||
|
- the landed `CubeDesk` trainer-session, analytics-panel, publication,
|
||||||
|
entitlement, challenge, or integrated smart-cube workflow slices
|
||||||
|
- the retained `qqTimer` legacy session-format and scramble-menu reference slice
|
||||||
|
|
||||||
|
The reason is simple:
|
||||||
|
|
||||||
|
- `KubeTimr` already owns the narrower first-party local timer lifecycle slice
|
||||||
|
- `CubeDesk` already owns the bounded higher training/session shell above it
|
||||||
|
- `cstimer` remains broader only as retained oracle and parity reference
|
||||||
|
|
||||||
|
## Reopen criteria
|
||||||
|
|
||||||
|
A future timer-pattern clean-room reopen is justified only if a first-party gap
|
||||||
|
is proven in one of these exact families:
|
||||||
|
|
||||||
|
- competition-grade inspection, penalty, or multi-phase timing semantics
|
||||||
|
- rolling stats, `DNF`, average/mean, ranking, or session-history parity
|
||||||
|
- session import/export or interchange expectations
|
||||||
|
- scramble-registry breadth or control expectations
|
||||||
|
- smart-device or `GAN` protocol/recovery expectations
|
||||||
|
|
||||||
|
That reopen must still obey all of the following:
|
||||||
|
|
||||||
|
- open through a dedicated clean-room timer-pattern handoff only
|
||||||
|
- bind the slice narrowly instead of reopening "timer" as a whole family
|
||||||
|
- preserve `KubeTimr` ownership for the landed local subsystem slice
|
||||||
|
- preserve `CubeDesk` ownership for trainer-session and integrated smart-device
|
||||||
|
workflow product patterns
|
||||||
|
|
||||||
|
These are **not** sufficient reopen reasons:
|
||||||
|
|
||||||
|
- "`cstimer` is stronger overall"
|
||||||
|
- "the browser shell is richer"
|
||||||
|
- a generic desire for a timer rewrite
|
||||||
|
- a desire to blur `KubeTimr` and `CubeDesk` ownership back into one donor row
|
||||||
|
|
||||||
|
## Operational answer
|
||||||
|
|
||||||
|
Current HyperTwist canon should use `cstimer` as:
|
||||||
|
|
||||||
|
- the primary restrictive validation oracle for timer semantics
|
||||||
|
- the primary restrictive parity reference for stats and session behavior
|
||||||
|
- the primary restrictive parity reference for scramble breadth
|
||||||
|
- the primary restrictive parity reference for `GAN`/smart-device behavior
|
||||||
|
|
||||||
|
Current HyperTwist canon should **not** use `cstimer` as:
|
||||||
|
|
||||||
|
- a default next clean-room packet
|
||||||
|
- a donor-style integration candidate
|
||||||
|
- proof that the current first-party timer code is incomplete by default
|
||||||
|
|
||||||
|
So the correct continuation remains:
|
||||||
|
|
||||||
|
- keep the current live timer and training code closed
|
||||||
|
- use `cstimer` for bounded benchmark or acceptance planning
|
||||||
|
- reopen only when one exact missing first-party slice is proven
|
||||||
|
|
@ -361,7 +361,7 @@ These rows stay retained, but not as active implementation backlog.
|
||||||
|
|
||||||
### `0R-E` benchmark, oracle, and clean-room-later rows
|
### `0R-E` benchmark, oracle, and clean-room-later rows
|
||||||
|
|
||||||
- `cs0x7f/cstimer` — primary restrictive timer/stats/scramble/smart-device benchmark and future clean-room timer-pattern oracle
|
- `cs0x7f/cstimer` — primary restrictive oracle for competition-grade timer semantics, rolling stats/`DNF` math, session interchange, scramble-registry breadth, and `GAN`/smart-device behavior; reopen only through a dedicated clean-room timer-pattern handoff if a specific gap is proven
|
||||||
- `brownan/Rubiks-Cube-Solver` — primary compact solver oracle and clean-room-later heuristic/search benchmark
|
- `brownan/Rubiks-Cube-Solver` — primary compact solver oracle and clean-room-later heuristic/search benchmark
|
||||||
- `efrantar/rob-twophase` — secondary solver oracle for metric and performance comparison
|
- `efrantar/rob-twophase` — secondary solver oracle for metric and performance comparison
|
||||||
- `ShellPuppy/RCube` — large-`N` centers/edges/parity benchmark and later clean-room research input
|
- `ShellPuppy/RCube` — large-`N` centers/edges/parity benchmark and later clean-room research input
|
||||||
|
|
|
||||||
|
|
@ -257,7 +257,7 @@ Packet result:
|
||||||
Most important scheduling result:
|
Most important scheduling result:
|
||||||
|
|
||||||
- the reference, benchmark, reserve, and discard backlog is now closed as a `Phase 0R` evaluation class
|
- the reference, benchmark, reserve, and discard backlog is now closed as a `Phase 0R` evaluation class
|
||||||
- `cs0x7f/cstimer` remains the primary restrictive timer/stats/smart-device benchmark and future clean-room timer-pattern oracle
|
- `cs0x7f/cstimer` remains the primary restrictive oracle for competition-grade timer semantics, rolling stats/`DNF` math, session interchange, scramble-registry breadth, and `GAN`/smart-device behavior; reopen only through a dedicated clean-room timer-pattern handoff if a specific gap is proven
|
||||||
- `brownan/Rubiks-Cube-Solver` remains the primary compact solver oracle and clean-room-later heuristic-table benchmark
|
- `brownan/Rubiks-Cube-Solver` remains the primary compact solver oracle and clean-room-later heuristic-table benchmark
|
||||||
- `efrantar/rob-twophase` remains a secondary solver oracle for metric and performance comparison
|
- `efrantar/rob-twophase` remains a secondary solver oracle for metric and performance comparison
|
||||||
- `ShellPuppy/RCube` remains a large-`N` algorithm and parity benchmark
|
- `ShellPuppy/RCube` remains a large-`N` algorithm and parity benchmark
|
||||||
|
|
|
||||||
|
|
@ -368,7 +368,7 @@ Count: `13`
|
||||||
| `AviKaufman/Rubix-cube-trainer` | `All Rights Reserved` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary all-rights-reserved guided-pedagogy benchmark for clean-room lesson-state and stepwise solve flow design. |
|
| `AviKaufman/Rubix-cube-trainer` | `All Rights Reserved` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary all-rights-reserved guided-pedagogy benchmark for clean-room lesson-state and stepwise solve flow design. |
|
||||||
| `brianpeiris/RiftSketch` | `MIT` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Discard from the active retained set; immersive live-coding is off topic to HyperTwist's retained product scope. |
|
| `brianpeiris/RiftSketch` | `MIT` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Discard from the active retained set; immersive live-coding is off topic to HyperTwist's retained product scope. |
|
||||||
| `brownan/Rubiks-Cube-Solver` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary compact solver oracle and clean-room-later heuristic/search benchmark; use for correctness, not donor code. |
|
| `brownan/Rubiks-Cube-Solver` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary compact solver oracle and clean-room-later heuristic/search benchmark; use for correctness, not donor code. |
|
||||||
| `cs0x7f/cstimer` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary restrictive timer/stats/scramble/smart-device benchmark and future clean-room timer-pattern oracle. |
|
| `cs0x7f/cstimer` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as the primary restrictive oracle for competition-grade inspection or multi-phase timing semantics, rolling stats/average or `DNF` math, session/import-export expectations, scramble-registry breadth, and `GAN`/smart-device behavior; reopen only through a dedicated clean-room timer-pattern handoff if a specific first-party gap is proven. |
|
||||||
| `efrantar/rob-twophase` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as a secondary solver oracle for metric, pruning, and performance comparison; do not treat as donor code. |
|
| `efrantar/rob-twophase` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Retain as a secondary solver oracle for metric, pruning, and performance comparison; do not treat as donor code. |
|
||||||
| `MathewKJ2048/Rubiks-cube-simulator` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Discard from the active retained set as an inferior duplicate of stronger pedagogy, planner, and history benchmarks. |
|
| `MathewKJ2048/Rubiks-cube-simulator` | `GPL-3.0` | Reserve Bench | `future candidate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Packet 0R-E` closed. Discard from the active retained set as an inferior duplicate of stronger pedagogy, planner, and history benchmarks. |
|
||||||
| `poliva/cubedex` | `no explicit license visible` | Locked Strategic Donor | `integrate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Phase 1R` plus the `2026-05-27` smartcube practice/review/SRS hierarchy clarification are closed. Retain only as restrictive comparison context for smartcube-aware practice-shell behavior, review/SRS UX, recognition-versus-execution timing presentation, and local stats/history comparison; do not treat it as a live owner or a default clean-room next row. |
|
| `poliva/cubedex` | `no explicit license visible` | Locked Strategic Donor | `integrate` | `not_live_reference_or_discard_candidate` | `phase0r_reference_benchmark_or_discard_eval` | `Phase 1R` plus the `2026-05-27` smartcube practice/review/SRS hierarchy clarification are closed. Retain only as restrictive comparison context for smartcube-aware practice-shell behavior, review/SRS UX, recognition-versus-execution timing presentation, and local stats/history comparison; do not treat it as a live owner or a default clean-room next row. |
|
||||||
|
|
|
||||||
|
|
@ -1409,20 +1409,26 @@ Source basis:
|
||||||
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer`
|
- `C:\Workspaces\HyperTwist\mirrors\restrictive\cs0x7f\cstimer`
|
||||||
- `C:\visual_studio_solutions\multi_project\GPT 5.4 HyperTwist parse\41-cs0x7f-cstimer-upstream-dossier.md`
|
- `C:\visual_studio_solutions\multi_project\GPT 5.4 HyperTwist parse\41-cs0x7f-cstimer-upstream-dossier.md`
|
||||||
- `C:\HyperTwist\docs\HYPERTWIST_PHASE_0R_PACKET_0R_E_EVALUATION_2026-05-13.md`
|
- `C:\HyperTwist\docs\HYPERTWIST_PHASE_0R_PACKET_0R_E_EVALUATION_2026-05-13.md`
|
||||||
|
- `C:\HyperTwist\docs\HYPERTWIST_CSTIMER_BENCHMARK_ORACLE_AND_REOPEN_CRITERIA_RECONCILIATION_2026-05-27.md`
|
||||||
|
|
||||||
Approved working posture:
|
Approved working posture:
|
||||||
|
|
||||||
- do not read it into clean implementation lanes
|
- do not read it into clean implementation lanes
|
||||||
- use it as the primary restrictive benchmark and planning reference for
|
- use it as the primary restrictive benchmark and planning reference for
|
||||||
competitive timer UX, session flow, import/export parity, broader scramble
|
competition-grade inspection or multi-phase timing semantics, rolling
|
||||||
behavior, and smart-device expectations
|
stats/average or `DNF` math, session/import-export parity, broader
|
||||||
|
scramble-registry behavior, and `GAN`/smart-device expectations
|
||||||
- preserve the distinction between the broader `cstimer` oracle slice and the
|
- preserve the distinction between the broader `cstimer` oracle slice and the
|
||||||
narrower already landed `KubeTimr` local timer subsystem slice
|
narrower already landed `KubeTimr` local timer subsystem slice
|
||||||
- preserve the distinction between this broader oracle slice and
|
- preserve the distinction between this broader oracle slice and
|
||||||
`kash/cubedesk` as the retained clean-room owner for trainer-session,
|
`kash/cubedesk` as the retained clean-room owner for trainer-session,
|
||||||
solve/session, and integrated smart-cube workflow product patterns
|
solve/session, and integrated smart-cube workflow product patterns
|
||||||
|
- do not treat the browser/PWA shell as the retained center of gravity
|
||||||
- preserve its `0R-E` status as the primary restrictive timer/stats/scramble/smart-device oracle row
|
- preserve its `0R-E` status as the primary restrictive timer/stats/scramble/smart-device oracle row
|
||||||
- if later implementation value remains high, route it through a dedicated clean-room handoff rather than ordinary donor intake
|
- if a future first-party gap is proven in timing semantics, stats parity,
|
||||||
|
session interchange, scramble breadth, or smart-device behavior, route it
|
||||||
|
through a dedicated clean-room timer-pattern handoff rather than ordinary
|
||||||
|
donor intake
|
||||||
|
|
||||||
### `efrantar/rob-twophase`
|
### `efrantar/rob-twophase`
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ Do not collapse those three tiers into one undifferentiated "features" voice.
|
||||||
| Native Unreal training runtime | Implemented now | first-party runtime + kickoff note | Current runtime center is real, not speculative. |
|
| Native Unreal training runtime | Implemented now | first-party runtime + kickoff note | Current runtime center is real, not speculative. |
|
||||||
| Training session orchestration and coaching cockpit | Implemented now | current training/coaching surfaces | `UHyperTwistTrainingSubsystem`, `UHyperTwistTrainingRuntimeLibrary`, `UHyperTwistTrainingPanelWidget`, and `UHyperTwistCoachDashboardWidget` are real first-party anchors. |
|
| Training session orchestration and coaching cockpit | Implemented now | current training/coaching surfaces | `UHyperTwistTrainingSubsystem`, `UHyperTwistTrainingRuntimeLibrary`, `UHyperTwistTrainingPanelWidget`, and `UHyperTwistCoachDashboardWidget` are real first-party anchors. |
|
||||||
| Curriculum/catalog materialization and generated-mode launch | Implemented now | first-party catalog/training surfaces | Imported training packs and generated-mode launch flows are live. |
|
| Curriculum/catalog materialization and generated-mode launch | Implemented now | first-party catalog/training surfaces | Imported training packs and generated-mode launch flows are live. |
|
||||||
| Classic-cube timing, drill, and training-session flows | Implemented now | landed timer/training packets | Current training surface is broader than a timer-only shell. The live timer substrate is still the narrower landed `KubeTimr`-derived local subsystem slice, while bounded `kash/cubedesk` clean-room implementation is now also live above it for trainer-session coupling, solve/session/training-session/game-session domain surfaces, analytics panels, and integrated smart-device workflow composition; broader competitive timer parity remains retained under `cs0x7f/cstimer`, and legacy session-format reference value remains retained under `cubing/qqTimer`. |
|
| Classic-cube timing, drill, and training-session flows | Implemented now | landed timer/training packets | Current training surface is broader than a timer-only shell. The live timer substrate is still the narrower landed `KubeTimr`-derived local subsystem slice, while bounded `kash/cubedesk` clean-room implementation is now also live above it for trainer-session coupling, solve/session/training-session/game-session domain surfaces, analytics panels, and integrated smart-device workflow composition; broader competitive timer parity remains retained under `cs0x7f/cstimer` specifically for competition-grade inspection or multi-phase timing semantics, rolling stats/average or `DNF` math, session/import-export expectations, scramble-registry breadth, and `GAN`/smart-device behavior, and legacy session-format reference value remains retained under `cubing/qqTimer`. |
|
||||||
| Publication/leaderboard projection and entitlement gating | Implemented now | landed `kash/cubedesk` bounded packets | Publication and entitlement are live first-party training surfaces. |
|
| Publication/leaderboard projection and entitlement gating | Implemented now | landed `kash/cubedesk` bounded packets | Publication and entitlement are live first-party training surfaces. |
|
||||||
| Local social challenge bundle | Implemented now | landed `kash/cubedesk` `Bound 5` | Challenge/social training slice is real, but bounded. |
|
| Local social challenge bundle | Implemented now | landed `kash/cubedesk` `Bound 5` | Challenge/social training slice is real, but bounded. |
|
||||||
| Classic-cube calibration and ordered face observation | Implemented now | landed `qbr` packet | Calibration contract and ordered face-observation contract are live. |
|
| Classic-cube calibration and ordered face observation | Implemented now | landed `qbr` packet | Calibration contract and ordered face-observation contract are live. |
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue