diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json index caa1093..f69ef35 100644 --- a/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json +++ b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json @@ -1,5 +1,5 @@ { - "generated_at": "2026-05-13T22:00:00Z", + "generated_at": "2026-05-13T23:30:00Z", "slice": "catalog-materialization", "slice_status": "closed", "counts": { @@ -7,7 +7,7 @@ "track_manifests": 14, "deck_import_specs": 498, "runtime_content_bundles": 498, - "reference_targets": 43, - "overlap_pruned_exclusions": 43 + "reference_targets": 49, + "overlap_pruned_exclusions": 49 } } diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json index 6e4496b..adfa71c 100644 --- a/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json +++ b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json @@ -1770,6 +1770,263 @@ "Preserve the MPL-side compliance boundary while rewriting the surfaced legal and packaging shell as first-party HyperTwist guidance.", "This target pairs with the compiled Phase 4R-A compliance boundary and keeps the no-private-fork posture explicit." ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-history-reference-page-stack", + "SurfaceType": "legacy-4d-history-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D History, Marks, and Save-Restore Contract", + "IncorporationChannel": "history-contract", + "TargetAssetFamily": "history-contract-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/history-contract", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist history target preserving move-log, marks, macro brackets, undo-redo traversal, and save-restore semantics from MagicCube4D beneath owned higher-dimensional history flows." + }, + "PreserveFactualElements": [ + "history nodes", + "mark delimiters", + "macro brackets", + "undo redo traversal", + "save restore log semantics" + ], + "RewriteRequiredElements": [ + "all donor Swing shell wording", + "all donor menu and file-dialog framing", + "all donor legacy UI-state assumptions" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-history-reference-page", + "family": "legacy-4d-history", + "subset": "move-log-and-marks" + }, + "MaterializationNotes": [ + "Preserve history, mark, macro-boundary, and replay semantics while rewriting the surfaced history shell in first-party HyperTwist language.", + "This target pairs with the compiled Phase 4R-B history contract and keeps the higher-dimensional history lane beneath the Hyperspeedcube anchor." + ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-macro-reference-page-stack", + "SurfaceType": "legacy-4d-macro-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D Macro Remapping and Reversal Contract", + "IncorporationChannel": "macro-contract", + "TargetAssetFamily": "macro-contract-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/macro-contract", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist macro target preserving reference-grip remapping, 4D transform application, reversal, and playback semantics from MagicCube4D beneath owned higher-dimensional teaching flows." + }, + "PreserveFactualElements": [ + "reference grips", + "4D transform remapping", + "closest-grip remap", + "macro reversal", + "macro serialization" + ], + "RewriteRequiredElements": [ + "all donor macro-editor wording", + "all donor file-format lock-in assumptions", + "all donor menu-shell choreography" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-macro-reference-page", + "family": "legacy-4d-macro", + "subset": "reference-grip-remapping" + }, + "MaterializationNotes": [ + "Preserve macro remapping and reversal semantics while rewriting the surfaced authoring shell in first-party HyperTwist language.", + "This target pairs with the compiled Phase 4R-B macro contract and keeps higher-dimensional macro playback first-party." + ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-puzzle-description-reference-page-stack", + "SurfaceType": "legacy-4d-puzzle-description-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D Puzzle Description and Topology Contract", + "IncorporationChannel": "puzzle-description-contract", + "TargetAssetFamily": "puzzle-description-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/puzzle-description-contract", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist topology target preserving generic polytope slicing, Schlafli-product puzzle parsing, and grip-sticker-face relationships from MagicCube4D without displacing the Hyperspeedcube runtime anchor." + }, + "PreserveFactualElements": [ + "Schlafli product parsing", + "polytope slicing", + "grip to face mapping", + "face cut offsets", + "sticker and cubie relationships" + ], + "RewriteRequiredElements": [ + "all donor applet-shell wording", + "all donor TODO and issue-list narration", + "all donor legacy configuration shell assumptions" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-puzzle-description-reference-page", + "family": "legacy-4d-puzzle-description", + "subset": "generic-polytope-slicing" + }, + "MaterializationNotes": [ + "Preserve generic puzzle-description and topology semantics while rewriting the surfaced adapter shell in first-party HyperTwist language.", + "This target pairs with the compiled Phase 4R-B topology contract and does not replace the Hyperspeedcube runtime anchor." + ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-interaction-reference-page-stack", + "SurfaceType": "legacy-4d-interaction-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D Interaction, Picking, and Animation Contract", + "IncorporationChannel": "interaction-contract", + "TargetAssetFamily": "interaction-contract-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/interaction-contract", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist interaction target preserving 4D rotation grammar, snap behavior, sticker picking, highlight state, slice masks, and animation-queue semantics from MagicCube4D beneath owned higher-dimensional interaction flows." + }, + "PreserveFactualElements": [ + "4D view matrix state", + "snap to center semantics", + "spin continuation", + "sticker picking and highlighting", + "slice mask and animation queue" + ], + "RewriteRequiredElements": [ + "all donor Swing event-shell wording", + "all donor component lifecycle assumptions", + "all donor property-manager framing" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-interaction-reference-page", + "family": "legacy-4d-interaction", + "subset": "rotation-and-drag-grammar" + }, + "MaterializationNotes": [ + "Preserve rotation grammar, picking, highlighting, slice-mask, and animation semantics while rewriting the surfaced interaction shell in first-party HyperTwist language.", + "This target pairs with the compiled Phase 4R-B interaction contract and keeps higher-dimensional runtime ownership outside the donor shell." + ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-view-reference-page-stack", + "SurfaceType": "legacy-4d-view-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D View Controller Composition Reference", + "IncorporationChannel": "view-controller-reference", + "TargetAssetFamily": "view-controller-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/view", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist view-controller reference preserving listener callbacks, queued move animation, motion-aware highlight refresh, and safe input routing from MagicCube4D without carrying over the Swing shell." + }, + "PreserveFactualElements": [ + "viewer controller composition", + "listener callbacks", + "queued move animation", + "motion-aware highlight refresh", + "component-safe input routing" + ], + "RewriteRequiredElements": [ + "all donor Swing component wording", + "all donor applet and panel framing", + "all donor Java event-thread assumptions" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-view-reference-page", + "family": "legacy-4d-view-controller", + "subset": "viewer-composition" + }, + "MaterializationNotes": [ + "Preserve view-controller composition semantics while rewriting the surfaced component shell in first-party HyperTwist language.", + "This target keeps the interaction composition value explicit without promoting the donor Swing shell into HyperTwist ownership." + ] + }, + { + "ReferenceTargetId": "reference/cutelyaware-magiccube4d-attribution-reference-page-boundary", + "SurfaceType": "legacy-4d-attribution-reference", + "TrackTitle": "Legacy 4D Interaction and History", + "ItemTitle": "Legacy 4D Attribution and Provenance Boundary", + "IncorporationChannel": "attribution-boundary", + "TargetAssetFamily": "compliance-boundary-note", + "PuzzleFamily": "Hypercube", + "NotationProfile": "family-specific", + "SourceAttribution": { + "SourceMode": "DirectDonor", + "SourceRepo": "cutelyaware/magiccube4d", + "SourceLicense": "Custom permissive attribution-request license", + "SourceTrackId": "legacy-4d/attribution-boundary", + "SourceDeckId": "", + "SourceCaseId": "", + "SourceNotes": "First-party HyperTwist compliance target preserving visible attribution, required upstream link, notice retention, and the MyMath provenance caveat from MagicCube4D." + }, + "PreserveFactualElements": [ + "custom attribution-request license posture", + "required upstream link", + "copyright and notice retention", + "MyMath provenance caveat" + ], + "RewriteRequiredElements": [ + "all donor legal-shell wording beyond the preserved factual duties", + "all donor packaging assumptions", + "all donor UI placement assumptions" + ], + "ContentSourceFile": "./raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl", + "MatchFilter": { + "source": "cutelyaware/magiccube4d", + "source_scope": "repo-backed", + "structure_template": "legacy-4d-attribution-reference-page", + "family": "legacy-4d-attribution", + "subset": "license-and-provenance" + }, + "MaterializationNotes": [ + "Preserve the attribution and provenance boundary while rewriting the surfaced compliance shell as first-party HyperTwist guidance.", + "This target pairs with the compiled Phase 4R-B attribution boundary and keeps the upstream link and MyMath provenance note explicit." + ] } ] } diff --git a/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl new file mode 100644 index 0000000..31e9c1e --- /dev/null +++ b/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl @@ -0,0 +1,6 @@ +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-history","subset":"move-log-and-marks","page_id":"legacy-4d-history-stack","page_title":"Legacy 4D History, Marks, and Save-Restore Contract","surface_type":"legacy-4d-history-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\History.java"],"preserve_factual_elements":["history nodes","mark delimiters","macro brackets","undo redo traversal","save restore log semantics"],"notes":"Source-backed history contract target for first-party HyperTwist higher-dimensional move-log, mark, macro-boundary, and replay-history behavior beneath the retained MagicCube4D lane."} +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-macro","subset":"reference-grip-remapping","page_id":"legacy-4d-macro-stack","page_title":"Legacy 4D Macro Remapping and Reversal Contract","surface_type":"legacy-4d-macro-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\Macro.java","C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\History.java"],"preserve_factual_elements":["reference grips","4D transform remapping","closest-grip remap","macro reversal","macro serialization"],"notes":"Source-backed macro contract target for first-party HyperTwist higher-dimensional macro capture, remapping, reversal, and playback flows beneath the retained MagicCube4D lane."} +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-puzzle-description","subset":"generic-polytope-slicing","page_id":"legacy-4d-puzzle-description-stack","page_title":"Legacy 4D Puzzle Description and Topology Contract","surface_type":"legacy-4d-puzzle-description-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\PolytopePuzzleDescription.java"],"preserve_factual_elements":["Schlafli product parsing","polytope slicing","grip to face mapping","face cut offsets","sticker and cubie relationships"],"notes":"Source-backed topology contract target for first-party HyperTwist generic polytope slicing, grip-sticker-face relationships, and puzzle-description adapters beneath the Hyperspeedcube runtime anchor."} +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-interaction","subset":"rotation-and-drag-grammar","page_id":"legacy-4d-interaction-stack","page_title":"Legacy 4D Interaction, Picking, and Animation Contract","surface_type":"legacy-4d-interaction-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\RotationHandler.java","C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\MC4DView.java"],"preserve_factual_elements":["4D view matrix state","snap to center semantics","spin continuation","sticker picking and highlighting","slice mask and animation queue"],"notes":"Source-backed interaction contract target for first-party HyperTwist higher-dimensional rotation grammar, picking, highlight, slice-mask, and animation-queue behavior beneath the retained MagicCube4D lane."} +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-view-controller","subset":"viewer-composition","page_id":"legacy-4d-view-controller-stack","page_title":"Legacy 4D View Controller Composition Reference","surface_type":"legacy-4d-view-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\MC4DView.java","C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\superliminal\\magiccube4d\\RotationHandler.java"],"preserve_factual_elements":["viewer controller composition","listener callbacks","queued move animation","motion-aware highlight refresh","component-safe input routing"],"notes":"Source-backed view-controller reference target for first-party HyperTwist higher-dimensional sidecars, preserving MagicCube4D interaction composition without carrying over the Swing shell."} +{"source":"cutelyaware/magiccube4d","source_scope":"repo-backed","family":"legacy-4d-attribution","subset":"license-and-provenance","page_id":"legacy-4d-attribution-boundary","page_title":"Legacy 4D Attribution and Provenance Boundary","surface_type":"legacy-4d-attribution-reference","origin_paths":["C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\LICENSE.md","C:\\Workspaces\\HyperTwist\\mirrors\\permissive\\cutelyaware\\magiccube4d\\src\\com\\donhatchsw\\util\\MyMath.java"],"preserve_factual_elements":["custom attribution-request license posture","required upstream link","copyright and notice retention","MyMath provenance caveat"],"notes":"Source-backed attribution boundary target for first-party HyperTwist use of MagicCube4D as an attributed strategic donor, including the preserved MyMath provenance caveat."} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.cpp new file mode 100644 index 0000000..888283a --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.cpp @@ -0,0 +1,571 @@ +#include "HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h" + +namespace HyperTwistTrainingLegacy4DLibraryInternal +{ + const TCHAR* MagicCube4DLicense = TEXT("custom permissive attribution-request license"); + + FHyperTwistTrainingSourceAttribution MakeAttribution( + const FString& TrackId, + const FString& Notes + ) + { + FHyperTwistTrainingSourceAttribution Attribution; + Attribution.SourceMode = EHyperTwistTrainingSourceMode::DirectDonor; + Attribution.SourceRepo = TEXT("cutelyaware/magiccube4d"); + Attribution.SourceLicense = MagicCube4DLicense; + Attribution.SourceTrackId = TrackId; + Attribution.SourceNotes = Notes; + return Attribution; + } + + FHyperTwistTrainingLegacy4DPackageReference MakePackageReference( + const FString& PackageId, + const FString& Label, + const FString& ExportPath, + const FString& OwnershipRole, + const FString& LicensePosture, + const FString& Summary, + const TArray& RetainedSurfaceTags, + const TArray& RequiredNoticeActions, + const TArray& ExplicitExclusions, + const FHyperTwistTrainingSourceAttribution& SourceAttribution + ) + { + FHyperTwistTrainingLegacy4DPackageReference Reference; + Reference.PackageId = PackageId; + Reference.Label = Label; + Reference.ExportPath = ExportPath; + Reference.OwnershipRole = OwnershipRole; + Reference.LicensePosture = LicensePosture; + Reference.Summary = Summary; + Reference.RetainedSurfaceTags = RetainedSurfaceTags; + Reference.RequiredNoticeActions = RequiredNoticeActions; + Reference.ExplicitExclusions = ExplicitExclusions; + Reference.SourceAttribution = SourceAttribution; + return Reference; + } + + void AppendJoined(FString& OutText, const TArray& Values) + { + for (int32 Index = 0; Index < Values.Num(); ++Index) + { + if (Index > 0) + { + OutText.Append(TEXT(", ")); + } + + OutText.Append(Values[Index]); + } + } +} + +FHyperTwistTrainingLegacy4DReferenceBundle +UHyperTwistTrainingLegacy4DLibrary::BuildBundledLegacy4DReferenceBundle() +{ + using namespace HyperTwistTrainingLegacy4DLibraryInternal; + + FHyperTwistTrainingLegacy4DReferenceBundle Bundle; + Bundle.ReferenceUtc = TEXT("2026-05-13T23:00:00Z"); + Bundle.PrimaryHistoryContractId = TEXT("legacy-4d-history-stack"); + Bundle.PrimaryMacroContractId = TEXT("legacy-4d-macro-stack"); + Bundle.PrimaryPuzzleDescriptionContractId = TEXT("legacy-4d-puzzle-description-stack"); + Bundle.PrimaryInteractionContractId = TEXT("legacy-4d-interaction-stack"); + Bundle.PrimaryAttributionBoundaryId = TEXT("legacy-4d-attribution-boundary"); + + const TArray CommonNoticeActions = + { + TEXT("preserve the upstream copyright notice in third-party notices or equivalent release/legal materials"), + TEXT("provide natural product-facing attribution for MagicCube4D"), + TEXT("include a link to http://superliminal.com/cube/cube.htm in attribution materials"), + TEXT("preserve the upstream license text in distributed legal materials"), + TEXT("keep the MyMath provenance note visible if related numeric helpers are closely adapted") + }; + + Bundle.PackageReferences = + { + MakePackageReference( + TEXT("package/magiccube4d-history"), + TEXT("magiccube4d/History"), + TEXT("./src/com/superliminal/magiccube4d/History.java"), + TEXT("legacy-history-anchor"), + TEXT("attributed strategic donor"), + TEXT("Move-log, mark, macro-boundary, undo-redo, and save-restore substrate for owned HyperTwist higher-dimensional history and review flows."), + { + TEXT("history nodes"), + TEXT("marks and macro brackets"), + TEXT("undo redo traversal"), + TEXT("save restore log format") + }, + CommonNoticeActions, + { + TEXT("whole Java shell ownership"), + TEXT("Swing app-shell ownership"), + TEXT("direct donor UI transplant") + }, + MakeAttribution( + TEXT("legacy-4d/history"), + TEXT("Preserves move-log, mark, macro-boundary, undo-redo, and save-restore semantics from MagicCube4D beneath first-party HyperTwist history and review ownership.") + ) + ), + MakePackageReference( + TEXT("package/magiccube4d-macro"), + TEXT("magiccube4d/Macro"), + TEXT("./src/com/superliminal/magiccube4d/Macro.java"), + TEXT("legacy-macro-anchor"), + TEXT("attributed strategic donor"), + TEXT("Reference-grip macro remapping, transform application, and reversal substrate for owned HyperTwist higher-dimensional macro and teaching flows."), + { + TEXT("reference grips"), + TEXT("4D transform remapping"), + TEXT("macro reversal"), + TEXT("macro serialization") + }, + CommonNoticeActions, + { + TEXT("whole macro editor shell ownership"), + TEXT("legacy file format lock-in"), + TEXT("direct donor UI transplant") + }, + MakeAttribution( + TEXT("legacy-4d/macro"), + TEXT("Preserves reference-grip macro remapping, transform application, reversal, and serialization seams from MagicCube4D for first-party HyperTwist higher-dimensional macro flows.") + ) + ), + MakePackageReference( + TEXT("package/magiccube4d-polytope-puzzle-description"), + TEXT("magiccube4d/PolytopePuzzleDescription"), + TEXT("./src/com/superliminal/magiccube4d/PolytopePuzzleDescription.java"), + TEXT("legacy-geometry-reference"), + TEXT("attributed strategic donor"), + TEXT("Legacy generic polytope slicing, grip-sticker-face relationship, and Schlafli-product puzzle-description substrate for owned HyperTwist topology adapters."), + { + TEXT("Schlafli product parsing"), + TEXT("polytope slicing"), + TEXT("grip to face mapping"), + TEXT("face cut offsets"), + TEXT("sticker and cubie relationships") + }, + CommonNoticeActions, + { + TEXT("Hyperspeedcube replacement"), + TEXT("legacy app-shell ownership"), + TEXT("copying TODOs as first-party roadmap") + }, + MakeAttribution( + TEXT("legacy-4d/puzzle-description"), + TEXT("Preserves generic polytope slicing, grip-sticker-face relationships, and Schlafli-product puzzle-description seams from MagicCube4D without displacing the Hyperspeedcube runtime anchor.") + ) + ), + MakePackageReference( + TEXT("package/magiccube4d-rotation-handler"), + TEXT("magiccube4d/RotationHandler"), + TEXT("./src/com/superliminal/magiccube4d/RotationHandler.java"), + TEXT("legacy-4d-rotation-grammar"), + TEXT("attributed strategic donor"), + TEXT("4D rotation-state, snap-to-center, spin continuation, and drag-grammar substrate for owned HyperTwist higher-dimensional interaction flows."), + { + TEXT("4D view matrix state"), + TEXT("snap to center"), + TEXT("spin continuation"), + TEXT("drag grammar") + }, + CommonNoticeActions, + { + TEXT("whole input shell ownership"), + TEXT("legacy property-manager dependency"), + TEXT("direct utility transplant") + }, + MakeAttribution( + TEXT("legacy-4d/rotation-handler"), + TEXT("Preserves 4D rotation-state, snap semantics, spin continuation, and drag grammar from MagicCube4D beneath first-party HyperTwist interaction ownership.") + ) + ), + MakePackageReference( + TEXT("package/magiccube4d-view"), + TEXT("magiccube4d/MC4DView"), + TEXT("./src/com/superliminal/magiccube4d/MC4DView.java"), + TEXT("legacy-view-controller-reference"), + TEXT("attributed strategic donor"), + TEXT("Animation-queue, picking, highlighting, slice-mask, and viewer-controller composition substrate for owned HyperTwist higher-dimensional sidecars."), + { + TEXT("animation queue"), + TEXT("sticker picking"), + TEXT("sticker highlighting"), + TEXT("slice mask"), + TEXT("viewer controller composition") + }, + CommonNoticeActions, + { + TEXT("Swing component transplant"), + TEXT("legacy event-shell ownership"), + TEXT("whole donor viewer shell") + }, + MakeAttribution( + TEXT("legacy-4d/view"), + TEXT("Preserves animation-queue, sticker-picking, highlight, slice-mask, and viewer-controller seams from MagicCube4D for first-party HyperTwist higher-dimensional sidecars.") + ) + ), + MakePackageReference( + TEXT("package/magiccube4d-mymath-selective-reference"), + TEXT("donhatchsw/util/MyMath"), + TEXT("./src/com/donhatchsw/util/MyMath.java"), + TEXT("selective-math-provenance-reference"), + TEXT("attributed strategic donor with provenance caveat"), + TEXT("Selective numeric reference surface for legacy projection and interaction parity, with an explicit provenance caveat on one documented log1p note."), + { + TEXT("numeric helper parity"), + TEXT("projection helper reference"), + TEXT("provenance note retention") + }, + CommonNoticeActions, + { + TEXT("wholesale utility transplant"), + TEXT("pretending the file is a plain zero-friction utility import"), + TEXT("copying math helpers without provenance discipline") + }, + MakeAttribution( + TEXT("legacy-4d/mymath-provenance"), + TEXT("Records the selective math-helper provenance caveat noted in MagicCube4D without promoting MyMath into HyperTwist's default first-party math stack.") + ) + ) + }; + + FHyperTwistTrainingLegacy4DHistoryContract HistoryContract; + HistoryContract.ContractId = TEXT("legacy-4d-history-stack"); + HistoryContract.Title = TEXT("Legacy 4D history, marks, and save-restore contract"); + HistoryContract.Summary = TEXT("First-party HyperTwist contract for higher-dimensional move logs, mark boundaries, undo-redo traversal, macro delimiters, and persisted replay-history semantics informed by MagicCube4D."); + HistoryContract.RequiredPackageIds = + { + TEXT("package/magiccube4d-history"), + TEXT("package/magiccube4d-macro") + }; + HistoryContract.HistorySurfaceTags = + { + TEXT("history nodes"), + TEXT("current-node traversal"), + TEXT("undo redo"), + TEXT("truncate"), + TEXT("move enumeration") + }; + HistoryContract.MarkKinds = + { + TEXT("macro open and close"), + TEXT("scramble boundary"), + TEXT("setup moves"), + TEXT("arbitrary bookmark marks") + }; + HistoryContract.SerializationSurfaceTags = + { + TEXT("save restore log format"), + TEXT("mark-aware persistence"), + TEXT("macro-boundary persistence") + }; + HistoryContract.ExplicitExclusions = + { + TEXT("whole Java shell ownership"), + TEXT("legacy menu system"), + TEXT("direct donor UI state management") + }; + HistoryContract.SourceAttribution = MakeAttribution( + TEXT("legacy-4d/history-contract"), + TEXT("Preserves MagicCube4D history-node, mark, undo-redo, and persisted replay semantics beneath first-party HyperTwist higher-dimensional history ownership.") + ); + Bundle.HistoryContracts = {HistoryContract}; + + FHyperTwistTrainingLegacy4DMacroContract MacroContract; + MacroContract.ContractId = TEXT("legacy-4d-macro-stack"); + MacroContract.Title = TEXT("Legacy 4D macro remapping and reversal contract"); + MacroContract.Summary = TEXT("First-party HyperTwist contract for reference-grip macro capture, 4D transform remapping, reversal, and macro playback semantics for higher-dimensional teaching flows."); + MacroContract.RequiredPackageIds = + { + TEXT("package/magiccube4d-macro"), + TEXT("package/magiccube4d-history"), + TEXT("package/magiccube4d-polytope-puzzle-description") + }; + MacroContract.ReferenceSurfaceTags = + { + TEXT("definition grips"), + TEXT("application grips"), + TEXT("face-center references"), + TEXT("puzzle-specific macro ownership") + }; + MacroContract.TransformSurfaceTags = + { + TEXT("4D rotation transform derivation"), + TEXT("closest grip remapping"), + TEXT("determinant-based reverse handling"), + TEXT("macro serialization") + }; + MacroContract.PlaybackSurfaceTags = + { + TEXT("macro move list"), + TEXT("macro undo and truncate"), + TEXT("macro write and read") + }; + MacroContract.ExplicitExclusions = + { + TEXT("whole macro editor shell"), + TEXT("legacy persistence lock-in"), + TEXT("donor menu choreography") + }; + MacroContract.SourceAttribution = MakeAttribution( + TEXT("legacy-4d/macro-contract"), + TEXT("Preserves MagicCube4D reference-grip macro remapping, reversal, and serialization semantics for first-party HyperTwist higher-dimensional macro flows.") + ); + Bundle.MacroContracts = {MacroContract}; + + FHyperTwistTrainingLegacy4DPuzzleDescriptionContract PuzzleDescriptionContract; + PuzzleDescriptionContract.ContractId = TEXT("legacy-4d-puzzle-description-stack"); + PuzzleDescriptionContract.Title = TEXT("Legacy 4D puzzle-description and topology contract"); + PuzzleDescriptionContract.Summary = TEXT("First-party HyperTwist contract for generic polytope slicing, Schlafli-product puzzle-description parsing, and grip-sticker-face topology seams informed by MagicCube4D."); + PuzzleDescriptionContract.RequiredPackageIds = + { + TEXT("package/magiccube4d-polytope-puzzle-description"), + TEXT("package/magiccube4d-mymath-selective-reference") + }; + PuzzleDescriptionContract.PuzzleFamilies = + { + TEXT("generic Schlafli-product families"), + TEXT("hypercubes and simplices"), + TEXT("120-cell and related 4D families"), + TEXT("prisms and duoprisms"), + TEXT("Melinda 2x2x2x2-adjacent legacy references") + }; + PuzzleDescriptionContract.GeometrySurfaceTags = + { + TEXT("Schlafli product parsing"), + TEXT("polytope slicing"), + TEXT("sticker center hashing"), + TEXT("face cut offsets"), + TEXT("grip center and face-center relationships") + }; + PuzzleDescriptionContract.TopologySurfaceTags = + { + TEXT("sticker to face mapping"), + TEXT("sticker to cubie mapping"), + TEXT("grip to face mapping"), + TEXT("face opposites"), + TEXT("contiguous topology caveats") + }; + PuzzleDescriptionContract.ExplicitExclusions = + { + TEXT("Hyperspeedcube replacement"), + TEXT("legacy applet shell ownership"), + TEXT("copying historical TODOs as first-party roadmap") + }; + PuzzleDescriptionContract.SourceAttribution = MakeAttribution( + TEXT("legacy-4d/puzzle-description-contract"), + TEXT("Preserves MagicCube4D generic polytope slicing and topology seams without displacing the Hyperspeedcube higher-dimensional runtime anchor.") + ); + Bundle.PuzzleDescriptionContracts = {PuzzleDescriptionContract}; + + FHyperTwistTrainingLegacy4DInteractionContract InteractionContract; + InteractionContract.ContractId = TEXT("legacy-4d-interaction-stack"); + InteractionContract.Title = TEXT("Legacy 4D interaction, picking, and animation contract"); + InteractionContract.Summary = TEXT("First-party HyperTwist contract for 4D rotation grammar, snap behavior, sticker picking, highlight state, slice masks, and animation-queue semantics informed by MagicCube4D."); + InteractionContract.RequiredPackageIds = + { + TEXT("package/magiccube4d-rotation-handler"), + TEXT("package/magiccube4d-view"), + TEXT("package/magiccube4d-polytope-puzzle-description") + }; + InteractionContract.RotationSurfaceTags = + { + TEXT("4D view matrix state"), + TEXT("snap to cell or smart center"), + TEXT("spin continuation"), + TEXT("left shift right drag grammar") + }; + InteractionContract.ViewSurfaceTags = + { + TEXT("sticker picking"), + TEXT("sticker highlighting"), + TEXT("slice mask state"), + TEXT("viewer controller composition"), + TEXT("listener callbacks") + }; + InteractionContract.AnimationSurfaceTags = + { + TEXT("queued animation"), + TEXT("macro move flagging"), + TEXT("callback completion"), + TEXT("cancel animation"), + TEXT("highlight refresh during motion") + }; + InteractionContract.ExplicitExclusions = + { + TEXT("Swing component transplant"), + TEXT("whole donor event shell"), + TEXT("legacy property-manager dependency") + }; + InteractionContract.SourceAttribution = MakeAttribution( + TEXT("legacy-4d/interaction-contract"), + TEXT("Preserves MagicCube4D 4D rotation grammar, sticker picking, slice-mask, and animation-queue seams beneath first-party HyperTwist higher-dimensional interaction ownership.") + ); + Bundle.InteractionContracts = {InteractionContract}; + + FHyperTwistTrainingLegacy4DAttributionBoundary AttributionBoundary; + AttributionBoundary.BoundaryId = TEXT("legacy-4d-attribution-boundary"); + AttributionBoundary.Title = TEXT("Legacy 4D attribution and provenance boundary"); + AttributionBoundary.Summary = TEXT("First-party HyperTwist compliance boundary for using MagicCube4D as an attributed strategic donor, preserving notices, visible attribution, upstream link requirements, and the documented MyMath provenance caveat."); + AttributionBoundary.AllowedUseTags = + { + TEXT("first-party reauthored subsystem implementation"), + TEXT("attributed strategic donor reference"), + TEXT("bounded reference bundle and runtime contract use"), + TEXT("selective reauthored numeric helper parity with provenance discipline") + }; + AttributionBoundary.RequiredNoticeActions = CommonNoticeActions; + AttributionBoundary.ProvenanceCaveats = + { + TEXT("keep visible attribution to Superliminal Software and the MagicCube4D lineage"), + TEXT("do not treat the custom license as a silent plain-MIT import"), + TEXT("record the MyMath log1p provenance note rather than erasing it"), + TEXT("preserve the upstream site link requirement in product-facing attribution materials") + }; + AttributionBoundary.ExplicitExclusions = + { + TEXT("silent attribution removal"), + TEXT("whole legacy Java shell adoption"), + TEXT("wholesale MyMath transplant without provenance discipline"), + TEXT("treating MagicCube4D as the HyperTwist runtime owner") + }; + AttributionBoundary.SourceAttribution = MakeAttribution( + TEXT("legacy-4d/attribution-boundary"), + TEXT("Preserves MagicCube4D attribution, notice, link, and MyMath provenance obligations while keeping the landed HyperTwist higher-dimensional lane first-party and bounded.") + ); + Bundle.AttributionBoundaries = {AttributionBoundary}; + + return Bundle; +} + +bool UHyperTwistTrainingLegacy4DLibrary::TryGetHistoryContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DHistoryContract& OutContract +) +{ + for (const FHyperTwistTrainingLegacy4DHistoryContract& Contract : Bundle.HistoryContracts) + { + if (Contract.ContractId.Equals(ContractId, ESearchCase::IgnoreCase)) + { + OutContract = Contract; + return true; + } + } + + OutContract = FHyperTwistTrainingLegacy4DHistoryContract(); + return false; +} + +bool UHyperTwistTrainingLegacy4DLibrary::TryGetMacroContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DMacroContract& OutContract +) +{ + for (const FHyperTwistTrainingLegacy4DMacroContract& Contract : Bundle.MacroContracts) + { + if (Contract.ContractId.Equals(ContractId, ESearchCase::IgnoreCase)) + { + OutContract = Contract; + return true; + } + } + + OutContract = FHyperTwistTrainingLegacy4DMacroContract(); + return false; +} + +bool UHyperTwistTrainingLegacy4DLibrary::TryGetPuzzleDescriptionContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DPuzzleDescriptionContract& OutContract +) +{ + for (const FHyperTwistTrainingLegacy4DPuzzleDescriptionContract& Contract : Bundle.PuzzleDescriptionContracts) + { + if (Contract.ContractId.Equals(ContractId, ESearchCase::IgnoreCase)) + { + OutContract = Contract; + return true; + } + } + + OutContract = FHyperTwistTrainingLegacy4DPuzzleDescriptionContract(); + return false; +} + +bool UHyperTwistTrainingLegacy4DLibrary::TryGetInteractionContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DInteractionContract& OutContract +) +{ + for (const FHyperTwistTrainingLegacy4DInteractionContract& Contract : Bundle.InteractionContracts) + { + if (Contract.ContractId.Equals(ContractId, ESearchCase::IgnoreCase)) + { + OutContract = Contract; + return true; + } + } + + OutContract = FHyperTwistTrainingLegacy4DInteractionContract(); + return false; +} + +bool UHyperTwistTrainingLegacy4DLibrary::TryGetAttributionBoundaryById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& BoundaryId, + FHyperTwistTrainingLegacy4DAttributionBoundary& OutBoundary +) +{ + for (const FHyperTwistTrainingLegacy4DAttributionBoundary& Boundary : Bundle.AttributionBoundaries) + { + if (Boundary.BoundaryId.Equals(BoundaryId, ESearchCase::IgnoreCase)) + { + OutBoundary = Boundary; + return true; + } + } + + OutBoundary = FHyperTwistTrainingLegacy4DAttributionBoundary(); + return false; +} + +FString UHyperTwistTrainingLegacy4DLibrary::BuildPackageChecklistTsv( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle +) +{ + using namespace HyperTwistTrainingLegacy4DLibraryInternal; + + FString Output = TEXT("package_id\tlabel\texport_path\townership_role\tlicense_posture\tretained_surfaces\tsummary\n"); + for (const FHyperTwistTrainingLegacy4DPackageReference& Reference : Bundle.PackageReferences) + { + if (!Reference.IsStructurallyValid()) + { + continue; + } + + FString SurfaceTags; + AppendJoined(SurfaceTags, Reference.RetainedSurfaceTags); + + Output.Append(Reference.PackageId); + Output.Append(TEXT("\t")); + Output.Append(Reference.Label); + Output.Append(TEXT("\t")); + Output.Append(Reference.ExportPath); + Output.Append(TEXT("\t")); + Output.Append(Reference.OwnershipRole); + Output.Append(TEXT("\t")); + Output.Append(Reference.LicensePosture); + Output.Append(TEXT("\t")); + Output.Append(SurfaceTags); + Output.Append(TEXT("\t")); + Output.Append(Reference.Summary.Replace(TEXT("\t"), TEXT(" "))); + Output.Append(TEXT("\n")); + } + + return Output; +} diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp index ed49936..ff9f0a3 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp @@ -487,6 +487,11 @@ UHyperTwistTrainingRuntimeLibrary::GetBundledClassicCubingReferenceBundle() return UHyperTwistTrainingClassicCubingLibrary::BuildBundledClassicCubingReferenceBundle(); } +FHyperTwistTrainingLegacy4DReferenceBundle UHyperTwistTrainingRuntimeLibrary::GetBundledLegacy4DReferenceBundle() +{ + return UHyperTwistTrainingLegacy4DLibrary::BuildBundledLegacy4DReferenceBundle(); +} + bool UHyperTwistTrainingRuntimeLibrary::TryGetLatestGeneratedModeLaunchRequestForDeck( UObject* WorldContextObject, const FString& UserId, @@ -874,6 +879,73 @@ FString UHyperTwistTrainingRuntimeLibrary::BuildBundledClassicCubingPackageCheck ); } +bool UHyperTwistTrainingRuntimeLibrary::TryGetBundledLegacy4DHistoryContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DHistoryContract& OutContract +) +{ + return UHyperTwistTrainingLegacy4DLibrary::TryGetHistoryContractById( + GetBundledLegacy4DReferenceBundle(), + ContractId, + OutContract + ); +} + +bool UHyperTwistTrainingRuntimeLibrary::TryGetBundledLegacy4DMacroContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DMacroContract& OutContract +) +{ + return UHyperTwistTrainingLegacy4DLibrary::TryGetMacroContractById( + GetBundledLegacy4DReferenceBundle(), + ContractId, + OutContract + ); +} + +bool UHyperTwistTrainingRuntimeLibrary::TryGetBundledLegacy4DPuzzleDescriptionContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DPuzzleDescriptionContract& OutContract +) +{ + return UHyperTwistTrainingLegacy4DLibrary::TryGetPuzzleDescriptionContractById( + GetBundledLegacy4DReferenceBundle(), + ContractId, + OutContract + ); +} + +bool UHyperTwistTrainingRuntimeLibrary::TryGetBundledLegacy4DInteractionContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DInteractionContract& OutContract +) +{ + return UHyperTwistTrainingLegacy4DLibrary::TryGetInteractionContractById( + GetBundledLegacy4DReferenceBundle(), + ContractId, + OutContract + ); +} + +bool UHyperTwistTrainingRuntimeLibrary::TryGetBundledLegacy4DAttributionBoundary( + const FString& BoundaryId, + FHyperTwistTrainingLegacy4DAttributionBoundary& OutBoundary +) +{ + return UHyperTwistTrainingLegacy4DLibrary::TryGetAttributionBoundaryById( + GetBundledLegacy4DReferenceBundle(), + BoundaryId, + OutBoundary + ); +} + +FString UHyperTwistTrainingRuntimeLibrary::BuildBundledLegacy4DPackageChecklistTsv() +{ + return UHyperTwistTrainingLegacy4DLibrary::BuildPackageChecklistTsv( + GetBundledLegacy4DReferenceBundle() + ); +} + FHyperTwistTrainingLearnerDeckStateSummary UHyperTwistTrainingRuntimeLibrary::GetActiveTrainingLearnerDeckStateSummary(UObject* WorldContextObject) { if (UHyperTwistTrainingSubsystem* TrainingSubsystem = GetTrainingSubsystem(WorldContextObject)) diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h new file mode 100644 index 0000000..9f25f54 --- /dev/null +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h @@ -0,0 +1,332 @@ +#pragma once + +#include "CoreMinimal.h" +#include "Kismet/BlueprintFunctionLibrary.h" +#include "HyperTwistTraining/HyperTwistTrainingTypes.h" +#include "HyperTwistTrainingLegacy4DLibrary.generated.h" + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DPackageReference +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PackageId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Label; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ExportPath; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString OwnershipRole; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString LicensePosture; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RetainedSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredNoticeActions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !PackageId.IsEmpty() && !Label.IsEmpty() && !ExportPath.IsEmpty() + && !OwnershipRole.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DHistoryContract +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Title; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredPackageIds; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray HistorySurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray MarkKinds; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray SerializationSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !ContractId.IsEmpty() && !Title.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DMacroContract +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Title; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredPackageIds; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ReferenceSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray TransformSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray PlaybackSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !ContractId.IsEmpty() && !Title.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DPuzzleDescriptionContract +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Title; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredPackageIds; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray PuzzleFamilies; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray GeometrySurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray TopologySurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !ContractId.IsEmpty() && !Title.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DInteractionContract +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Title; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredPackageIds; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RotationSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ViewSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray AnimationSurfaceTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !ContractId.IsEmpty() && !Title.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DAttributionBoundary +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString BoundaryId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Title; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString Summary; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray AllowedUseTags; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray RequiredNoticeActions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ProvenanceCaveats; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray ExplicitExclusions; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FHyperTwistTrainingSourceAttribution SourceAttribution; + + bool IsStructurallyValid() const + { + return !BoundaryId.IsEmpty() && !Title.IsEmpty() && SourceAttribution.IsStructurallyValid(); + } +}; + +USTRUCT(BlueprintType) +struct FHyperTwistTrainingLegacy4DReferenceBundle +{ + GENERATED_BODY() + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString ReferenceUtc; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PrimaryHistoryContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PrimaryMacroContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PrimaryPuzzleDescriptionContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PrimaryInteractionContractId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + FString PrimaryAttributionBoundaryId; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray PackageReferences; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray HistoryContracts; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray MacroContracts; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray PuzzleDescriptionContracts; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray InteractionContracts; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist") + TArray AttributionBoundaries; + + bool IsStructurallyValid() const + { + return !PrimaryHistoryContractId.IsEmpty() && !PrimaryMacroContractId.IsEmpty() + && !PrimaryPuzzleDescriptionContractId.IsEmpty() && !PrimaryInteractionContractId.IsEmpty() + && !PrimaryAttributionBoundaryId.IsEmpty() && PackageReferences.Num() > 0; + } +}; + +UCLASS() +class UNREALHYPERTWIST_API UHyperTwistTrainingLegacy4DLibrary : public UBlueprintFunctionLibrary +{ + GENERATED_BODY() + +public: + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Legacy4D") + static FHyperTwistTrainingLegacy4DReferenceBundle BuildBundledLegacy4DReferenceBundle(); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetHistoryContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DHistoryContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetMacroContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DMacroContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetPuzzleDescriptionContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DPuzzleDescriptionContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetInteractionContractById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& ContractId, + FHyperTwistTrainingLegacy4DInteractionContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetAttributionBoundaryById( + const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle, + const FString& BoundaryId, + FHyperTwistTrainingLegacy4DAttributionBoundary& OutBoundary + ); + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Legacy4D") + static FString BuildPackageChecklistTsv(const FHyperTwistTrainingLegacy4DReferenceBundle& Bundle); +}; diff --git a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h index 87881c8..a41dd9e 100644 --- a/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h +++ b/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h @@ -9,6 +9,7 @@ #include "HyperTwistTraining/HyperTwistTrainingCompanionLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingCoachLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingKnowledgeLibrary.h" +#include "HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingSpatialLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingViewerLibrary.h" #include "HyperTwistTraining/HyperTwistTrainingTypes.h" @@ -164,6 +165,9 @@ public: UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|ClassicCubing") static FHyperTwistTrainingClassicCubingReferenceBundle GetBundledClassicCubingReferenceBundle(); + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Legacy4D") + static FHyperTwistTrainingLegacy4DReferenceBundle GetBundledLegacy4DReferenceBundle(); + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training", meta = (WorldContext = "WorldContextObject")) static bool TryGetLatestGeneratedModeLaunchRequestForDeck( UObject* WorldContextObject, @@ -332,6 +336,39 @@ public: UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|ClassicCubing") static FString BuildBundledClassicCubingPackageChecklistTsv(); + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetBundledLegacy4DHistoryContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DHistoryContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetBundledLegacy4DMacroContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DMacroContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetBundledLegacy4DPuzzleDescriptionContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DPuzzleDescriptionContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetBundledLegacy4DInteractionContract( + const FString& ContractId, + FHyperTwistTrainingLegacy4DInteractionContract& OutContract + ); + + UFUNCTION(BlueprintCallable, Category = "HyperTwist|Training|Legacy4D") + static bool TryGetBundledLegacy4DAttributionBoundary( + const FString& BoundaryId, + FHyperTwistTrainingLegacy4DAttributionBoundary& OutBoundary + ); + + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training|Legacy4D") + static FString BuildBundledLegacy4DPackageChecklistTsv(); + UFUNCTION(BlueprintPure, Category = "HyperTwist|Training", meta = (WorldContext = "WorldContextObject")) static FHyperTwistTrainingLearnerDeckStateSummary GetActiveTrainingLearnerDeckStateSummary(UObject* WorldContextObject); diff --git a/docs/HT_REPO_INCORPORATION_AUDIT_2026-05-11.md b/docs/HT_REPO_INCORPORATION_AUDIT_2026-05-11.md index cb220fb..29c101d 100644 --- a/docs/HT_REPO_INCORPORATION_AUDIT_2026-05-11.md +++ b/docs/HT_REPO_INCORPORATION_AUDIT_2026-05-11.md @@ -43,6 +43,11 @@ Important correction added on `2026-05-13`: - `cubing/cubing.js` is now a currently verified live boundary-sensitive lane through `Phase 4R-A`. - it is live through first-party Unreal classic-cubing contract code plus bundled reference-target materialization rather than through the direct training-deck bundle path used by the earlier five permissive donor lanes in this audit. +Important correction added on `2026-05-13`: + +- `cutelyaware/magiccube4d` is now a currently verified live boundary-sensitive lane through `Phase 4R-B`. +- it is live through first-party Unreal legacy `4D` contract code plus bundled reference-target materialization rather than through the direct training-deck bundle path used by the earlier five permissive donor lanes in this audit. + ## Scope - Current repo set audited: the 71 `HyperTwist` rows in `docs/repo_portfolio_unified_source_audit_v6_3.csv`. @@ -86,7 +91,6 @@ Important correction added on `2026-05-13`: - `twisty.js` - `Hyperspeedcube` - `qbr` - - `MagicCube4D` - `MagicTile` - `MagicCube5D` @@ -123,11 +127,12 @@ These rows are now materially present in checked first-party Unreal source, even ### Live boundary-sensitive code-backed -This row is now materially present in checked first-party Unreal source and materialized reference outputs through an explicit `MPL`-aware adapter posture. +These rows are now materially present in checked first-party Unreal source and materialized reference outputs through explicit adapter, attribution, and provenance boundaries. | Repo | License | Current docs posture | First-party evidence | Notes | | --- | --- | --- | --- | --- | | `cubing/cubing.js` | `MPL-2.0 OR GPL-3.0-or-later` | landed via `Phase 4R-A` | `HyperTwistTrainingClassicCubingLibrary.h/.cpp`; `HyperTwistTrainingRuntimeLibrary.h/.cpp`; `hypertwist-reference-incorporation-targets.json`; `hypertwist-catalog-materialization-summary.json`; `cubing-cubing-js-reference-pages.jsonl` | First-party classic-cubing semantic, geometry, viewer-adapter, device-adapter, search-contract, and `MPL` compliance-boundary surfaces are now landed in first-party source and materialized reference outputs without direct upstream source-file modification | +| `cutelyaware/magiccube4d` | `Custom permissive attribution-request license` | landed via `Phase 4R-B` | `HyperTwistTrainingLegacy4DLibrary.h/.cpp`; `HyperTwistTrainingRuntimeLibrary.h/.cpp`; `hypertwist-reference-incorporation-targets.json`; `hypertwist-catalog-materialization-summary.json`; `cutelyaware-magiccube4d-reference-pages.jsonl` | First-party higher-dimensional history, macro, puzzle-description, interaction, and attribution-boundary surfaces are now landed in first-party source and materialized reference outputs while keeping visible attribution, upstream-link, and `MyMath` provenance duties explicit | ### Partly implemented @@ -244,7 +249,6 @@ These rows are active or donor-shaped in docs, but this pass did not find exact #### Custom / special-term lanes -- `cutelyaware/magiccube4d` - `remotion-dev/remotion` ### Future candidate @@ -305,6 +309,10 @@ These currently live lanes are under permissive direct-donor posture and can be - preserve as the landed first-party classic-cubing adapter lane - keep the explicit `MPL` notice and publication-duty boundary visible - do not reinterpret this lane as a quiet private fork simply because it is now live +- `cutelyaware/magiccube4d` + - preserve as the landed first-party legacy `4D` history, macro, interaction, topology-reference, and provenance-boundary lane + - keep the explicit attribution, upstream-link, and `MyMath` provenance duties visible + - do not reinterpret this lane as permission for donor Swing-shell carryover simply because it is now live Also important: @@ -336,7 +344,7 @@ That does not make them legally cleared or deeply audited. It only means this pa ## Recommended next implementation slice -The next clean bounded move is to preserve the fifteen landed lanes as the current truth, keep the `onionhoney/roux-trainers` clean-room status explicit everywhere, keep the landed `cubing/cubing.js` `MPL` boundary explicit everywhere, and continue from the closed retained-set packet sequence with `Phase 4R-B` for `cutelyaware/magiccube4d`, while leaving the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap. After that, do a second pass focused on the additional live non-71 surfaces (`SpeedCubeDB` and `CubingApp`) so the active training catalog has a complete provenance board before any further widening work resumes. +The next clean bounded move is to preserve the sixteen landed lanes as the current truth, keep the `onionhoney/roux-trainers` clean-room status explicit everywhere, keep the landed `cubing/cubing.js` `MPL` boundary explicit everywhere, keep the landed `cutelyaware/magiccube4d` attribution/provenance boundary explicit everywhere, and continue from the closed retained-set packet sequence with `Phase 4R-C` for `google/model-viewer/packages/shared-assets`, while leaving the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap. After that, do a second pass focused on the additional live non-71 surfaces (`SpeedCubeDB` and `CubingApp`) so the active training catalog has a complete provenance board before any further widening work resumes. For the readable all-rows follow-up board that pairs this audit with the reset schedule, use: diff --git a/docs/HYPERTWIST_CANONICAL_RESTART_RECONCILIATION_2026-05-12.md b/docs/HYPERTWIST_CANONICAL_RESTART_RECONCILIATION_2026-05-12.md index a536d87..76f866c 100644 --- a/docs/HYPERTWIST_CANONICAL_RESTART_RECONCILIATION_2026-05-12.md +++ b/docs/HYPERTWIST_CANONICAL_RESTART_RECONCILIATION_2026-05-12.md @@ -38,9 +38,9 @@ Current handling: The current reconciled HyperTwist truth is: - current curated HyperTwist shallow-eval set: `71` repos -- currently verified live in checked `UnrealHyperTwist` surfaces: `15` +- currently verified live in checked `UnrealHyperTwist` surfaces: `16` - currently verified live permissive lanes: `13` -- currently verified live boundary-sensitive lanes: `1` +- currently verified live boundary-sensitive lanes: `2` - currently verified live restrictive lanes: `1` The thirteen currently verified live permissive lanes are: @@ -59,9 +59,10 @@ The thirteen currently verified live permissive lanes are: - `poliva/cubedex` - `newyork-anthonyng/rubiks-cross-trainer` -The one currently verified live boundary-sensitive lane is: +The two currently verified live boundary-sensitive lanes are: - `cubing/cubing.js` +- `cutelyaware/magiccube4d` The one currently verified live restrictive lane is: @@ -74,7 +75,7 @@ That restrictive lane must be treated as: - preserved as the current clean-room precedent - not to be reopened as an unresolved direct-donor contamination event -The remaining `56` rows are not to be treated as already implemented. +The remaining `55` rows are not to be treated as already implemented. `Phase 0R` is now closed for that non-live set. @@ -159,14 +160,14 @@ Use the following only as lineage or historical context unless a restart doc exp The restart is not a mass revert. -It is a provenance and planning reset around the remaining `56` current non-live rows while preserving the fifteen already-landed lanes. +It is a provenance and planning reset around the remaining `55` current non-live rows while preserving the sixteen already-landed lanes. Required standing rules: -- preserve the fifteen landed lanes +- preserve the sixteen landed lanes - preserve `onionhoney/roux-trainers` as the only currently verified landed restrictive clean-room lane - do not collapse `selected`, `retained`, `integrate`, `repurpose`, or `donor bench` into `already implemented` -- do not widen new donor-shaped implementation from the remaining `56` current non-live rows until the closed packet sequence routes it +- do not widen new donor-shaped implementation from the remaining `55` current non-live rows until the closed packet sequence routes it - before implementing any retained repo, read the packet-level deep-source authority doc for that repo class if one exists ## 2026-05-12 packet-depth correction @@ -203,7 +204,7 @@ Practical implication: Goal: -- deeply evaluate the remaining `56` rows repo by repo +- deeply evaluate the remaining `55` rows repo by repo Required output per retained row: @@ -502,8 +503,8 @@ Result: - `cahidenes/rubiks-cube-solver` and `tentone/rubix-solver` now form the retained `6R-E` recognition-comparison adjunct lane - `NuiLab/code-vr` now forms the retained `6R-F` symbolic-to-spatial XR pedagogy experiment lane - `pissang/claygl` and `pissang/clay-viewer` now form the retained optional `3R-G` alternative browser comparison lane -- `cubing/cubing.js` is now the fifteenth live row overall and the one live boundary-sensitive lane through the closed `Phase 4R-A` classic-cubing adapter packet -- `cutelyaware/magiccube4d` is retained as an attributed strategic donor beneath the `Hyperspeedcube` anchor +- `cubing/cubing.js` is now the fifteenth live row overall and one live boundary-sensitive lane through the closed `Phase 4R-A` classic-cubing adapter packet +- `cutelyaware/magiccube4d` is now the sixteenth live row overall and the second live boundary-sensitive lane through the closed `Phase 4R-B` attributed legacy `4D` adapter packet - `google/model-viewer/packages/shared-assets` is retained only as a fixture and QA pack - `PostHog/posthog`, `screenpipe/screenpipe`, and `remotion-dev/remotion` remain bounded sidecar, allowlist, or reference lanes rather than broad donor shells @@ -511,7 +512,7 @@ License-tracking boundary: - `docs/REPO_LICENSE_TRACKING.md` is the canonical repo-row legal and attribution ledger - `docs/v6_5_deep_manual_pack/HyperTwist/LICENSETRACKING.md` is policy-only and must not become a second repo-row legal ledger -- `docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md` is the source-backed preservation authority for the fifteen already-live rows +- `docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md` is the source-backed preservation authority for the sixteen already-live rows - `docs/HYPERTWIST_PHASE_2R_PACKET_2R_A_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` is the packet authority for the five core retained permissive rows once source extraction has already been read - `docs/HYPERTWIST_PHASE_2R_PACKET_2R_B_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` is the packet authority for the primary retained permissive support-plane rows once source extraction has already been read - `docs/HYPERTWIST_PHASE_2R_PACKET_2R_C_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` is the packet authority for the final residual permissive `0R-B` adjunct and alternative-support rows once source extraction has already been read @@ -525,7 +526,7 @@ License-tracking boundary: The next bounded move is: -1. preserve the fifteen landed rows as the current truth -2. keep `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, `mrdoob/three.js`, `pmndrs/react-three-fiber`, `pmndrs/xr`, and `cubing/cubing.js` on preserve-and-enhance footing through their landed packets -3. open `Phase 4R-B` -4. widen `cutelyaware/magiccube4d` as the retained attributed legacy `4D` interaction, history, and macro lane beneath the `Hyperspeedcube` anchor, while keeping the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap +1. preserve the sixteen landed rows as the current truth +2. keep `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, `mrdoob/three.js`, `pmndrs/react-three-fiber`, `pmndrs/xr`, `cubing/cubing.js`, and `cutelyaware/magiccube4d` on preserve-and-enhance footing through their landed packets +3. open `Phase 4R-C` +4. widen `google/model-viewer/packages/shared-assets` as the retained fixture and QA-pack lane with per-asset allowlisting and shipping-boundary discipline, while keeping the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap diff --git a/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md b/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md index 83fc1ff..d509cce 100644 --- a/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md +++ b/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md @@ -6,12 +6,12 @@ Created on `2026-05-13` This audit is `closed`. -It is the canonical source-backed preservation authority for the fifteen HyperTwist rows that are already live in checked first-party Unreal surfaces. +It is the canonical source-backed preservation authority for the sixteen HyperTwist rows that are already live in checked first-party Unreal surfaces. It closes the symmetry gap that remained after `Phase 0R` and `Phase 1R`: -- the `56` non-live rows already have source-backed authority through `Packet 0R-A` through `Packet 0R-E` -- the `15` live rows now have source-backed authority through this live-lane preservation audit +- the `55` non-live rows already have source-backed authority through `Packet 0R-A` through `Packet 0R-E` +- the `16` live rows now have source-backed authority through this live-lane preservation audit ## Purpose @@ -28,7 +28,7 @@ Use this document to answer the live-lane questions that the `0R-*` packets do n This document intentionally separates permissive, boundary-sensitive, and restrictive handling: - the thirteen permissive live lanes below are documented from donor mirror source plus first-party Unreal outputs -- the one live boundary-sensitive lane, `cubing/cubing.js`, is documented from donor mirror source plus first-party Unreal outputs while preserving its explicit `MPL`-aware adapter boundary +- the two live boundary-sensitive lanes, `cubing/cubing.js` and `cutelyaware/magiccube4d`, are documented from donor mirror source plus first-party Unreal outputs while preserving their explicit notice, attribution, and adapter/provenance boundaries - the one restrictive live lane, `onionhoney/roux-trainers`, is documented here only from first-party Unreal outputs, `REPO_LICENSE_TRACKING.md`, and scrubbed clean-room materials Do not use this document as permission for `Model B` to read the restrictive mirror. @@ -38,20 +38,20 @@ Do not use this document as permission for `Model B` to read the restrictive mir Current result: - current curated HyperTwist shallow-eval set: `71` -- already covered by `0R-A` through `0R-E`: `56` current non-live rows -- covered by this audit: `15` live rows +- already covered by `0R-A` through `0R-E`: `55` current non-live rows +- covered by this audit: `16` live rows - total rows with source-backed authority now visible in canonical docs: `71` - live permissive preserve lanes: `13` -- live boundary-sensitive preserve lanes: `1` +- live boundary-sensitive preserve lanes: `2` - live restrictive clean-room preserve lanes: `1` -- additional live rows discovered beyond the original six from the 2026-05-11 audit: `9` +- additional live rows discovered beyond the original six from the 2026-05-11 audit: `10` ## Authority order For future work on the already-live lanes, read in this order: 1. this live-lane audit -2. the relevant landed implementation packet where one exists, currently [HYPERTWIST_PHASE_3R_PACKET_3R_A_KUBETIMR_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_A_KUBETIMR_IMPLEMENTATION_2026-05-13.md:1) for `Aarav2709/KubeTimr`, [HYPERTWIST_PHASE_3R_PACKET_3R_B_HYPERCUBING_XYZ_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_B_HYPERCUBING_XYZ_IMPLEMENTATION_2026-05-13.md:1) for `Hypercubers/hypercubing.xyz`, [HYPERTWIST_PHASE_3R_PACKET_3R_C_ECHARTS_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_C_ECHARTS_IMPLEMENTATION_2026-05-13.md:1) for `apache/echarts`, [HYPERTWIST_PHASE_3R_PACKET_3R_D_MODEL_VIEWER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_D_MODEL_VIEWER_IMPLEMENTATION_2026-05-13.md:1) for `google/model-viewer`, [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) for `cubing/cubing.js`, [HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md:1) for `met4citizen/TalkingHead`, and [HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md:1) for `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` +2. the relevant landed implementation packet where one exists, currently [HYPERTWIST_PHASE_3R_PACKET_3R_A_KUBETIMR_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_A_KUBETIMR_IMPLEMENTATION_2026-05-13.md:1) for `Aarav2709/KubeTimr`, [HYPERTWIST_PHASE_3R_PACKET_3R_B_HYPERCUBING_XYZ_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_B_HYPERCUBING_XYZ_IMPLEMENTATION_2026-05-13.md:1) for `Hypercubers/hypercubing.xyz`, [HYPERTWIST_PHASE_3R_PACKET_3R_C_ECHARTS_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_C_ECHARTS_IMPLEMENTATION_2026-05-13.md:1) for `apache/echarts`, [HYPERTWIST_PHASE_3R_PACKET_3R_D_MODEL_VIEWER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_D_MODEL_VIEWER_IMPLEMENTATION_2026-05-13.md:1) for `google/model-viewer`, [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) for `cubing/cubing.js`, [HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) for `cutelyaware/magiccube4d`, [HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md:1) for `met4citizen/TalkingHead`, and [HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md:1) for `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` 3. [HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md:1) 4. [REPO_LICENSE_TRACKING.md](C:/HyperTwist/docs/REPO_LICENSE_TRACKING.md:1) 5. [MODEL_B_SOURCE_ACCESS_BOUNDARY.md](C:/HyperTwist/docs/MODEL_B_SOURCE_ACCESS_BOUNDARY.md:1) for the `onionhoney/roux-trainers` lane @@ -65,6 +65,7 @@ For future work on the already-live lanes, read in this order: | `apache/echarts` | `Apache-2.0` | landed analytics, reporting, export, and progress-visualization lane | the main landed permissive analytics and report-contract preserve lane | gameplay/runtime ownership, generic BI shell ownership, or separate live-lane claims for `zrender` / `echarts-gl` | | `google/model-viewer` | `Apache-2.0` | landed browser presentation, compact editor, and standards-aware asset-QA lane | the main landed permissive browser viewer and support-plane asset-QA preserve lane | gameplay/runtime ownership, donor docs/demo shell ownership, mixed-asset shipping from `shared-assets`, or separate live-lane claims for the subordinate package rows and Khronos sidecars | | `cubing/cubing.js` | `MPL-2.0 OR GPL-3.0-or-later` | landed classic-cubing semantic, geometry, viewer-adapter, device-adapter, and search-contract lane | the main landed boundary-sensitive classic-cubing adapter preserve lane | private upstream fork posture, hyper-runtime replacement, donor Twizzle shell ownership, or a shortcut around future `twisty.js` clean-room discipline | +| `cutelyaware/magiccube4d` | `custom permissive attribution-request license` | landed legacy `4D` history, macro, topology-reference, interaction, and provenance-boundary lane | the main landed boundary-sensitive legacy `4D` interaction/history preserve lane beneath the `Hyperspeedcube` anchor | runtime-anchor replacement, donor Swing shell ownership, or silent erasure of attribution, upstream-link, and `MyMath` provenance duties | | `mrdoob/three.js` | `MIT` | landed browser scene, renderer, camera, and controller-space substrate lane | the main landed permissive browser `3D` substrate preserve lane | gameplay/runtime ownership, browser-first product-shell ownership, or separate live-lane claims for subordinate helper packages | | `pmndrs/react-three-fiber` | `MIT` | landed React-side browser renderer, frameloop, store, and event-bridge lane | the main landed permissive React-side browser renderer preserve lane | gameplay/runtime ownership, generic app-state ownership, or standalone product-shell ownership | | `pmndrs/xr` | `MIT` | landed browser XR session, controller, hand, gaze, and immersive interaction lane | the main landed permissive browser XR session and immersive interaction preserve lane | gameplay/runtime ownership, generic VR showroom ownership, or separate live-lane claims for subordinate UI, gesture, or motion helpers | @@ -495,6 +496,67 @@ Future widening rule: - if HyperTwist later edits upstream-covered `cubing.js` files directly, publish those source-file modifications - read the landed [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) before treating this lane as an open donor candidate again +### `cutelyaware/magiccube4d` + +Current status: + +- `implemented_live_boundary_sensitive` +- preserve as a landed first-party boundary-sensitive attributed legacy `4D` lane + +Licensing posture: + +- `custom permissive attribution-request license` +- preserve visible attribution, upstream-link retention, and the checked `MyMath.java` provenance caveat +- no upstream `magiccube4d` source files were modified in the landed `Phase 4R-B` packet + +Source surfaces inspected: + +- [LICENSE.md](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/LICENSE.md:1) +- [src/com/superliminal/magiccube4d/History.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/History.java:1) +- [src/com/superliminal/magiccube4d/Macro.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/Macro.java:1) +- [src/com/superliminal/magiccube4d/PolytopePuzzleDescription.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/PolytopePuzzleDescription.java:1) +- [src/com/superliminal/magiccube4d/RotationHandler.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/RotationHandler.java:1) +- [src/com/superliminal/magiccube4d/MC4DView.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/MC4DView.java:1) +- [src/com/donhatchsw/util/MyMath.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/donhatchsw/util/MyMath.java:1) + +First-party live evidence: + +- [HyperTwistTrainingLegacy4DLibrary.h](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h:1) +- [HyperTwistTrainingLegacy4DLibrary.cpp](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.cpp:1) +- [HyperTwistTrainingRuntimeLibrary.h](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h:1) +- [HyperTwistTrainingRuntimeLibrary.cpp](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp:1) +- [hypertwist-reference-incorporation-targets.json](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json:1) +- [hypertwist-catalog-materialization-summary.json](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json:1) +- [cutelyaware-magiccube4d-reference-pages.jsonl](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl:1) + +Preserved landed value: + +- explicit higher-dimensional move-log, marks, macro-boundary, and persisted replay-history semantics +- explicit reference-grip macro remapping, transform-aware reversal, playback, and serialization seams +- explicit generic polytope slicing and grip-sticker-face topology-adapter seams beneath the `Hyperspeedcube` runtime anchor +- explicit `4D` rotation grammar, sticker picking, highlight, slice-mask, callback, and queued-animation seams +- explicit attribution, upstream-link, notice-retention, and `MyMath` provenance-boundary language + +Excluded or non-promotion boundary: + +- do not promote this lane into a replacement for the `Hyperspeedcube` runtime anchor +- do not promote donor Swing, applet, or Java product-shell ownership into HyperTwist +- do not treat `MyMath.java` as a zero-friction plain utility transplant +- do not erase the required visible attribution, upstream link, or provenance note + +Rationale: + +- the repo is valuable because it is the strongest retained legacy `4D` interaction, history, and macro donor in the set +- its strongest landed value is bounded higher-dimensional interaction grammar, history, topology-adapter, and macro behavior rather than donor-shell ownership +- the correct posture is first-party implementation with explicit attribution and provenance discipline, not silent donor carryover + +Future widening rule: + +- widen only through ordinary first-party enhancement work that preserves the visible attribution, upstream-link, and provenance boundary +- preserve the custom license text and related notices in distributed legal materials +- keep the `MyMath.java` provenance caveat visible when closely related numeric helper parity work is discussed +- read the landed [HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) before treating this lane as an open donor candidate again + ### `met4citizen/TalkingHead` Current status: @@ -914,7 +976,7 @@ Future widening rule: HyperTwist now has symmetric source-backed authority across the current `71`-row curated set: -- `56` current non-live rows through `Packet 0R-A` through `Packet 0R-E` -- `15` live rows through this live-lane preservation audit +- `55` current non-live rows through `Packet 0R-A` through `Packet 0R-E` +- `16` live rows through this live-lane preservation audit For live-lane work, the next instance should not start from stale donor labels or from the raw mirror alone. It should start from this document, then the retained-set contract, then the repo-row license tracker. diff --git a/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md b/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md index 505a1ff..e927328 100644 --- a/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md +++ b/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md @@ -68,21 +68,21 @@ Document responsibilities are now strict: Current post-`Phase 1R` truth: - curated HyperTwist shallow-eval set: `71` -- currently verified live in checked Unreal surfaces: `15` +- currently verified live in checked Unreal surfaces: `16` - rows with source-backed authority now visible in canonical docs: `71` - retained rows total: `68` - discarded from the active retained set: `3` Retained split: -- landed/live preserve lanes: `15` -- non-live active implementation-board rows: `44` +- landed/live preserve lanes: `16` +- non-live active implementation-board rows: `43` - non-live benchmark, oracle, or clean-room-later rows outside the active implementation board: `9` -The `44` non-live active implementation-board rows break down as: +The `43` non-live active implementation-board rows break down as: - straight permissive implementation candidates: `35` -- boundary-sensitive adapter or sidecar candidates: `5` +- boundary-sensitive adapter or sidecar candidates: `4` - restrictive clean-room-only candidates: `4` ## Contract classes @@ -90,7 +90,7 @@ The `44` non-live active implementation-board rows break down as: | Class | Count | Earliest next phase | Meaning | | --- | --- | --- | --- | | `landed_permissive_preserve` | `13` | ordinary first-party enhancement only | Already live. Preserve notices and attribution. Do not treat as speculative donor backlog. | -| `landed_boundary_sensitive_preserve` | `1` | ordinary first-party enhancement only with explicit notice discipline | Already live. Preserve the `MPL`-aware adapter boundary and do not turn it into an untracked private fork. | +| `landed_boundary_sensitive_preserve` | `2` | ordinary first-party enhancement only with explicit notice discipline | Already live. Preserve the explicit notice, attribution, and adapter/provenance boundaries and do not turn them into silent donor-shell carryover. | | `landed_clean_room_preserve` | `1` | ordinary first-party enhancement only | Already live. Preserve the clean-room chain and work from first-party outputs, not the restrictive mirror. | | `phase3r_permissive_candidate` | `35` | `Phase 3R` | Retained for direct permissive implementation or bounded first-party adaptation. No clean-room lane is needed. | | `phase4r_boundary_candidate` | `5` | `Phase 4R` | Retained only through explicit adapter, allowlist, sidecar, or notice-sensitive use. | @@ -111,7 +111,7 @@ The `44` non-live active implementation-board rows break down as: ## Landed preserve lanes -These fifteen rows are the only currently verified live rows in checked Unreal surfaces. +These sixteen rows are the only currently verified live rows in checked Unreal surfaces. ### Landed permissive preserve @@ -139,13 +139,16 @@ Contract: ### Landed boundary-sensitive preserve - `cubing/cubing.js` — `MPL-2.0 OR GPL-3.0-or-later` +- `cutelyaware/magiccube4d` — `custom permissive attribution-request license` Contract: - preserve as the landed first-party boundary-sensitive classic-cubing adapter lane +- preserve as the landed first-party attributed legacy `4D` interaction, history, macro, topology-reference, and provenance-boundary lane beneath the `Hyperspeedcube` anchor - preserve the explicit `MPL` notice and publication-duty boundary -- read [HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md:1), then [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1), then [HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md:1), before widening this lane -- do not treat the mirror as a silent private-fork surface +- preserve the explicit attribution, upstream-link, and provenance boundary for `cutelyaware/magiccube4d` +- read [HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md:1), then [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) or [HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) as appropriate, then [HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md:1), before widening these lanes +- do not treat either mirror as a silent private-fork or donor-shell surface ### Landed restrictive clean-room preserve @@ -249,7 +252,6 @@ Contract: ### Remaining `0R-C` boundary-sensitive set -> `Phase 4R` -- `cutelyaware/magiccube4d` — custom broad-use license; attributed strategic donor beneath the `Hyperspeedcube` anchor - `google/model-viewer/packages/shared-assets` — fixture and QA pack only, with per-asset allowlisting - `PostHog/posthog` — bounded telemetry/replay/feature-governance donor with `ee/` excluded - `remotion-dev/remotion` — bounded commercial-sensitive media-export and explainer sidecar/reference lane @@ -345,10 +347,11 @@ Do not: ## Next move -`Phase 2R` is now closed, `Phase 3R-A` through `Phase 3R-F` are now also closed for the primary straight-permissive widening path, and `Phase 4R-A` is now closed for the first boundary-sensitive live lane. +`Phase 2R` is now closed, `Phase 3R-A` through `Phase 3R-F` are now also closed for the primary straight-permissive widening path, and `Phase 4R-A` plus `Phase 4R-B` are now closed for the first two boundary-sensitive live lanes. -The next bounded move after those closures is `Phase 4R-B`: +The next bounded move after those closures is `Phase 4R-C`: - preserve the landed `cubing/cubing.js` lane through its live-lane audit and `Phase 4R-A` packet authority -- widen `cutelyaware/magiccube4d` as the retained attributed legacy `4D` interaction, history, and macro lane beneath the `Hyperspeedcube` anchor +- preserve the landed `cutelyaware/magiccube4d` lane through its live-lane audit and `Phase 4R-B` packet authority +- widen `google/model-viewer/packages/shared-assets` as the retained fixture and QA-pack lane with explicit per-asset allowlisting and shipping-boundary discipline - keep the optional `Phase 3R-G` `pissang/claygl` and `pissang/clay-viewer` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap that requires it diff --git a/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md b/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md new file mode 100644 index 0000000..2b9fd1b --- /dev/null +++ b/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md @@ -0,0 +1,173 @@ +# HyperTwist Phase 4R Packet 4R-B MagicCube4D Adapter Implementation + +Created on `2026-05-13` + +## Status + +`Phase 4R / Packet 4R-B` is now `closed`. + +This packet converts the retained boundary-sensitive `cutelyaware/magiccube4d` row from a queued attributed donor beneath the `Hyperspeedcube` anchor into a landed first-party HyperTwist legacy `4D` interaction, history, macro, topology-reference, and attribution-boundary lane. + +It does not reopen `Phase 0R`, `Phase 1R`, `Phase 2R`, the permissive `Phase 3R` packets, or the landed `Phase 4R-A` classic-cubing boundary lane. + +Those earlier packets still own: + +- source-value extraction +- retained-set routing +- ownership and acceptance boundaries +- the anti-over-narrowing `Model A` doctrine +- the already-landed permissive and boundary-sensitive widening decisions + +This packet owns the next question instead: + +- what first-party legacy `4D` implementation actually landed +- how the attribution, notice, and provenance boundary was preserved +- which retained MagicCube4D value is now live +- what remains explicitly out of scope for this lane +- what validation was completed +- what the next bounded implementation move is after this landing + +## Authority order + +For future work on the landed legacy `4D` boundary-sensitive lane, read in this order: + +1. this packet for landed scope, attribution/provenance result, and validation result +2. [HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md:1) for live-lane preserve posture +3. [HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md:1) for retained-set routing +4. [HYPERTWIST_PHASE_0R_PACKET_0R_C_EVALUATION_2026-05-12.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_0R_PACKET_0R_C_EVALUATION_2026-05-12.md:1) for source-value extraction and non-promotion rationale +5. [HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_MODEL_A_MAX_VALUE_EXTRACTION_MODUS_OPERANDI_2026-05-13.md:1) for the canonical interpretation rule that keeps future `Model A` extraction rich rather than timid +6. [REPO_LICENSE_TRACKING.md](C:/HyperTwist/docs/REPO_LICENSE_TRACKING.md:1) for license, notice, attribution, and provenance obligations + +## Packet licensing snapshot + +Owner row widened by this packet: + +- `cutelyaware/magiccube4d`: `custom permissive attribution-request license` + +Checked local notice surfaces: + +- [LICENSE.md](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/LICENSE.md:1) +- [src/com/donhatchsw/util/MyMath.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/donhatchsw/util/MyMath.java:1) + +Boundary result: + +- no upstream `magiccube4d` source files were modified in this packet +- no donor Swing shell, applet shell, Java event shell, or menu shell was landed +- the landed surface remains a first-party compiled contract and reference bundle that records an explicit attribution, notice, and provenance boundary +- the documented `MyMath.java` provenance caveat remains visible and is not treated as erased by first-party implementation + +## Packet result + +`4R-B` lands the legacy `4D` row as: + +- `cutelyaware/magiccube4d` -> `implemented_live_boundary_sensitive` + +Current portfolio effect: + +- curated HyperTwist shallow-eval set: `71` +- currently verified live in checked Unreal surfaces: `16` +- live permissive lanes: `13` +- live boundary-sensitive adapter or attributed lanes: `2` +- live restrictive clean-room lanes: `1` +- active non-live implementation-board rows: `43` + +## Donor source surfaces read + +The source read for this widening remained bounded to the retained legacy `4D` subsystem seams: + +- [src/com/superliminal/magiccube4d/History.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/History.java:1) +- [src/com/superliminal/magiccube4d/Macro.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/Macro.java:1) +- [src/com/superliminal/magiccube4d/PolytopePuzzleDescription.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/PolytopePuzzleDescription.java:1) +- [src/com/superliminal/magiccube4d/RotationHandler.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/RotationHandler.java:1) +- [src/com/superliminal/magiccube4d/MC4DView.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/superliminal/magiccube4d/MC4DView.java:1) +- [LICENSE.md](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/LICENSE.md:1) +- [src/com/donhatchsw/util/MyMath.java](C:/Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d/src/com/donhatchsw/util/MyMath.java:1) + +## First-party landing surfaces + +The landed first-party Unreal surfaces are: + +- [HyperTwistTrainingLegacy4DLibrary.h](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.h:1) +- [HyperTwistTrainingLegacy4DLibrary.cpp](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLegacy4DLibrary.cpp:1) +- [HyperTwistTrainingRuntimeLibrary.h](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.h:1) +- [HyperTwistTrainingRuntimeLibrary.cpp](C:/HyperTwist/UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingRuntimeLibrary.cpp:1) +- [hypertwist-reference-incorporation-targets.json](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-reference-incorporation-targets.json:1) +- [hypertwist-catalog-materialization-summary.json](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/hypertwist-catalog-materialization-summary.json:1) +- [cutelyaware-magiccube4d-reference-pages.jsonl](C:/HyperTwist/UnrealHyperTwist/Content/HyperTwistTraining/MaterializedCatalog/raw-extracts/cutelyaware-magiccube4d-reference-pages.jsonl:1) + +## Landed implementation scope + +What landed: + +- a first-party compiled legacy `4D` package ledger that records the bounded roles for `History`, `Macro`, `PolytopePuzzleDescription`, `RotationHandler`, `MC4DView`, and the selective `MyMath` provenance reference +- a first-party history contract for move logs, marks, macro brackets, undo-redo traversal, truncate behavior, and save-restore semantics +- a first-party macro contract for reference-grip remapping, 4D transform application, determinant-aware reversal handling, and macro playback or serialization +- a first-party puzzle-description and topology contract for `Schlafli`-product parsing, generic polytope slicing, grip-sticker-face relationships, face-cut offsets, and generic higher-dimensional puzzle-description adapters +- a first-party interaction contract for 4D rotation grammar, snap behavior, sticker picking, highlight state, slice masks, callbacks, and queued animation semantics +- a first-party attribution and provenance boundary that records the required upstream link, notice retention, visible attribution, and the `MyMath.java` provenance caveat +- first-party runtime-library accessors and TSV checklist export for the new legacy `4D` bundle +- bundled first-party reference targets and raw source-reference capture for history, macros, topology, interaction, view-controller composition, and the attribution/provenance boundary + +What that means in practice: + +- `cutelyaware/magiccube4d` now owns the landed boundary-sensitive attributed legacy `4D` interaction, history, macro, topology-reference, and provenance-boundary preserve lane in HyperTwist +- the landed surface is a first-party Unreal contract and runtime API, not a vague future donor note +- the practical path remains first-party implementation with explicit attribution and provenance handling, not silent donor-shell adoption +- the `Hyperspeedcube` runtime anchor, `roice3/MagicTile` topology donor, and restrictive clean-room lanes remain distinct and are not collapsed into this packet + +## Preserved landed value + +The donor value that was actually promoted is: + +- explicit move-log, mark, macro-boundary, undo-redo, and persisted replay-history semantics +- explicit reference-grip macro capture, remapping, reversal, and playback semantics +- explicit generic puzzle-description, polytope slicing, and grip-sticker-face topology seams +- explicit 4D rotation grammar, snap behavior, sticker picking, highlighting, slice-mask, and queued-animation seams +- explicit view-controller composition and callback seams without carrying over the donor Swing shell +- explicit attribution, upstream-link, notice-retention, and `MyMath` provenance-boundary language so later widening does not silently erase the legal context + +## Excluded or non-promotion boundary + +Do not promote this packet into: + +- a replacement for the `Hyperspeedcube` higher-dimensional runtime anchor +- a justification for donor Swing, applet, or Java product-shell adoption +- a claim that `MyMath.java` is a plain zero-friction utility transplant +- a broad donor-shell precedent for custom-license rows +- a shortcut around the already-set owner boundaries for `roice3/MagicTile`, `roice3/Magic120Cell`, or `roice3/MagicCube5D` + +Rationale: + +- this packet was retained and widened because MagicCube4D is the strongest legacy `4D` interaction, history, and macro donor in the set +- its highest value is bounded higher-dimensional interaction grammar, history, macro semantics, and generic topology-adapter value +- the right integration path is first-party implementation with explicit attribution and provenance discipline rather than silent donor-shell carryover + +## Acceptance markers satisfied + +The `0R-C` and `Phase 1R` retained-value markers for this lane are now satisfied in first-party Unreal surfaces: + +- a first-party history contract exists for higher-dimensional move logs, marks, macro delimiters, undo-redo traversal, and save-restore semantics +- a first-party macro contract exists for reference-grip remapping, transform-aware reversal, playback, and serialization seams +- a first-party puzzle-description contract exists for generic polytope slicing and topology-adapter semantics beneath the `Hyperspeedcube` anchor +- a first-party interaction contract exists for rotation grammar, picking, highlight, slice-mask, callback, and queued-animation seams +- a first-party attribution boundary exists for visible attribution, upstream-link retention, notice preservation, and the `MyMath` provenance caveat + +## Validation + +Validation completed for this packet: + +- `git diff --check` passed apart from CRLF conversion warnings +- JSON validation passed for the updated materialized-catalog files and workspace manifest +- Unreal build succeeded with: + - `C:\Program Files\Epic Games\UE_5.7\Engine\Build\BatchFiles\Build.bat UnrealHyperTwistEditor Win64 Development C:\HyperTwist\UnrealHyperTwist\UnrealHyperTwist.uproject -WaitMutex -NoHotReloadFromIDE` + +Build result: + +- `Succeeded` on `2026-05-13` + +## Next move + +The next bounded move is `Phase 4R-C`: + +- widen `google/model-viewer/packages/shared-assets` as the retained fixture and QA-pack lane with explicit per-asset allowlisting and shipping-boundary discipline +- keep the optional `Phase 3R-G` `pissang/claygl` and `pissang/clay-viewer` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap diff --git a/docs/HYPERTWIST_REPO_EVALUATION_RESET_AND_IMPLEMENTATION_SCHEDULE_2026-05-11.md b/docs/HYPERTWIST_REPO_EVALUATION_RESET_AND_IMPLEMENTATION_SCHEDULE_2026-05-11.md index 2b92c5f..dc109c0 100644 --- a/docs/HYPERTWIST_REPO_EVALUATION_RESET_AND_IMPLEMENTATION_SCHEDULE_2026-05-11.md +++ b/docs/HYPERTWIST_REPO_EVALUATION_RESET_AND_IMPLEMENTATION_SCHEDULE_2026-05-11.md @@ -483,13 +483,16 @@ Implementation result: - `cubing/cubing.js` is now landed as a first-party classic-cubing semantic, geometry, viewer-adapter, device-adapter, and search-contract lane - `cubing/cubing.js` is now `implemented_live_boundary_sensitive` - no upstream `cubing.js` source-file modifications landed in this packet +- `cutelyaware/magiccube4d` is now landed as a first-party legacy `4D` history, macro, topology-reference, interaction, and attribution-boundary lane +- `cutelyaware/magiccube4d` is now `implemented_live_boundary_sensitive` +- no upstream `magiccube4d` source-file modifications landed in this packet - current verified live rows are now: - - `15` total + - `16` total - `13` permissive - - `1` boundary-sensitive + - `2` boundary-sensitive - `1` restrictive clean-room -- active non-live implementation-board rows are now `44` -- the classic-cubing `MPL`-aware adapter lane is no longer a queued `Phase 4R` candidate; it is a landed live lane +- active non-live implementation-board rows are now `43` +- the classic-cubing `MPL`-aware adapter lane and the attributed legacy `4D` lane are no longer queued `Phase 4R` candidates; they are landed live lanes Validation result: @@ -524,22 +527,22 @@ Current curated HyperTwist shallow-eval set: Current verified live implementation state in checked `UnrealHyperTwist` source and materialized training surfaces: -- `15` repos are implemented/live +- `16` repos are implemented/live - `13` of those are permissive `MIT` or `Apache-2.0` lanes -- `1` of those is a boundary-sensitive `MPL`-aware adapter lane +- `2` of those are boundary-sensitive lanes - `1` of those is a restrictive repo that was properly clean-roomed and then implemented Current 2026-05-11 repo-row reset counts: - `implemented_live_permissive`: `13` -- `implemented_live_boundary_sensitive`: `1` +- `implemented_live_boundary_sensitive`: `2` - `implemented_live_clean_room_verified`: `1` - `selected_not_live_permissive_candidate`: `35` -- `selected_not_live_boundary_sensitive`: `5` +- `selected_not_live_boundary_sensitive`: `4` - `selected_not_live_clean_room_candidate`: `4` - `not_live_reference_or_discard_candidate`: `12` -### The fifteen currently implemented/live repos +### The sixteen currently implemented/live repos Permissive `MIT` or `Apache-2.0` lanes already implemented/live: @@ -561,9 +564,10 @@ Restrictive lane already properly clean-roomed and implemented/live: - `onionhoney/roux-trainers` -Boundary-sensitive lane already implemented/live: +Boundary-sensitive lanes already implemented/live: - `cubing/cubing.js` +- `cutelyaware/magiccube4d` ### What this means @@ -609,17 +613,17 @@ At the moment, only one HyperTwist repo should be described this way: HyperTwist should now proceed from the following rule: -- preserve the fifteen live lanes +- preserve the sixteen live lanes - do not reopen the `onionhoney/roux-trainers` lane as if it were an unresolved accidental donor import -- do not treat the remaining `56` current non-live rows as already implemented +- do not treat the remaining `55` current non-live rows as already implemented - keep `Phase 0R`, `Phase 1R`, and `Phase 2R` closed as completed packet classes -- continue later-phase widening from the closed packet sequence, with `Phase 4R-B` as the next non-optional move and `Phase 3R-G` deferred unless a real browser comparison gap appears +- continue later-phase widening from the closed packet sequence, with `Phase 4R-C` as the next non-optional move and `Phase 3R-G` deferred unless a real browser comparison gap appears In practical terms: -- no, do **not** mass-revert the fifteen landed lanes -- no, do **not** pretend the remaining `56` current non-live rows are already implemented -- yes, preserve the landed `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, `mrdoob/three.js`, `pmndrs/react-three-fiber`, `pmndrs/xr`, and `cubing/cubing.js` lanes as normal first-party enhancement surfaces within their packet-specific legal boundaries +- no, do **not** mass-revert the sixteen landed lanes +- no, do **not** pretend the remaining `55` current non-live rows are already implemented +- yes, preserve the landed `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, `mrdoob/three.js`, `pmndrs/react-three-fiber`, `pmndrs/xr`, `cubing/cubing.js`, and `cutelyaware/magiccube4d` lanes as normal first-party enhancement surfaces within their packet-specific legal boundaries - yes, widen the next retained lane only through its closed packet stack and packet-specific legal boundary ## Phase reset sequence @@ -985,9 +989,9 @@ Only after that: The clean practical sequence is: -1. preserve the fifteen landed lanes +1. preserve the sixteen landed lanes 2. make the current truth explicit everywhere -3. deep-evaluate the remaining `56` +3. deep-evaluate the remaining `55` 4. discard what should not survive 5. re-schedule what remains by permissive, boundary-sensitive, clean-room, and benchmark lanes 6. resume later-phase widening from that corrected retained set @@ -1005,7 +1009,8 @@ Current status: - `Phase 3R-E` is now also complete - `Phase 3R-F` is now also complete - `Phase 4R-A` is now also complete -- the next bounded move is `Phase 4R-B` for `cutelyaware/magiccube4d`, with the optional `Phase 3R-G` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap +- `Phase 4R-B` is now also complete +- the next bounded move is `Phase 4R-C` for `google/model-viewer/packages/shared-assets`, with the optional `Phase 3R-G` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap ## Companion docs @@ -1017,6 +1022,7 @@ Read together with: - `docs/HYPERTWIST_PHASE_2R_PACKET_2R_B_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` - `docs/HYPERTWIST_PHASE_2R_PACKET_2R_C_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` - `docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md` +- `docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md` - `docs/HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md` - `docs/REPO_LICENSE_TRACKING.md` - `docs/HYPERTWIST_ROADMAP_OVERHAUL_EXPANSION_GUIDE.md` diff --git a/docs/HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md b/docs/HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md index c237ae7..d0bdc82 100644 --- a/docs/HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md +++ b/docs/HYPERTWIST_REPO_STATE_BOARD_2026-05-11.md @@ -7,15 +7,15 @@ This board is the readable row-by-row companion to the v6.3 CSVs. It is derived ## Canonical summary - Current curated HyperTwist shallow-eval set: `71` repos -- Currently verified live in checked `UnrealHyperTwist` surfaces: `15` repos +- Currently verified live in checked `UnrealHyperTwist` surfaces: `16` repos - Live permissive lanes: `13` -- Live boundary-sensitive lanes: `1` +- Live boundary-sensitive lanes: `2` - Live restrictive clean-room lanes: `1` - Remaining rows requiring `Phase 0R` deep repo evaluation: `0` ## 2026-05-13 packet and contract overlay -The baseline live-state counts above now include the landed `Phase 3R-C` analytics lane, the landed `Phase 3R-D` browser viewer lane, the landed `Phase 3R-E` embodied companion lane, the landed `Phase 3R-F` browser spatial owner stack, and the landed `Phase 4R-A` classic-cubing boundary-sensitive adapter lane, while `Phase 0R` and `Phase 1R` remain closed. +The baseline live-state counts above now include the landed `Phase 3R-C` analytics lane, the landed `Phase 3R-D` browser viewer lane, the landed `Phase 3R-E` embodied companion lane, the landed `Phase 3R-F` browser spatial owner stack, the landed `Phase 4R-A` classic-cubing boundary-sensitive adapter lane, and the landed `Phase 4R-B` attributed legacy `4D` boundary-sensitive lane, while `Phase 0R` and `Phase 1R` remain closed. Read together with: @@ -36,6 +36,7 @@ Read together with: - [HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md:1) - [HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md:1) - [HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) +- [HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md](C:/HyperTwist/docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md:1) That overlay closes evaluation for: @@ -55,7 +56,7 @@ Important authority correction: - `Packet 0R-C` is now the deep-source value-extraction and exclusion-rationale authority for its six boundary-sensitive repos - `Packet 0R-D` is now the governance and Model A authority for its four restrictive clean-room repos - `Packet 0R-E` is now the deep-source benchmark, reference, clean-room-later, and discard authority for its twelve rows -- the live-lane preservation audit is now the source-backed authority for the fifteen already-landed rows +- the live-lane preservation audit is now the source-backed authority for the sixteen already-landed rows - `Phase 1R` is now the retained-set contract and handoff authority for all post-`Phase 0R` routing - `Phase 2R-A` is now the core ownership and acceptance authority for the five retained core permissive rows - `Phase 2R-B` is now the support-plane ownership and acceptance authority for the primary retained permissive support rows @@ -66,7 +67,7 @@ Important authority correction: - `Phase 3R-D` is now the landed implementation authority for `google/model-viewer` - `Phase 3R-E` is now the landed implementation authority for `met4citizen/TalkingHead` - `Phase 3R-F` is now the landed implementation authority for `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` -- future enhancement or preservation work for the fifteen landed rows should start from the live-lane audit, then the repo-specific landed packet where one exists, not from this board alone +- future enhancement or preservation work for the sixteen landed rows should start from the live-lane audit, then the repo-specific landed packet where one exists, not from this board alone - future implementation of those seven repos should start from `Packet 0R-A`, not from this board alone - future implementation of the `0R-B` permissive set should start from `Packet 0R-B`, then the relevant closed `2R-B` or `2R-C` ownership packet, not from this board alone - future implementation of the remaining five non-live boundary-sensitive repos should start from `Packet 0R-C`, not from this board alone @@ -82,7 +83,7 @@ Packet overlay result: - all `6` boundary-sensitive rows have now been packet-evaluated - all `4` restrictive clean-room rows have now been packet-evaluated - all `12` reference, benchmark, reserve, and discard rows have now been packet-evaluated -- all `15` live rows now also have symmetric source-backed preservation authority +- all `16` live rows now also have symmetric source-backed preservation authority - `Phase 2R-A` is now closed for the five core retained permissive rows - `Phase 2R-B` is now closed for the retained permissive support-plane owners, subordinate packages, and helper/dependency lanes in scope - `Phase 2R-C` is now closed for the final retained permissive `0R-B` residual rows @@ -106,15 +107,15 @@ Packet overlay result: - the `0R-E` result split is: - `9` retained benchmark, oracle, or clean-room-later rows - `3` discarded active-set rows -- the next bounded move is `Phase 4R-B` +- the next bounded move is `Phase 4R-C` ## Count by live-state class - `implemented_live_permissive`: `13` -- `implemented_live_boundary_sensitive`: `1` +- `implemented_live_boundary_sensitive`: `2` - `implemented_live_clean_room_verified`: `1` - `selected_not_live_permissive_candidate`: `35` -- `selected_not_live_boundary_sensitive`: `5` +- `selected_not_live_boundary_sensitive`: `4` - `selected_not_live_clean_room_candidate`: `4` - `not_live_reference_or_discard_candidate`: `12` @@ -147,15 +148,16 @@ Count: `13` | `poliva/cubedex` | `MIT` | Locked Strategic Donor | `integrate` | `implemented_live_permissive` | `landed_permissive_preserve` | Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible; start future widening from the live-lane audit, then `REPO_LICENSE_TRACKING.md`, then ordinary owned enhancement work. | | `tao-yu/Alg-Trainer` | `MIT` | Locked Parallel Foundation | `integrate` | `implemented_live_permissive` | `landed_permissive_preserve` | Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible; start future widening from the live-lane audit, then `REPO_LICENSE_TRACKING.md`, then ordinary owned enhancement work. | -## Landed Boundary-Sensitive Lane +## Landed Boundary-Sensitive Lanes -This is the currently verified live boundary-sensitive repo already implemented through an explicit adapter boundary. +These are the currently verified live boundary-sensitive repos already implemented through explicit adapter, attribution, and provenance boundaries. -Count: `1` +Count: `2` | Repo | License | Prior bucket | Prior action | Current live state | Reset lane | Next step | | --- | --- | --- | --- | --- | --- | --- | | `cubing/cubing.js` | `MPL-2.0 OR GPL-3.0-or-later` | Locked Strategic Donor | `integrate` | `implemented_live_boundary_sensitive` | `landed_boundary_sensitive_preserve` | `Phase 4R-A` closed. Preserve as the landed first-party classic-cubing semantic/runtime adapter lane; start future widening from the live-lane audit, then `Phase 4R-A`, then `REPO_LICENSE_TRACKING.md`; keep the explicit `MPL` notice and publication-duty boundary visible. | +| `cutelyaware/magiccube4d` | `Custom broad-use license with attribution requested` | Locked Strategic Donor | `repurpose` | `implemented_live_boundary_sensitive` | `landed_boundary_sensitive_preserve` | `Phase 4R-B` closed. Preserve as the landed first-party attributed legacy `4D` interaction, history, macro, topology-reference, and provenance-boundary lane; start future widening from the live-lane audit, then `Phase 4R-B`, then `REPO_LICENSE_TRACKING.md`; keep the explicit attribution, upstream-link, and `MyMath` provenance duties visible. | ## Landed Restrictive Clean-Room Lane @@ -215,11 +217,10 @@ Count: `35` These rows are not currently proven live and have now cleared `Phase 0R` deep evaluation. `Phase 1R` places them on the active implementation board with earliest re-entry through `Phase 4R`. -Count: `5` +Count: `4` | Repo | License | Prior bucket | Prior action | Current live state | Reset lane | Next step | | --- | --- | --- | --- | --- | --- | --- | -| `cutelyaware/magiccube4d` | `Custom broad-use license with attribution requested` | Locked Strategic Donor | `repurpose` | `selected_not_live_boundary_sensitive` | `phase0r_boundary_sensitive_eval_then_adapter_or_sidecar` | `Packet 0R-C` closed. Retain as an attributed direct donor for history, macros, generic puzzle description, and legacy `4D` interaction beneath the `Hyperspeedcube` anchor. | | `google/model-viewer/packages/shared-assets` | `Apache-2.0 container; mixed per-asset terms` | Donor Bench | `repurpose` | `selected_not_live_boundary_sensitive` | `phase0r_boundary_sensitive_eval_then_adapter_or_sidecar` | `Packet 0R-C` closed. Retain only as a local fixture and QA pack with per-asset allowlisting before any shipping use. | | `PostHog/posthog` | `MIT outside ee/; enterprise-restricted in ee/` | Donor Bench | `repurpose` | `selected_not_live_boundary_sensitive` | `phase0r_boundary_sensitive_eval_then_adapter_or_sidecar` | `Packet 0R-C` closed. Retain only as a bounded telemetry, replay-diagnostic, and feature-governance donor; keep `ee/` excluded and use MIT-path allowlists or selective first-party reimplementation. | | `remotion-dev/remotion` | `Custom two-tier commercial license` | Donor Bench | `repurpose` | `selected_not_live_boundary_sensitive` | `phase0r_boundary_sensitive_eval_then_adapter_or_sidecar` | `Packet 0R-C` closed. Retain only as a commercially sensitive media-export and explainer sidecar/reference lane after an explicit package-level license decision. | @@ -261,9 +262,9 @@ Count: `12` ## Implementation rule going forward -- Preserve the fifteen landed lanes as current truth. +- Preserve the sixteen landed lanes as current truth. - Keep `onionhoney/roux-trainers` explicitly marked as the only currently verified restrictive clean-room lane already implemented. -- Keep `cubing/cubing.js` explicitly marked as the one currently verified live boundary-sensitive adapter lane. -- `Phase 0R` is now fully closed for the remaining `56` non-live rows. +- Keep `cubing/cubing.js` and `cutelyaware/magiccube4d` explicitly marked as the two currently verified live boundary-sensitive lanes. +- `Phase 0R` is now fully closed for the remaining `55` non-live rows. - `Phase 1R` is now the routing authority for retained-set widening and benchmark exclusion. -- The next bounded move is `Phase 4R-B` for the retained `cutelyaware/magiccube4d` attributed legacy `4D` interaction, history, and macro lane, while the optional `Phase 3R-G` browser comparison lane remains deferred unless the landed primary browser spatial stack exposes a real gap. +- The next bounded move is `Phase 4R-C` for the retained `google/model-viewer/packages/shared-assets` fixture and QA-pack lane, while the optional `Phase 3R-G` browser comparison lane remains deferred unless the landed primary browser spatial stack exposes a real gap. diff --git a/docs/REPO_LICENSE_TRACKING.md b/docs/REPO_LICENSE_TRACKING.md index 8d6191e..f5323a2 100644 --- a/docs/REPO_LICENSE_TRACKING.md +++ b/docs/REPO_LICENSE_TRACKING.md @@ -53,9 +53,9 @@ Do not use it as the primary architecture ledger. The architecture and donor dec This file now also preserves the current truth that future models must not lose: - current curated HyperTwist shallow-eval set: `71` repos -- currently verified live/implemented in checked `UnrealHyperTwist` surfaces: `15` +- currently verified live/implemented in checked `UnrealHyperTwist` surfaces: `16` - permissive live lanes: `13` -- boundary-sensitive live lanes: `1` +- boundary-sensitive live lanes: `2` - restrictive live lanes: `1` The thirteen permissive live lanes are: @@ -74,9 +74,10 @@ The thirteen permissive live lanes are: - `poliva/cubedex` - `newyork-anthonyng/rubiks-cross-trainer` -The one boundary-sensitive live lane is: +The two boundary-sensitive live lanes are: - `cubing/cubing.js` +- `cutelyaware/magiccube4d` The one restrictive live lane is: @@ -95,7 +96,7 @@ Interpretation rule: Reset rule: -- preserve the fifteen landed/live lanes +- preserve the sixteen landed/live lanes - do not treat the remaining non-live rows as already absorbed - route all non-live rows only through the closed `Phase 1R` retained-set contract and the relevant `0R-*` packet @@ -129,7 +130,8 @@ Current practical interpretation: - the landed `met4citizen/TalkingHead` widening packet now lives in `docs/HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md` - the landed `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` widening packet now lives in `docs/HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md` - the landed `cubing/cubing.js` boundary-sensitive widening packet now lives in `docs/HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md` -- the next bounded move is `Phase 4R-B` +- the landed `cutelyaware/magiccube4d` boundary-sensitive widening packet now lives in `docs/HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md` +- the next bounded move is `Phase 4R-C` Companion docs: @@ -432,9 +434,10 @@ Tracked provenance note: Approved working posture: -- treat `cutelyaware/magiccube4d` as a normal donor candidate with attribution and notice preservation +- treat `cutelyaware/magiccube4d` as a landed attributed first-party legacy `4D` lane with preserved attribution and notice obligations - do not force it into the clean-room-only lane - do not keep it in the `Model B forbidden by default` bucket merely because the license text is custom rather than OSI-template +- preserve the landed `Phase 4R-B` packet as the implementation-facing authority for history, macro, topology-reference, interaction, and provenance-boundary scope ### `cubing/cubing.js` diff --git a/docs/repo_portfolio_unified_copyleft_strategy_matrix_v6_3.csv b/docs/repo_portfolio_unified_copyleft_strategy_matrix_v6_3.csv index c769673..9fc0aff 100644 --- a/docs/repo_portfolio_unified_copyleft_strategy_matrix_v6_3.csv +++ b/docs/repo_portfolio_unified_copyleft_strategy_matrix_v6_3.csv @@ -16,7 +16,7 @@ "Lykos/cube_trainer","https://github.com/Lykos/cube_trainer","HyperTwist","Locked Strategic Donor","locked strategic donor","integrate","direct","MIT","known_from_reference_material","uploaded_reference_docs","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","high","strategic-or-implemented-component","v6.3_final_source_of_truth","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "poliva/cubedex","https://github.com/poliva/cubedex","HyperTwist","Locked Strategic Donor","locked strategic donor","integrate","direct","MIT","known_from_reference_material","uploaded_reference_docs","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","high","strategic-or-implemented-component","v6.3_final_source_of_truth","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "kash/cubedesk","https://github.com/kash/cubedesk","HyperTwist","Locked Strategic Donor","locked strategic donor","repurpose","architecture only","GPLv3-or-later in README/LICENSE; package.json says All Rights Reserved","known_from_reference_material","uploaded_reference_docs","mixed_or_boundary_sensitive_known","reverse_engineer_preferred","The repo has conflicting license signals and should remain in restrictive clean-room custody. Treat it as a strategic product-pattern and subsystem extraction target, not as direct donor code.","high","license-contradiction-clean-room-donor","v6.3_final_source_of_truth","selected_not_live_clean_room_candidate","phase0r_clean_room_eval_then_model_a_model_b","Phase 1R closed. Retain as a Phase 5R clean-room-only timer, trainer, stats, and smart-cube product-pattern candidate; implement only from the scrubbed Model A dossier." -"cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","Locked Strategic Donor","locked strategic donor","repurpose","moderate modification","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","medium","custom-license-attribution-review","v6.3_final_source_of_truth","implemented_live_boundary_sensitive","landed_boundary_sensitive_preserve","Phase 1R closed. Retain as a Phase 4R attributed donor beneath the Hyperspeedcube anchor; preserve attribution and provenance explicitly." +"cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","Locked Strategic Donor","locked strategic donor","repurpose","moderate modification","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","medium","custom-license-attribution-review","v6.3_final_source_of_truth","implemented_live_boundary_sensitive","landed_boundary_sensitive_preserve","Phase 4R-B closed. Preserve as the landed attributed legacy 4D interaction, history, macro, topology-reference, and provenance-boundary lane beneath the Hyperspeedcube anchor; start future widening from the live-lane audit, then Phase 4R-B, then REPO_LICENSE_TRACKING.md." "roice3/Magic120Cell","https://github.com/roice3/Magic120Cell","HyperTwist","Locked Strategic Donor","locked strategic donor","repurpose","moderate modification","MIT","known_from_reference_material","uploaded_reference_docs","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 4D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its dedicated UX and puzzle-handling surfaces.","high","permissive-specialized-donor","v6.3_final_source_of_truth","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "roice3/MagicCube5D","https://github.com/roice3/MagicCube5D","HyperTwist","Locked Strategic Donor","locked strategic donor","repurpose","moderate modification","MIT","known_from_reference_material","uploaded_reference_docs","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 5D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its advanced cube-specific UX and macro behavior.","high","permissive-specialized-donor","v6.3_final_source_of_truth","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "cs0x7f/cstimer","https://github.com/cs0x7f/cstimer","HyperTwist","Reserve Bench","Reserve Bench","future candidate","architecture only","GPL-3.0","known_from_reference_material","uploaded_reference_docs","mixed_or_boundary_sensitive_known","pattern_only_preferred","The repo is GPL-3.0 and remains the primary restrictive timer, stats, scramble, and smart-device benchmark. Use it for behavioral parity and acceptance criteria, not direct source incorporation.","high","gpl-timer-benchmark","v6.3_final_source_of_truth","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." diff --git a/docs/repo_portfolio_unified_operational_v6_3.csv b/docs/repo_portfolio_unified_operational_v6_3.csv index eb901b5..ae5ab1c 100644 --- a/docs/repo_portfolio_unified_operational_v6_3.csv +++ b/docs/repo_portfolio_unified_operational_v6_3.csv @@ -16,7 +16,7 @@ "11857","Lykos/cube_trainer","https://github.com/Lykos/cube_trainer","HyperTwist","8.0","145.0","171.0","A","cubing trainer / solver / timing","foundation engine","training donor","locked strategic donor","integrate","direct","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving cube-state, scramble, scheduling, or timer internals while adapting pedagogy, analytics, and UI.","Lykos/cube_trainer — MIT — Smart-sampled training. | CubeTrainer (Lykos/cube_trainer) | Lykos/cube_trainer — MIT — Smart-sampled alg/BLD trainer. Live: https://www.cubetrainer.org.","Integrate as a cubing / algorithm training subsystem for HyperTwist. Preserve the strongest existing pieces — scramble generation, algorithm database, recognition/training loop, timing/statistics, virtual cube, smartcube hooks, spaced repetition — and expose them behind a portfolio-stable interface. Wire first into tao-yu/Alg-Trainer, then into poliva/cubedex for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: tao-yu/Alg-Trainer, poliva/cubedex, cubing/cubing.js.","Repurpose here means: turn it into a trainer engine, solver/timer backend, recognition drill module, or method-specific practice mode for HyperTwist.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract cube-state model; Normalize trainer/case schema; Expose analytics and replay hooks","full subsystem extraction review","Hidden value often sits in cube-state representation, scramble generation, weighted drill scheduling, recognition datasets, replay/timer internals, and case database schemas.","Inspect cube-state model; scramble generator; trainer weighting/scheduling; case database and metadata; replay/timer model; import/export of alg sets; smartcube or sensor adapters.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for algorithm databases, spaced-repetition logic, scramble generation, timer/stat code, virtual cube components, smartcube adapters, and custom-trainer configuration support.","Audit Lykos/cube_trainer as a cubing trainer / solver / timing candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect cube-state model; scramble generator; trainer weighting/scheduling; case database and metadata; replay/timer model; import/export of alg sets; smartcube or sensor adapters. Decide whether the best extraction path is direct and whether it belongs as foundation engine / training donor. Test the three merger paths in order: 1) tao-yu/Alg-Trainer [base + donor swarm]; 2) poliva/cubedex [specialized training UX donor]; 3) cross-project transfer candidate [future merger]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","tao-yu/Alg-Trainer","base + donor swarm","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","poliva/cubedex","specialized training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","cross-project transfer candidate","future merger","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","project-local first","Cross-project transfer is possible, but the value is clearest inside the assigned project until source audit exposes more reusable primitives.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","strong adjacency to identified core stack; memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","Lykos/cube_trainer — MIT — Smart-sampled training. | CubeTrainer (Lykos/cube_trainer) | Lykos/cube_trainer — MIT — Smart-sampled alg/BLD trainer. Live: https://www.cubetrainer.org.","Lykos/cube_trainer is treated as integrate for HyperTwist because the current dossier keeps it as a top-tier strategic donor for persisted sessions, results and statistics, personalization, and advanced BLD-oriented training-domain concepts rather than as a shell to transplant wholesale.","memo","False","True","0.0","4.0","HT_training_stack","HT_training_stack_0002","cubing / algorithm training","Integrate primarily for HyperTwist. Its memo and bookmark signals place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","lykos/cube_trainer","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","8.0","5","145.0","Locked Strategic Donor","Top-tier persistent training-domain donor","","","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","Direct embed, vendored module, package dependency, or tightly integrated adapter as the architecture requires.","Typically preserve notices, attribution, and license text where required; no special copyleft-driven disclosure posture is normally needed.","Usually unnecessary unless you later decide the existing implementation is too constraining architecturally.","high","strategic-or-implemented-component","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Normalized legacy candidate-core wording to dossier-backed strategic-donor posture on 2026-04-25.","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "11861","poliva/cubedex","https://github.com/poliva/cubedex","HyperTwist","9.0","145.0","171.0","A","interface / visualization / shell surface","foundation engine","visualization donor","locked strategic donor","integrate","direct","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving scene/layout primitives and replacing surrounding data models or backend assumptions.","poliva/cubedex — MIT — Smartcube alg trainer. | Open source repositories and software specifically designed to drill (""hammer"") Rubik's Cube algorithms into muscle memory through repeated practice, timing, smart sampling, real scrambles,...","Integrate as a cubing / algorithm training subsystem for HyperTwist. Preserve the strongest existing pieces — scramble generation, algorithm database, recognition/training loop, timing/statistics, virtual cube, smartcube hooks, spaced repetition — and expose them behind a portfolio-stable interface. Wire first into tao-yu/Alg-Trainer, then into Lykos/cube_trainer for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: tao-yu/Alg-Trainer, Lykos/cube_trainer, cubing/cubing.js.","Repurpose here means: turn it into a trainer engine, solver/timer backend, recognition drill module, or method-specific practice mode for HyperTwist.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract layout/scene primitives; Map import/export schema; Detach UI shell from backend assumptions","full subsystem extraction review","Hidden value often sits in scene graph/canvas model, component primitives, import/export schema, gesture/keyboard interactions, and plugin-ready layout abstractions.","Inspect scene graph/canvas data model; layout primitives; component library; keyboard/gesture interactions; import/export schema; theming; plugin or extension hooks.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for algorithm databases, spaced-repetition logic, scramble generation, timer/stat code, virtual cube components, smartcube adapters, and custom-trainer configuration support.","Audit poliva/cubedex as a interface / visualization / shell surface candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect scene graph/canvas data model; layout primitives; component library; keyboard/gesture interactions; import/export schema; theming; plugin or extension hooks. Decide whether the best extraction path is direct and whether it belongs as foundation engine / visualization donor. Test the three merger paths in order: 1) project-local anchor [base + donor]; 2) shared portfolio utility [augmenter]; 3) cross-project transfer candidate [future merger]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","project-local anchor","base + donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","shared portfolio utility","augmenter","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","cross-project transfer candidate","future merger","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | HyperTwist | ScriptoriumAI","This capability is broadly portable across the portfolio because interaction, orchestration, and shell/UI patterns can be shared with thin domain adapters.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","strong adjacency to identified core stack; memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","poliva/cubedex — MIT — Smartcube alg trainer. | Open source repositories and software specifically designed to drill (""hammer"") Rubik's Cube algorithms into muscle memory through repeated practice, timing, smart sampling, real scrambles, virtual cubes, and/or smartcube integration.These tools focus on repetitive training for sets like PLL, OLL, ZBLL, etc., rather than just solving the whole cube.Cubedex (poliva/cubedex) | poliva/cubedex, tao-yu/A","poliva/cubedex is treated as integrate for HyperTwist because the current dossier keeps it as a top-tier strategic donor for smartcube-aware, offline-first training UX, case-card design, and drill ergonomics without promoting it to training-lane foundation status.","memo","False","True","0.0","4.0","HT_training_stack","HT_training_stack_0016","cubing / algorithm training","Integrate primarily for HyperTwist. Its memo and bookmark signals place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","poliva/cubedex","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","9.0","5","145.0","Locked Strategic Donor","Top-tier training UX and smartcube donor","","","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","Direct embed, vendored module, package dependency, or tightly integrated adapter as the architecture requires.","Typically preserve notices, attribution, and license text where required; no special copyleft-driven disclosure posture is normally needed.","Usually unnecessary unless you later decide the existing implementation is too constraining architecturally.","high","strategic-or-implemented-component","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Assigned from legacy HY_misc to HT_training_stack during cluster normalization on 2026-04-25.","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "11865","kash/cubedesk","https://github.com/kash/cubedesk","HyperTwist","10.0","145.0","171.0","A","hypercubing / nD engine","foundation engine","simulation donor","locked strategic donor","repurpose","architecture only","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","AGPL / GPL / Strong Copyleft (Forces open-sourcing derivatives — study/reference only or use as backend/service; avoid for closed-source core)kash/cubedesk — GPL-3.0 — Full timer + 750+ alg trainers + analytics/community platform. Live: ...","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","full subsystem extraction review","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit kash/cubedesk as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is direct and whether it belongs as foundation engine / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","AGPL / GPL / Strong Copyleft (Forces open-sourcing derivatives — study/reference only or use as backend/service; avoid for closed-source core)kash/cubedesk — GPL-3.0 — Full timer + 750+ alg trainers + analytics/community platform. Live: https://www.cubedesk.io. | cubing.js (MPL with MIT-vendored parts) remains the 3D foundation — pair with Hyperspeedcube for nD.AGPL / GPL / Strong Copyleft (Study/reference only or backend; avoid for closed-source","kash/cubedesk is treated as repurpose for HyperTwist because the current dossier keeps it as a restrictive clean-room donor target for timer, trainer, solve/session/stat, smart-device, membership-gating, and broader cubing-platform architecture rather than as a direct donor or foundation.","memo","False","True","0.0","4.0","HT_hyper_engine","HT_hyper_engine_0002","cubing / algorithm training","Integrate primarily for HyperTwist. The memo context explicitly treats it as a nucleus, foundation, or unusually high-value building block.","HyperTwist","hypercubing / nD simulation","integrate","direct","medium","kash/cubedesk","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","GPLv3-or-later in README/LICENSE; package.json says All Rights Reserved","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","10.0","5","145.0","Locked Strategic Donor","Restrictive clean-room donor target","","P1","mixed_or_boundary_sensitive_known","reverse_engineer_preferred","The repo has conflicting license signals and should remain in restrictive clean-room custody. Treat it as a strategic product-pattern and subsystem extraction target, not as direct donor code.","Model A may inspect and extract product/subsystem behavior; Model B should implement only from a scrubbed first-party specification.","Do not incorporate directly until the license contradiction is fully resolved; current HyperTwist posture is clean-room donor only.","Yes — this is the preferred path because the strategic value is broad but direct reuse is blocked by the contradictory license posture.","high","license-contradiction-clean-room-donor","no","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale direct-donor posture to dossier-backed restrictive clean-room strategic donor status.","selected_not_live_clean_room_candidate","phase0r_clean_room_eval_then_model_a_model_b","Phase 1R closed. Retain as a Phase 5R clean-room-only timer, trainer, stats, and smart-cube product-pattern candidate; implement only from the scrubbed Model A dossier." -"11869","cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","11.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","Automatically exported from code.google.com/p/magiccube4d","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","Automatically exported from code.google.com/p/magiccube4d","","cutelyaware/magiccube4d is treated as repurpose for HyperTwist because the current dossier keeps it as one of the most important legacy 4D interaction donors, with operationally usable custom licensing but explicit attribution and provenance obligations.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0003","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","cutelyaware/magiccube4d","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","11.0","5","122.0","Locked Strategic Donor","Top-tier 4D interaction, history, and macro donor with attribution obligations","","P1","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","selected_not_live_boundary_sensitive","phase0r_boundary_sensitive_eval_then_adapter_or_sidecar","Phase 1R closed. Retain as a Phase 4R attributed donor beneath the Hyperspeedcube anchor; preserve attribution and provenance explicitly." +"11869","cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","11.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","Automatically exported from code.google.com/p/magiccube4d","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","Automatically exported from code.google.com/p/magiccube4d","","cutelyaware/magiccube4d is treated as repurpose for HyperTwist because the current dossier keeps it as one of the most important legacy 4D interaction donors, with operationally usable custom licensing but explicit attribution and provenance obligations.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0003","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","cutelyaware/magiccube4d","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","11.0","5","122.0","Locked Strategic Donor","Top-tier 4D interaction, history, and macro donor with attribution obligations","","P1","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","implemented_live_boundary_sensitive","landed_boundary_sensitive_preserve","Phase 4R-B closed. Preserve as the landed attributed legacy 4D interaction, history, macro, topology-reference, and provenance-boundary lane beneath the Hyperspeedcube anchor; start future widening from the live-lane audit, then Phase 4R-B, then REPO_LICENSE_TRACKING.md." "11873","roice3/Magic120Cell","https://github.com/roice3/Magic120Cell","HyperTwist","12.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","4D Megaminx Analogue","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit roice3/Magic120Cell as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","4D Megaminx Analogue","","roice3/Magic120Cell is treated as repurpose for HyperTwist because the current dossier keeps it as a specialized 4D interaction and puzzle-UX donor with real save/load, visibility, filtering, and navigation value rather than as a foundation shell.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0004","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the hypercubing / nD simulation layer.","HyperTwist","hypercubing / nD simulation","integrate","heavy modification","medium","roice3/magic120cell","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","12.0","5","122.0","Locked Strategic Donor","Specialized 4D interaction and puzzle-UX donor","","P1","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 4D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its dedicated UX and puzzle-handling surfaces.","Direct donor use or bounded extraction are both acceptable; choose the seam that best preserves specialized 4D interaction behavior.","Preserve MIT notices and attribution where required.","Usually unnecessary unless later replacing a narrow seam is cleaner than carrying the upstream code.","high","permissive-specialized-donor","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed MIT specialized donor status.","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "11877","roice3/MagicCube5D","https://github.com/roice3/MagicCube5D","HyperTwist","13.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","5D Rubik's Cube Analogue","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit roice3/MagicCube5D as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","5D Rubik's Cube Analogue","","roice3/MagicCube5D is treated as repurpose for HyperTwist because the current dossier keeps it as a specialized 5D interaction, macro, progress, and slice donor rather than as a foundation shell.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0005","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","roice3/magiccube5d","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","13.0","5","122.0","Locked Strategic Donor","Specialized 5D cube interaction, progress, and macro donor","","P1","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 5D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its advanced cube-specific UX and macro behavior.","Direct donor use or bounded extraction are both acceptable; choose the seam that best preserves specialized 5D interaction and macro behavior.","Preserve MIT notices and attribution where required.","Usually unnecessary unless later replacing a narrow seam is cleaner than carrying the upstream code.","high","permissive-specialized-donor","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed MIT specialized donor status.","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "11881","cs0x7f/cstimer","https://github.com/cs0x7f/cstimer","HyperTwist","14.0","121.0","147.0","A","gold-standard timer benchmark","benchmark","Gold-standard timer benchmark","Reserve Bench","future candidate","architecture only","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving cube-state, scramble, scheduling, or timer internals while adapting pedagogy, analytics, and UI.","Benchmark-only retained value: mature timer-state handling, persistence, statistics, reconstruction tooling, scramble generation, and smart-device expectations. Study behavior and category expectations only.","Keep as a restrictive benchmark. Use it as the timer behavior reference point for HyperTwist, not as donor code.","Do not merge this repo into the HyperTwist core. Translate only high-level timer and stats expectations into first-party implementations.","Repurpose here means: derive acceptance-test targets and product expectations for timer flow, persistence, statistics, and hardware support.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract cube-state model; Normalize trainer/case schema; Expose analytics and replay hooks","behavior and acceptance-test benchmark review","Hidden value sits in timer edge cases, persistence behavior, reconstruction/statistics expectations, and mature product-surface decisions.","Which timer behaviors, persistence expectations, and solve-analysis surfaces should become first-party acceptance criteria?","Inspect timer-state transitions, solve/session persistence, statistics/reconstruction surfaces, scramble integration, and smart-device behavior as benchmark material only.","Audit cs0x7f/cstimer only as a restrictive gold-standard timer benchmark for HyperTwist. Extract behavior expectations and acceptance criteria, not donor code.","tao-yu/Alg-Trainer","base + donor swarm","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","poliva/cubedex","specialized training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","Lykos/cube_trainer","sampling/analytics donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","Reference only","Retain only as benchmark, oracle, acceptance-test, or clean-room planning input.","exclude from donor lane","The repo is GPL timer/training software and should remain the behavior/category benchmark in the timer lane rather than a donor codebase.","high","Dossier-backed classification is stable: the retained value is benchmark authority, not source incorporation.","high","Dossier-backed classification is stable: the retained value is benchmark authority, not source incorporation.","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","cs0x7f/cstimer — GPL timer/training platform; keep only as the gold-standard timer benchmark.","cs0x7f/cstimer remains valuable because it defines the product-behavior ceiling for timer flow, persistence, and statistics. That value is benchmark authority, not donor code.","memo","False","True","0.0","5.0","HT_timer_training","HT_timer_training_0001","Gold-standard timer benchmark","Gold-standard timer benchmark for HyperTwist; retained for behavior calibration, not donor use.","HyperTwist","Gold-standard timer benchmark","future candidate","architecture only","medium","cs0x7f/cstimer","HyperTwist","","","","","","","","","","","","","","","","Original global operational v3 retained","GPL-3.0","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","14.0","5","121.0","Reserve Bench","Gold-standard timer benchmark","Included","P2","mixed_or_boundary_sensitive_known","pattern_only_preferred","The repo is GPL-3.0 and remains the primary restrictive timer, stats, scramble, and smart-device benchmark. Use it for behavioral parity and acceptance criteria, not direct source incorporation.","Reference only: benchmark timer, statistics, scramble, and smart-device behavior without direct source incorporation.","Direct incorporation would require GPL-compatible distribution/compliance and is not the planned HyperTwist path.","Only if a narrow timer behavior later proves strategically necessary to recreate in first-party code; otherwise keep this as a benchmark.","high","gpl-timer-benchmark","no","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale donor posture to dossier-backed gold-standard timer benchmark status.","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." diff --git a/docs/repo_portfolio_unified_phase_g_v6_3.csv b/docs/repo_portfolio_unified_phase_g_v6_3.csv index c8e7082..446a0a2 100644 --- a/docs/repo_portfolio_unified_phase_g_v6_3.csv +++ b/docs/repo_portfolio_unified_phase_g_v6_3.csv @@ -16,7 +16,7 @@ "8.0","Lykos/cube_trainer","https://github.com/Lykos/cube_trainer","HyperTwist","8.0","145.0","171.0","A","cubing trainer / solver / timing","foundation engine","training donor","locked strategic donor","integrate","direct","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving cube-state, scramble, scheduling, or timer internals while adapting pedagogy, analytics, and UI.","Lykos/cube_trainer — MIT — Smart-sampled training. | CubeTrainer (Lykos/cube_trainer) | Lykos/cube_trainer — MIT — Smart-sampled alg/BLD trainer. Live: https://www.cubetrainer.org.","Integrate as a cubing / algorithm training subsystem for HyperTwist. Preserve the strongest existing pieces — scramble generation, algorithm database, recognition/training loop, timing/statistics, virtual cube, smartcube hooks, spaced repetition — and expose them behind a portfolio-stable interface. Wire first into tao-yu/Alg-Trainer, then into poliva/cubedex for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: tao-yu/Alg-Trainer, poliva/cubedex, cubing/cubing.js.","Repurpose here means: turn it into a trainer engine, solver/timer backend, recognition drill module, or method-specific practice mode for HyperTwist.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract cube-state model; Normalize trainer/case schema; Expose analytics and replay hooks","full subsystem extraction review","Hidden value often sits in cube-state representation, scramble generation, weighted drill scheduling, recognition datasets, replay/timer internals, and case database schemas.","Inspect cube-state model; scramble generator; trainer weighting/scheduling; case database and metadata; replay/timer model; import/export of alg sets; smartcube or sensor adapters.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for algorithm databases, spaced-repetition logic, scramble generation, timer/stat code, virtual cube components, smartcube adapters, and custom-trainer configuration support.","Audit Lykos/cube_trainer as a cubing trainer / solver / timing candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect cube-state model; scramble generator; trainer weighting/scheduling; case database and metadata; replay/timer model; import/export of alg sets; smartcube or sensor adapters. Decide whether the best extraction path is direct and whether it belongs as foundation engine / training donor. Test the three merger paths in order: 1) tao-yu/Alg-Trainer [base + donor swarm]; 2) poliva/cubedex [specialized training UX donor]; 3) cross-project transfer candidate [future merger]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","tao-yu/Alg-Trainer","base + donor swarm","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","poliva/cubedex","specialized training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","cross-project transfer candidate","future merger","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","project-local first","Cross-project transfer is possible, but the value is clearest inside the assigned project until source audit exposes more reusable primitives.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","strong adjacency to identified core stack; memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","Lykos/cube_trainer — MIT — Smart-sampled training. | CubeTrainer (Lykos/cube_trainer) | Lykos/cube_trainer — MIT — Smart-sampled alg/BLD trainer. Live: https://www.cubetrainer.org.","Lykos/cube_trainer is treated as integrate for HyperTwist because the current dossier keeps it as a top-tier strategic donor for persisted sessions, results and statistics, personalization, and advanced BLD-oriented training-domain concepts rather than as a shell to transplant wholesale.","memo","False","True","0.0","4.0","HT_training_stack","HT_training_stack_0002","cubing / algorithm training","Integrate primarily for HyperTwist. Its memo and bookmark signals place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","lykos/cube_trainer","1.0","Locked Strategic Donor","3.0","Top-tier strategic donor for the persistent training-session, statistics, personalization, and advanced BLD-oriented coaching-backend domain.","Top-tier persistent training-domain donor","Included","P1","Lykos/cube_trainer is placed in Locked Strategic Donor for HyperTwist because it best serves the 'Top-tier persistent training-domain donor' role; recommended action is 'integrate' with repurposing scope 'direct'. Confidence is high because this remains a metadata-level judgment until source audit confirms hidden modules, plugin points, adapters, or architectural strengths.","2.0","5.0","3.0","11857.0","115.0","","lykos/cube_trainer","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","8.0","2","3.0","145.0","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","Direct embed, vendored module, package dependency, or tightly integrated adapter as the architecture requires.","Typically preserve notices, attribution, and license text where required; no special copyleft-driven disclosure posture is normally needed.","Usually unnecessary unless you later decide the existing implementation is too constraining architecturally.","high","strategic-or-implemented-component","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Normalized legacy candidate-core wording to dossier-backed strategic-donor posture on 2026-04-25.","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "10.0","poliva/cubedex","https://github.com/poliva/cubedex","HyperTwist","9.0","145.0","171.0","A","interface / visualization / shell surface","foundation engine","visualization donor","locked strategic donor","integrate","direct","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving scene/layout primitives and replacing surrounding data models or backend assumptions.","poliva/cubedex — MIT — Smartcube alg trainer. | Open source repositories and software specifically designed to drill (""hammer"") Rubik's Cube algorithms into muscle memory through repeated practice, timing, smart sampling, real scrambles,...","Integrate as a cubing / algorithm training subsystem for HyperTwist. Preserve the strongest existing pieces — scramble generation, algorithm database, recognition/training loop, timing/statistics, virtual cube, smartcube hooks, spaced repetition — and expose them behind a portfolio-stable interface. Wire first into tao-yu/Alg-Trainer, then into Lykos/cube_trainer for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: tao-yu/Alg-Trainer, Lykos/cube_trainer, cubing/cubing.js.","Repurpose here means: turn it into a trainer engine, solver/timer backend, recognition drill module, or method-specific practice mode for HyperTwist.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract layout/scene primitives; Map import/export schema; Detach UI shell from backend assumptions","full subsystem extraction review","Hidden value often sits in scene graph/canvas model, component primitives, import/export schema, gesture/keyboard interactions, and plugin-ready layout abstractions.","Inspect scene graph/canvas data model; layout primitives; component library; keyboard/gesture interactions; import/export schema; theming; plugin or extension hooks.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for algorithm databases, spaced-repetition logic, scramble generation, timer/stat code, virtual cube components, smartcube adapters, and custom-trainer configuration support.","Audit poliva/cubedex as a interface / visualization / shell surface candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect scene graph/canvas data model; layout primitives; component library; keyboard/gesture interactions; import/export schema; theming; plugin or extension hooks. Decide whether the best extraction path is direct and whether it belongs as foundation engine / visualization donor. Test the three merger paths in order: 1) project-local anchor [base + donor]; 2) shared portfolio utility [augmenter]; 3) cross-project transfer candidate [future merger]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","project-local anchor","base + donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","shared portfolio utility","augmenter","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","cross-project transfer candidate","future merger","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | HyperTwist | ScriptoriumAI","This capability is broadly portable across the portfolio because interaction, orchestration, and shell/UI patterns can be shared with thin domain adapters.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","strong adjacency to identified core stack; memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","poliva/cubedex — MIT — Smartcube alg trainer. | Open source repositories and software specifically designed to drill (""hammer"") Rubik's Cube algorithms into muscle memory through repeated practice, timing, smart sampling, real scrambles, virtual cubes, and/or smartcube integration.These tools focus on repetitive training for sets like PLL, OLL, ZBLL, etc., rather than just solving the whole cube.Cubedex (poliva/cubedex) | poliva/cubedex, tao-yu/A","poliva/cubedex is treated as integrate for HyperTwist because the current dossier keeps it as a top-tier strategic donor for smartcube-aware, offline-first training UX, case-card design, and drill ergonomics without promoting it to training-lane foundation status.","memo","False","True","0.0","4.0","HT_training_stack","HT_training_stack_0016","cubing / algorithm training","Integrate primarily for HyperTwist. Its memo and bookmark signals place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","poliva/cubedex","1.0","Locked Strategic Donor","3.0","Top-tier strategic donor for smartcube-aware, offline-first training UX and practical drill ergonomics, but not the owner of the long-term training backend.","Top-tier training UX and smartcube donor","Included","P1","poliva/cubedex is placed in Locked Strategic Donor for HyperTwist because it best serves the 'Top-tier training UX and smartcube donor' role; recommended action is 'integrate' with repurposing scope 'direct'. Confidence is high because this remains a metadata-level judgment until source audit confirms hidden modules, plugin points, adapters, or architectural strengths.","2.0","5.0","3.0","11861.0","116.0","","poliva/cubedex","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","9.0","2","3.0","145.0","permissive_or_noncopyleft_known","direct_incorporation_ok","This repo is aligned with a direct integration path for HyperTwist because it is either already implemented, strategically central, or donor-grade without a visible copyleft constraint in the current materials. Deep incorporation is sensible if the source audit confirms architectural cleanliness.","Direct embed, vendored module, package dependency, or tightly integrated adapter as the architecture requires.","Typically preserve notices, attribution, and license text where required; no special copyleft-driven disclosure posture is normally needed.","Usually unnecessary unless you later decide the existing implementation is too constraining architecturally.","high","strategic-or-implemented-component","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Assigned from legacy HY_misc to HT_training_stack during cluster normalization on 2026-04-25.","implemented_live_permissive","landed_permissive_preserve","Phase 1R closed. Preserve as a landed first-party permissive lane; keep notices and attribution visible and widen only through ordinary owned enhancement work." "9.0","kash/cubedesk","https://github.com/kash/cubedesk","HyperTwist","10.0","145.0","171.0","A","hypercubing / nD engine","foundation engine","simulation donor","locked strategic donor","repurpose","architecture only","Keep the core engine or major subsystem mostly intact; change wrappers, branding, storage/auth, and integration seams so it becomes a first-class part of the target stack. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","AGPL / GPL / Strong Copyleft (Forces open-sourcing derivatives — study/reference only or use as backend/service; avoid for closed-source core)kash/cubedesk — GPL-3.0 — Full timer + 750+ alg trainers + analytics/community platform. Live: ...","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","full subsystem extraction review","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit kash/cubedesk as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is direct and whether it belongs as foundation engine / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","do not exclude","Keep in active merge-set and force full source audit before any demotion.","high","single-source signal; clear taxonomy; active integration value; foundation-level fit","high","memo mentions: 4","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","AGPL / GPL / Strong Copyleft (Forces open-sourcing derivatives — study/reference only or use as backend/service; avoid for closed-source core)kash/cubedesk — GPL-3.0 — Full timer + 750+ alg trainers + analytics/community platform. Live: https://www.cubedesk.io. | cubing.js (MPL with MIT-vendored parts) remains the 3D foundation — pair with Hyperspeedcube for nD.AGPL / GPL / Strong Copyleft (Study/reference only or backend; avoid for closed-source","kash/cubedesk is treated as repurpose for HyperTwist because the current dossier keeps it as a restrictive clean-room donor target for timer, trainer, solve/session/stat, smart-device, membership-gating, and broader cubing-platform architecture rather than as a direct donor or foundation.","memo","False","True","0.0","4.0","HT_hyper_engine","HT_hyper_engine_0002","cubing / algorithm training","Integrate primarily for HyperTwist. The memo context explicitly treats it as a nucleus, foundation, or unusually high-value building block.","HyperTwist","hypercubing / nD simulation","integrate","direct","medium","kash/cubedesk","1.0","Locked Strategic Donor","3.0","Broad cubing product platform with high strategic value, but the repo must stay in restrictive clean-room custody because README/LICENSE say GPL while package.json says All Rights Reserved.","Restrictive clean-room donor target","Included","P1","Keep as a strategic clean-room donor because the product breadth is unusually strong, but the conflicting license signals block carefree donor treatment.","2.0","5.0","3.0","11865.0","117.0","","kash/cubedesk","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","GPLv3-or-later in README/LICENSE; package.json says All Rights Reserved","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","10.0","2","3.0","145.0","mixed_or_boundary_sensitive_known","reverse_engineer_preferred","The repo has conflicting license signals and should remain in restrictive clean-room custody. Treat it as a strategic product-pattern and subsystem extraction target, not as direct donor code.","Model A may inspect and extract product/subsystem behavior; Model B should implement only from a scrubbed first-party specification.","Do not incorporate directly until the license contradiction is fully resolved; current HyperTwist posture is clean-room donor only.","Yes — this is the preferred path because the strategic value is broad but direct reuse is blocked by the contradictory license posture.","high","license-contradiction-clean-room-donor","no","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale direct-donor posture to dossier-backed restrictive clean-room strategic donor status.","selected_not_live_clean_room_candidate","phase0r_clean_room_eval_then_model_a_model_b","Phase 1R closed. Retain as a Phase 5R clean-room-only timer, trainer, stats, and smart-cube product-pattern candidate; implement only from the scrubbed Model A dossier." -"12.0","cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","11.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","Automatically exported from code.google.com/p/magiccube4d","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","Automatically exported from code.google.com/p/magiccube4d","","cutelyaware/magiccube4d is treated as repurpose for HyperTwist because the current dossier keeps it as one of the most important legacy 4D interaction donors, with operationally usable custom licensing but explicit attribution and provenance obligations.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0003","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","cutelyaware/magiccube4d","1.0","Locked Strategic Donor","5.0","Custom broad-use donor with strong 4D interaction/history/macro value and explicit attribution/provenance obligations.","Top-tier 4D interaction, history, and macro donor with attribution obligations","Included","P1","Keep as one of the most important legacy 4D interaction donors; the dossier-backed custom broad-use license is operationally usable, but attribution and provenance obligations must stay explicit.","2.0","3.0","3.0","11871.0","118.0","","cutelyaware/magiccube4d","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","11.0","3","5.0","122.0","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","selected_not_live_boundary_sensitive","phase0r_boundary_sensitive_eval_then_adapter_or_sidecar","Phase 1R closed. Retain as a Phase 4R attributed donor beneath the Hyperspeedcube anchor; preserve attribution and provenance explicitly." +"12.0","cutelyaware/magiccube4d","https://github.com/cutelyaware/magiccube4d/tree/master","HyperTwist","11.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","Automatically exported from code.google.com/p/magiccube4d","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","Automatically exported from code.google.com/p/magiccube4d","","cutelyaware/magiccube4d is treated as repurpose for HyperTwist because the current dossier keeps it as one of the most important legacy 4D interaction donors, with operationally usable custom licensing but explicit attribution and provenance obligations.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0003","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","cutelyaware/magiccube4d","1.0","Locked Strategic Donor","5.0","Custom broad-use donor with strong 4D interaction/history/macro value and explicit attribution/provenance obligations.","Top-tier 4D interaction, history, and macro donor with attribution obligations","Included","P1","Keep as one of the most important legacy 4D interaction donors; the dossier-backed custom broad-use license is operationally usable, but attribution and provenance obligations must stay explicit.","2.0","3.0","3.0","11871.0","118.0","","cutelyaware/magiccube4d","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","11.0","3","5.0","122.0","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","implemented_live_boundary_sensitive","landed_boundary_sensitive_preserve","Phase 4R-B closed. Preserve as the landed attributed legacy 4D interaction, history, macro, topology-reference, and provenance-boundary lane beneath the Hyperspeedcube anchor; start future widening from the live-lane audit, then Phase 4R-B, then REPO_LICENSE_TRACKING.md." "13.0","roice3/Magic120Cell","https://github.com/roice3/Magic120Cell","HyperTwist","12.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","4D Megaminx Analogue","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit roice3/Magic120Cell as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","4D Megaminx Analogue","","roice3/Magic120Cell is treated as repurpose for HyperTwist because the current dossier keeps it as a specialized 4D interaction and puzzle-UX donor with real save/load, visibility, filtering, and navigation value rather than as a foundation shell.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0004","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the hypercubing / nD simulation layer.","HyperTwist","hypercubing / nD simulation","integrate","heavy modification","medium","roice3/magic120cell","1.0","Locked Strategic Donor","5.0","MIT specialized 4D donor with real interaction, visibility/filtering, save/load, and puzzle-UX value.","Specialized 4D interaction and puzzle-UX donor","Included","P1","Keep as a specialized 4D interaction and puzzle-UX donor; the dossier-backed MIT posture and source richness justify promotion above the old merge-bench treatment.","2.0","3.0","3.0","11875.0","119.0","","roice3/magic120cell","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","12.0","3","5.0","122.0","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 4D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its dedicated UX and puzzle-handling surfaces.","Direct donor use or bounded extraction are both acceptable; choose the seam that best preserves specialized 4D interaction behavior.","Preserve MIT notices and attribution where required.","Usually unnecessary unless later replacing a narrow seam is cleaner than carrying the upstream code.","high","permissive-specialized-donor","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed MIT specialized donor status.","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "14.0","roice3/MagicCube5D","https://github.com/roice3/MagicCube5D","HyperTwist","13.0","122.0","137.0","A","hypercubing / nD engine","subsystem donor","simulation donor","locked strategic donor","repurpose","moderate modification","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","5D Rubik's Cube Analogue","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Isolate puzzle/state core; Extract render/input abstractions; Document notation and save format","deep source audit","Hidden value is likely in generalized puzzle/state representations, higher-dimensional transforms, notation systems, save formats, puzzle generators, and rendering abstractions.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Audit roice3/MagicCube5D as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","exclude from standalone? no","Not necessarily the final base, but keep as an active subsystem candidate or major donor.","medium","single-source signal; clear taxonomy; active integration value","medium","explicit bookmark description available","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","HyperTwist(1)","HyperTwist Consider","5D Rubik's Cube Analogue","","roice3/MagicCube5D is treated as repurpose for HyperTwist because the current dossier keeps it as a specialized 5D interaction, macro, progress, and slice donor rather than as a foundation shell.","bookmarks","True","False","1.0","0.0","HT_hyper_engine","HT_hyper_engine_0005","hypercubing / nD simulation","Integrate primarily for HyperTwist. Its description and bookmark placement under ""HyperTwist Consider"" place it in the cubing / algorithm training layer.","HyperTwist","cubing / algorithm training","integrate","moderate modification","medium","roice3/magiccube5d","1.0","Locked Strategic Donor","5.0","MIT specialized 5D donor with real macro, progress, slice, and advanced interaction value.","Specialized 5D cube interaction, progress, and macro donor","Included","P1","Keep as a specialized 5D cube interaction and macro donor; the dossier-backed MIT posture and source richness justify promotion above the old merge-bench treatment.","2.0","3.0","3.0","11879.0","120.0","","roice3/magiccube5d","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","MIT","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","13.0","3","5.0","122.0","permissive_or_noncopyleft_known","direct_incorporation_ok","The repo is MIT and should remain a specialized 5D interaction donor. Direct donor use is legally straightforward if HyperTwist wants to preserve its advanced cube-specific UX and macro behavior.","Direct donor use or bounded extraction are both acceptable; choose the seam that best preserves specialized 5D interaction and macro behavior.","Preserve MIT notices and attribution where required.","Usually unnecessary unless later replacing a narrow seam is cleaner than carrying the upstream code.","high","permissive-specialized-donor","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed MIT specialized donor status.","selected_not_live_permissive_candidate","phase0r_permissive_eval_then_implement","Phase 1R closed. Retain as a Phase 3R permissive implementation candidate; implement only from its packet authority and the retained-set contract, not by reopening Phase 0R." "11.0","cs0x7f/cstimer","https://github.com/cs0x7f/cstimer","HyperTwist","14.0","121.0","147.0","A","gold-standard timer benchmark","benchmark","Gold-standard timer benchmark","Reserve Bench","future candidate","architecture only","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving cube-state, scramble, scheduling, or timer internals while adapting pedagogy, analytics, and UI.","Benchmark-only retained value: mature timer-state handling, persistence, statistics, reconstruction tooling, scramble generation, and smart-device expectations. Study behavior and category expectations only.","Keep as a restrictive benchmark. Use it as the timer behavior reference point for HyperTwist, not as donor code.","Do not merge this repo into the HyperTwist core. Translate only high-level timer and stats expectations into first-party implementations.","Repurpose here means: derive acceptance-test targets and product expectations for timer flow, persistence, statistics, and hardware support.","Map module boundaries; Identify hidden reusable internals; Define adapter/API boundary to target anchors; Write extraction tests against upstream behavior; Extract cube-state model; Normalize trainer/case schema; Expose analytics and replay hooks","behavior and acceptance-test benchmark review","Hidden value sits in timer edge cases, persistence behavior, reconstruction/statistics expectations, and mature product-surface decisions.","Which timer behaviors, persistence expectations, and solve-analysis surfaces should become first-party acceptance criteria?","Inspect timer-state transitions, solve/session persistence, statistics/reconstruction surfaces, scramble integration, and smart-device behavior as benchmark material only.","Audit cs0x7f/cstimer only as a restrictive gold-standard timer benchmark for HyperTwist. Extract behavior expectations and acceptance criteria, not donor code.","tao-yu/Alg-Trainer","base + donor swarm","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","poliva/cubedex","specialized training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","Lykos/cube_trainer","sampling/analytics donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","Reference only","Retain only as benchmark, oracle, acceptance-test, or clean-room planning input.","exclude from donor lane","The repo is GPL timer/training software and should remain the behavior/category benchmark in the timer lane rather than a donor codebase.","high","Dossier-backed classification is stable: the retained value is benchmark authority, not source incorporation.","high","Dossier-backed classification is stable: the retained value is benchmark authority, not source incorporation.","Licensing intentionally ignored as a decision filter in this canonical evaluation; assess only architecture, capability, donor value, and concept transfer.","","","","cs0x7f/cstimer — GPL timer/training platform; keep only as the gold-standard timer benchmark.","cs0x7f/cstimer remains valuable because it defines the product-behavior ceiling for timer flow, persistence, and statistics. That value is benchmark authority, not donor code.","memo","False","True","0.0","5.0","HT_timer_training","HT_timer_training_0001","Gold-standard timer benchmark","Gold-standard timer benchmark for HyperTwist; retained for behavior calibration, not donor use.","HyperTwist","Gold-standard timer benchmark","future candidate","architecture only","medium","cs0x7f/cstimer","1.0","Reserve Bench","3.0","GPL timer/training platform whose value is product expectations, acceptance tests, and behavior benchmarking rather than donor use.","Gold-standard timer benchmark","Included","P2","Keep in canon as the strongest restrictive timer benchmark; use it to calibrate first-party timer and stats behavior.","2.0","5.0","3.0","11881.0","121.0","","cs0x7f/cstimer","HyperTwist","","","","","","","","","","Original global Phase G v4 retained","GPL-3.0","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","14.0","2","3.0","121.0","mixed_or_boundary_sensitive_known","pattern_only_preferred","The repo is GPL-3.0 and remains the primary restrictive timer, stats, scramble, and smart-device benchmark. Use it for behavioral parity and acceptance criteria, not direct source incorporation.","Reference only: benchmark timer, statistics, scramble, and smart-device behavior without direct source incorporation.","Direct incorporation would require GPL-compatible distribution/compliance and is not the planned HyperTwist path.","Only if a narrow timer behavior later proves strategically necessary to recreate in first-party code; otherwise keep this as a benchmark.","high","gpl-timer-benchmark","no","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale donor posture to dossier-backed gold-standard timer benchmark status.","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." diff --git a/docs/repo_portfolio_unified_source_audit_v6_3.csv b/docs/repo_portfolio_unified_source_audit_v6_3.csv index e85e639..04e5bb7 100644 --- a/docs/repo_portfolio_unified_source_audit_v6_3.csv +++ b/docs/repo_portfolio_unified_source_audit_v6_3.csv @@ -102,7 +102,7 @@ 6) Best merge partners and exact coupling seam 7) Reasons to promote / retain / demote 8) Confidence change after source audit -9) Open questions / blockers","Primary: Phase G v4 board (canonical ranking and current bucket); Operational v3 board filtered to this repo; Merger matrix rows involving this repo; VS Code packet row for this repo, if present. Optional: Cluster narratives row for matching cluster; Bookmark occurrence rows for this repo. Do not attach v1/v2 or preliminary memo unless a judgment conflict, lineage ambiguity, or rationale gap needs arbitration.","Keep as one of the most important legacy 4D interaction donors; the dossier-backed custom broad-use license is operationally usable, but attribution and provenance obligations must stay explicit.","Custom broad-use donor with strong 4D interaction/history/macro value and explicit attribution/provenance obligations.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HT_hyper_engine_0003","HT_hyper_engine","cutelyaware/magiccube4d","","","","","","","Original global P0-P3 source audit retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","2","3","122.0","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","selected_not_live_boundary_sensitive","phase0r_boundary_sensitive_eval_then_adapter_or_sidecar","Phase 1R closed. Retain as a Phase 4R attributed donor beneath the Hyperspeedcube anchor; preserve attribution and provenance explicitly." +9) Open questions / blockers","Primary: Phase G v4 board (canonical ranking and current bucket); Operational v3 board filtered to this repo; Merger matrix rows involving this repo; VS Code packet row for this repo, if present. Optional: Cluster narratives row for matching cluster; Bookmark occurrence rows for this repo. Do not attach v1/v2 or preliminary memo unless a judgment conflict, lineage ambiguity, or rationale gap needs arbitration.","Keep as one of the most important legacy 4D interaction donors; the dossier-backed custom broad-use license is operationally usable, but attribution and provenance obligations must stay explicit.","Custom broad-use donor with strong 4D interaction/history/macro value and explicit attribution/provenance obligations.","Audit cutelyaware/magiccube4d as a hypercubing / nD engine candidate for HyperTwist. Do not stop at README-level features. Inspect: Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations. Decide whether the best extraction path is moderate modification and whether it belongs as subsystem donor / simulation donor. Test the three merger paths in order: 1) HactarCE/Hyperspeedcube [foundation + donor]; 2) cubing/cubing.js [3D engine + notation/state donor]; 3) tao-yu/Alg-Trainer [training UX donor]. Return hidden modules, reusable schemas, protocol layers, plugin hooks, render/state models, datasets/test fixtures, and any subsystem stronger than the visible product shell.","HT_hyper_engine_0003","HT_hyper_engine","cutelyaware/magiccube4d","","","","","","","Original global P0-P3 source audit retained","Custom broad-use license with attribution requested","known_from_reference_material","uploaded_reference_docs","no","","","","Supplemental intake references are advisory only; v6 adjudication remains the source of truth.","Usually indirect","yes","v6 unified all-project source-of-truth pack","v5_carry_forward","","v6_unified_source_of_truth_pack","2","3","122.0","mixed_or_boundary_sensitive_known","direct_incorporation_ok","The repo is operationally usable because the custom license explicitly allows use, modification, and redistribution, but attribution and provenance obligations must be preserved and tracked.","Direct donor use is acceptable with explicit attribution and provenance tracking; keep the MyMath.java provenance note visible in license tracking.","Preserve the custom license text, requested attribution, and the provenance note for utility code with referenced GPL lineage.","Usually unnecessary unless later isolating a narrow seam is cleaner than carrying the legacy code directly.","medium","custom-license-attribution-review","yes","","","","","","","","","","","","","v6.3_final_source_of_truth","Corrected on 2026-04-25 from stale unknown-license merge-bench posture to dossier-backed usable custom-license donor status.","implemented_live_boundary_sensitive","landed_boundary_sensitive_preserve","Phase 4R-B closed. Preserve as the landed attributed legacy 4D interaction, history, macro, topology-reference, and provenance-boundary lane beneath the Hyperspeedcube anchor; start future widening from the live-lane audit, then Phase 4R-B, then REPO_LICENSE_TRACKING.md." "roice3/Magic120Cell","https://github.com/roice3/Magic120Cell","HyperTwist","Locked Strategic Donor","Specialized 4D interaction and puzzle-UX donor","P1","7464","9219","49.0","122.0","137.0","medium","Retain the valuable internal engine, but expect to replace UI/product shell, adapt schemas/APIs, and refactor boundaries so it can plug into the target anchors cleanly. For this repo class, that usually means preserving generalized puzzle/state/render logic while building a new application shell around it.","repurpose","moderate modification","Determine whether roice3/Magic120Cell should stay donor/merge-tier for HyperTwist, be promoted, or be demoted; identify concrete salvageable modules and best merge path.","puzzle model, learning flow, UX loops, data schema, replay/export, plugin/hooks","Inspect package manifests, README/docs, src tree, examples, tests, CI workflows, config files, migrations/schemas, and hidden feature flags or experimental modules. Look for higher-dimensional state/notation representations, projection math, renderer abstractions, puzzle serialization, controls, and replay/training hooks.","Inspect generalized puzzle/state model; notation parser; transform math; rendering abstraction; save/load format; puzzle generator; input mapping; performance optimizations.","Integrate as a hypercubing / nD simulation subsystem for HyperTwist. Preserve the strongest existing pieces — nD state model, move notation, renderer, projection controls, solver/traversal logic, puzzle serialization, replay — and expose them behind a portfolio-stable interface. Wire first into HactarCE/Hyperspeedcube, then into cubing/cubing.js for orchestration, visualization, or data exchange.","Consolidate under the Hyperspeedcube + cubing.js + qbr nucleus, not beside it as a separate silo. Normalize data contracts, auth/permissions, storage, and telemetry; then attach as a service, plugin, canvas layer, trainer, or analysis module. Descending combination order: HactarCE/Hyperspeedcube, cubing/cubing.js, tao-yu/Alg-Trainer.","Repurpose here means: turn it into a higher-dimensional renderer/simulator donor and shared interaction grammar for HyperTwist and long-horizon VectorShell.","HactarCE/Hyperspeedcube","foundation + donor","Use this repo against the partner as an augmenting layer; preserve the partner as the likely base and mine this repo for capabilities that improve breadth, UX, or specialization.","cubing/cubing.js","3D engine + notation/state donor","Use the partner for canonical state or rendering abstractions and merge this repo's specialized logic on top.","tao-yu/Alg-Trainer","training UX donor","Treat this pairing as a candidate donor merge rather than a replacement decision; inspect module boundaries to determine which side owns the final shell.","VectorShell | ScriptoriumAI","VectorShell can borrow spatial/rendering and perception primitives; ScriptoriumAI can borrow tutorial/educational visualization patterns rather than the full engine.","Upgrade if source reveals clean modular architecture, reusable core abstractions, strong adapters/plugins, robust tests, and direct fit to a locked stack.","Demote if reusable value is mostly superficial, undocumented complexity overwhelms salvage value, or higher-ranked repos clearly dominate the same role.","Capability inventory + salvage targets + promotion/demotion verdict","1) Confirmed visible capabilities 2) Hidden capabilities found only in source 3) Best salvageable modules/files/packages diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/AGENTS.md b/docs/v6_5_deep_manual_pack/HyperTwist/AGENTS.md index e28863c..aa632a7 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/AGENTS.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/AGENTS.md @@ -86,8 +86,9 @@ Canonical doctrine doc: For HyperTwist, keep this explicit: - current shallow-eval set: `71` repos -- currently verified live/implemented in checked Unreal surfaces: `15` +- currently verified live/implemented in checked Unreal surfaces: `16` - permissive live lanes: `13` +- boundary-sensitive live lanes: `2` - restrictive live lane: `1` - the restrictive landed lane is `onionhoney/roux-trainers`, and it is to be treated as properly clean-roomed and then implemented @@ -104,8 +105,8 @@ into: ## Reset rule -Before recommending new HyperTwist donor-shaped widening from the remaining `56` current non-live rows: +Before recommending new HyperTwist donor-shaped widening from the remaining `55` current non-live rows: - do not reopen the already closed `Phase 0R`, `Phase 1R`, or `Phase 2R` packets -- preserve the fifteen landed rows as current truth -- continue from the closed packet sequence, with `Phase 4R-B` as the next non-optional move and the optional `Phase 3R-G` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap +- preserve the sixteen landed rows as current truth +- continue from the closed packet sequence, with `Phase 4R-C` as the next non-optional move and the optional `Phase 3R-G` comparison lane deferred unless the landed primary browser spatial stack exposes a real gap diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md b/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md index 1946d2e..c6a6f3e 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/DEVELOPMENT.md @@ -15,11 +15,11 @@ Do not reopen broad donor-driven widening as if the whole retained portfolio wer Current truth: -- `15` repos are currently verified live in checked Unreal surfaces +- `16` repos are currently verified live in checked Unreal surfaces - `13` are permissive `MIT` or `Apache-2.0` -- `1` is the boundary-sensitive `cubing/cubing.js` lane now landed through the practical `MPL` adapter path +- `2` are boundary-sensitive lanes: `cubing/cubing.js` through the practical `MPL` adapter path and `cutelyaware/magiccube4d` through the landed attribution/provenance boundary path - `1` is the restrictive `onionhoney/roux-trainers` lane that is already properly clean-roomed and implemented -- `Phase 0R` is now closed for the remaining `56` non-live rows +- `Phase 0R` is now closed for the remaining `55` non-live rows - `Phase 1R` is now closed as the retained-set contract and handoff overhaul - `Phase 2R` is now closed as the retained-set ownership and acceptance packet sequence - `Phase 3R-A` is now closed as the landed `Aarav2709/KubeTimr` widening packet @@ -29,6 +29,7 @@ Current truth: - `Phase 3R-E` is now closed as the landed `met4citizen/TalkingHead` widening packet - `Phase 3R-F` is now closed as the landed `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` widening packet - `Phase 4R-A` is now closed as the landed `cubing/cubing.js` classic-cubing adapter widening packet +- `Phase 4R-B` is now closed as the landed `cutelyaware/magiccube4d` legacy `4D` interaction/history/macro widening packet ## Model A interpretation rule @@ -42,11 +43,12 @@ Canonical doctrine doc: Next sequence: -1. preserve the fifteen landed lanes +1. preserve the sixteen landed lanes 2. preserve the landed `cubing/cubing.js` boundary-sensitive adapter lane with its `MPL` notice posture explicit -3. use the retained-set contract as the only legal/roadmap routing surface for non-live rows -4. keep `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, and `cubing/cubing.js` on preserve-and-enhance footing through their landed packets -5. continue broader widening from `Phase 4R-B`, with optional `Phase 3R-G` comparison work only if the landed primary browser spatial stack exposes a real gap +3. preserve the landed `cutelyaware/magiccube4d` boundary-sensitive lane with its attribution, upstream-link, and provenance posture explicit +4. use the retained-set contract as the only legal/roadmap routing surface for non-live rows +5. keep `Aarav2709/KubeTimr`, `Hypercubers/hypercubing.xyz`, `apache/echarts`, `google/model-viewer`, `met4citizen/TalkingHead`, `cubing/cubing.js`, and `cutelyaware/magiccube4d` on preserve-and-enhance footing through their landed packets +6. continue broader widening from `Phase 4R-C`, with optional `Phase 3R-G` comparison work only if the landed primary browser spatial stack exposes a real gap ## Suggested repo structure diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/LICENSETRACKING.md b/docs/v6_5_deep_manual_pack/HyperTwist/LICENSETRACKING.md index a019c72..5a7b20a 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/LICENSETRACKING.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/LICENSETRACKING.md @@ -42,9 +42,9 @@ They still must point back to `C:\HyperTwist\docs\REPO_LICENSE_TRACKING.md` for At the moment, HyperTwist should be described this way: - current curated shallow-eval set: `71` repos -- currently verified live/implemented in checked Unreal surfaces: `15` +- currently verified live/implemented in checked Unreal surfaces: `16` - permissive live lanes: `13` -- boundary-sensitive live lanes: `1` +- boundary-sensitive live lanes: `2` - restrictive live lanes: `1` The thirteen permissive live lanes are: @@ -67,9 +67,10 @@ The one restrictive live lane is: - `onionhoney/roux-trainers` -The one boundary-sensitive live lane is: +The two boundary-sensitive live lanes are: - `cubing/cubing.js` +- `cutelyaware/magiccube4d` That restrictive lane should be treated as: @@ -124,7 +125,7 @@ Current practical interpretation: - `Phase 2R-B` is now fully closed for the primary retained permissive support-plane rows in scope - `Phase 2R-C` is now fully closed for the final residual `0R-B` permissive rows - `Phase 2R` is now fully closed for the retained permissive set -- the fifteen already-live rows now have source-backed preservation authority in `C:\HyperTwist\docs\HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md` +- the sixteen already-live rows now have source-backed preservation authority in `C:\HyperTwist\docs\HYPERTWIST_LIVE_LANES_SOURCE_AND_PRESERVATION_AUDIT_2026-05-13.md` - the retained-set contract now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_1R_RETAINED_SET_CONTRACT_AND_HANDOFF_2026-05-13.md` - the core ownership and acceptance packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_2R_PACKET_2R_A_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` - the support-plane ownership and acceptance packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_2R_PACKET_2R_B_OWNERSHIP_AND_ACCEPTANCE_CONTRACT_2026-05-13.md` @@ -136,7 +137,8 @@ Current practical interpretation: - the landed `met4citizen/TalkingHead` widening packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_3R_PACKET_3R_E_TALKINGHEAD_IMPLEMENTATION_2026-05-13.md` - the landed `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` widening packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_3R_PACKET_3R_F_BROWSER_SPATIAL_SUPPORT_IMPLEMENTATION_2026-05-13.md` - the landed `cubing/cubing.js` boundary-sensitive widening packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_4R_PACKET_4R_A_CUBING_JS_ADAPTER_IMPLEMENTATION_2026-05-13.md` -- the next bounded move is `Phase 4R-B` +- the landed `cutelyaware/magiccube4d` boundary-sensitive widening packet now lives in `C:\HyperTwist\docs\HYPERTWIST_PHASE_4R_PACKET_4R_B_MAGICCUBE4D_ADAPTER_IMPLEMENTATION_2026-05-13.md` +- the next bounded move is `Phase 4R-C` Read together with: @@ -166,7 +168,7 @@ These are often strategic donors or comparators rather than foundations. Current HyperTwist correction: - thirteen permissive lanes are already live, including the landed analytics/reporting lane, the landed hypercubing knowledge and community-reference lane, and the landed browser spatial owner trio -- one boundary-sensitive lane is already live: `cubing/cubing.js` through an explicit `MPL`-aware adapter posture +- two boundary-sensitive lanes are already live: `cubing/cubing.js` through an explicit `MPL`-aware adapter posture and `cutelyaware/magiccube4d` through an explicit attribution/provenance boundary - `onionhoney/roux-trainers` is the one restrictive training lane already landed through clean-room implementation - timer comparators such as `cstimer` still remain benchmark/reference rows until deep evaluation says otherwise diff --git a/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md b/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md index b3e8ae9..5ba802e 100644 --- a/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md +++ b/docs/v6_5_deep_manual_pack/HyperTwist/ROADMAP.md @@ -5,12 +5,12 @@ Before widening new HyperTwist donor-driven implementation beyond the already landed lanes, preserve this current truth: - current shallow-eval set: `71` repos -- currently verified live/implemented in checked Unreal surfaces: `15` +- currently verified live/implemented in checked Unreal surfaces: `16` - permissive live lanes: `13` -- boundary-sensitive live lane: `1` +- boundary-sensitive live lanes: `2` - restrictive live lane: `1` - the restrictive landed lane is `onionhoney/roux-trainers`, and it is to be treated as properly clean-roomed and then implemented -- `Phase 0R` is now closed for the remaining `56` non-live rows +- `Phase 0R` is now closed for the remaining `55` non-live rows - `Phase 1R` is now closed as the retained-set contract and handoff overhaul - `Phase 2R` is now closed as the retained-set ownership and acceptance packet sequence - `Phase 3R-A` is now closed as the landed `Aarav2709/KubeTimr` timer subsystem widening packet @@ -20,15 +20,16 @@ Before widening new HyperTwist donor-driven implementation beyond the already la - `Phase 3R-E` is now closed as the landed `met4citizen/TalkingHead` embodied companion, narration, lip-sync, gesture, subtitle, and avatar-embed widening packet - `Phase 3R-F` is now closed as the landed `mrdoob/three.js`, `pmndrs/react-three-fiber`, and `pmndrs/xr` browser spatial support widening packet - `Phase 4R-A` is now closed as the landed `cubing/cubing.js` classic-cubing semantic/runtime adapter widening packet +- `Phase 4R-B` is now closed as the landed `cutelyaware/magiccube4d` legacy `4D` interaction/history/macro/provenance widening packet Current routing truth: - retained rows total: `68` - discarded from the active retained set: `3` -- active non-live implementation-board rows: `44` +- active non-live implementation-board rows: `43` - retained benchmark, oracle, or clean-room-later rows outside the active implementation board: `9` -The next bounded move is `Phase 4R-B`, with the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap. +The next bounded move is `Phase 4R-C`, with the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser spatial stack exposes a real gap. ## Reset phases