OPENHOOPS / 2K14Final team archive · November 9, 2026Reference libraryChecksums

Dated source reference. Current release status: handoff state. Full original relative paths are in the developer archive.

OpenHoops working log

Current scope (October13,2026): Windows-first deep editing and a public extension API; Mac/Linux compatibility follows later. Earlier native-port goals and next-step proposals in this evidence history are superseded. Technical observations and verification limits remain as recorded.

This log is the continuation checkpoint. Evidence and executable bytes live in the linked reports; hypotheses must not silently become facts.

Current continuation checkpoint — October13,2026

The user explicitly changed the goal to Windows-first deep edits and a public extension platform. Full decomp/recomp and standalone native boot are no longer required. Finish Windows integration before Mac/Linux compatibility; translation layers are acceptable later. Current scope and plan supersede old instructions below. The earlier heartbeat automation was canceled; do not resume or recreate it.

Active implementation is native18 plus broker18a.163 Python tests pass Mac/Windows; new rebound provenance has122 compiled synthetic cases and awaits in-game verification. The Dell connection interruption resolved without restarting the existing gamePID10088 or recorder8644. Broker18PID11672 was deliberately replaced by18aPID13168 using the same durable state. The SSH/RustDesk/API tunnel is re-established; inspect UI and process state before further changes. Original/pre-session backups remain preserved. The API task is still active; complete the live provenance and remaining Windows event/rule/launch work according to the current plan. See the newest entries at the end for evidence.

Historical session authorization — October12,2026 (automation canceled)

The user asked to keep working for the next few hours and preserve discoveries in a deep knowledge base. A bounded heartbeat in this chat resumes work every 20 minutes, up to nine follow-ups. Stop starting new work after 4:15 PM America/Chicago and leave a handoff. Automation ID: openhoops-research-continuation. Do not create duplicate automation or a new chat. No subagent delegation was requested.

Checkpoint at 1:10 PM America/Chicago

  • Original corpus: 4,906 files, all SHA-256 values reverified unchanged at 18:06:55 UTC.
  • Native reconstruction: six small routines across experiments/year-cell and experiments/record-state, 9,749 comparisons passed on macOS ARM64. Other OS/CPU targets untested.
  • Ghidra 12.1.4 and JDK 21 installed locally. Partial persistent project saved and ZIP-snapshotted. Fourteen function exports and 120 references. See analysis notes.
  • Major unresolved code dependencies: preferred VAs 0x5F7C20 and 0x48FC50 are not trustworthy ordinary code in the current file view. Do not substitute guessed date calculations. No reference launch environment or second executable supplied yet.
  • Current searchable library: 1,443 documents, including 14 OpenHoops research records.

Historical active investigation — October12

User correction after the viewer milestone: prioritize getting the actual game running. Standalone asset tooling has enough evidence for now. Do not continue the IFF/CDF queue or unrelated tiny-function recovery unless it resolves a concrete boot dependency. First establish a reference launch route, investigate the executable's protected startup, map initialization/main-loop dependencies, and identify the smallest genuine native boot/menu milestone. A compatibility-layer reference launch is useful evidence but does not complete the native-game objective.

Current blocker is now concrete: the original EXE launches from a separate copy under local Wine 11.18, reaches SecuROM and reports 8016: A required security module cannot be activated. No menu/gameplay or native-game boot is verified. Original import metadata has been recovered, identifying game-side window creation, the Windows message pump and display-mode enumeration. See game startup. The alternate executable/Windows-host question is pending. Avoid repeating identical failed launches; continue with the latest graphics-thread startup leads below while waiting.

The heartbeat prompt was updated to preserve this user correction and the existing stop time. The older follow-on queue below is historical and subordinate to this startup priority.

Milestone — native assets, afternoon October 12

  • Statically decompiled Nba2k14Explorer.exe with ILSpyCmd 11.1.0.9782 and a local .NET 10.0.12 runtime. Did not execute the editor. Assembly identifies Lotsbiss, version 0.4.83.0. Source extraction and tool hashes are in analysis/iff/.
  • Python survey and native C++17 parser validate all 4,323 original 94ef3bff containers: 7,875 segments, 78,330 resources. Native tool is build/iff/openhoops_iff_inspect.
  • Important correction: descriptor extent can exceed ZLIB decoded size. Original assumption rejected 1,417 files; actual differences are 8/16/48/56/64 bytes. Use wrapper output size, preserve descriptor value, do not invent padding.
  • Generic reader checks all container/resource-table structure and decoded CRC32 against Python; selected extraction SHA-256 values match. ASan/UBSan covered 551 malformed/mutated inputs, no diagnostics. Existing outputs refused.
  • build/iff/openhoops_iff_texture exports standalone, two-address DXT1/DXT5 top mips for layouts 69/101. Of 4,393 candidates, 77 exports (20 DXT1, 57 DXT5) were checked against original bytes and independently decoded with Pillow 11.3.0. logo000.iff preview was visually confirmed as the 76ers logo.
  • Full notes: IFF container research. No native game renderer or interactive viewer yet. Other IFF families and grouped texture layouts unsupported. Only macOS ARM64 execution tested; CMake untested.
  • Repro scripts: survey_iff.py, verify_iff.py, survey_iff_textures.py, verify_iff_textures.py. Native source under native/iff and native/tools. Follow-on work must avoid redoing the completed corpus survey absent parser changes.
  • Knowledge-base search now contains 1,455 documents, including 26 OpenHoops research records and the attributed decompiled reader sources. Final document links, native source hashes and archived decompilation hashes were checked. No long-running analysis process remains from this milestone.

Historical follow-on queue — superseded

  1. Native viewer and CMake builds are now implemented and renderer-tested on macOS ARM64. Exercise keyboard/file-drop/resize controls when the desktop is unlocked; no need to repeat decoder or full-corpus checks absent relevant changes.
  2. Extend format knowledge only where useful: DORNALOADER in the decompiled editor gives IFF/CDF (305098f0) leads. Model/group textures remain separate from the verified standalone texture subset. Compare original/replacement menuplayer resources as a targeted use case.
  3. Extend static code analysis selectively, without repeating the same whole-image timeout. Trace readable consumers of the date-like record field, preserving unresolved dependencies.
  4. Identify a concrete way to test reconstructed components on Windows and Linux; distinguish cross-compilation from execution.
  5. Consolidate reusable native components only after behavior and interfaces are justified. Keep engine reconstruction, asset tooling, and original binary-compatible hooks distinct.

Milestone — 1:45 PM America/Chicago, native Metal asset viewer

  • Added native/iff/pixels.*, native/tools/iff_pixels.cpp, native/tools/asset_viewer.cpp, a common native CMake entry point and synthetic pixel fixtures. The viewer implements resource/file navigation, reload, fit/actual size and checkerboard controls. It remains read-only and supports only the already verified standalone top-mip subset.
  • Pinned and archived SDL 3.4.18, bcdec 0.985 at commit 80859ed3b7afb1c527a2a99d70c61457bea72d0c, and CMake 4.1.2. Licenses, URLs and hashes saved in analysis/native-viewer/dependencies.json. Original bcdec files remain unmodified.
  • Seven native executable targets build with CMake on macOS ARM64, with CTest passing. tools/build_native.py stages source and toolchain outside the colon-containing workspace path; build report includes exact source/binary hashes. Colon-related CMake ABI detection and SDL path normalization failures are preserved and explained. An SDK-only retry was insufficient.
  • 77 original textures decoded under ASan/UBSan: exact alpha, maximum one-level RGB difference versus Pillow's different rounding algorithm. 165 synthetic fixtures and six rejection cases passed. Report: analysis/iff/native-pixels-validation.json.
  • Actual SDL Cocoa/Metal execution and renderer readback verified. At 1:1 scale, the 512×512 texture region of logo000.iff matches an independent CPU alpha composite exactly. SDL software differs by at most two blending levels. Fit-scale outputs differ at sampling boundaries, so no scaled bit-exact parity claim. Four viewer rejection/output-preservation checks pass.
  • CUA reports the Mac locked. Desktop keyboard, drop and resize interactions are not verified; no unlock was attempted. Render capture is verified independently of desktop interaction. No game startup, native engine rendering or Windows/Linux execution is claimed.
  • Main notes: native asset viewer. Commands: .venv/bin/python tools/build_native.py, tools/verify_native_pixels.py, tools/verify_native_viewer.py. Launch: build/native-bin/openhoops_asset_viewer NBA2K14-extracted/logo000.iff.
  • Next useful investigation: the decompiled DORNALOADER.cs for original 305098f0 IFF/CDF pairs, or a bounded readable engine function with independent verification. Preserve the existing completed surveys rather than rerunning them routinely.
  • Search index refreshed: 1,462 documents, including 33 OpenHoops research records. Final staged-source hashes, pixel-evidence source hashes, viewer binary hash and new document links were verified. Viewer smoke processes exited; no interactive viewer was left running.

Working conventions

Read-only original corpus. No execution of archived mod installers. Work on separate copies. Use source/version/hash attribution, record successful and failed experiments, and index new curated notes through tools/index_openhoops.py. Verify new behavior against independent original evidence. Keep each run's handoff specific enough to avoid redoing completed work.

Milestone — actual executable startup and original imports

  • Verified Rosetta x86_64 execution, installed pinned Wine 11.18 locally from Gcenx's official release archive with published SHA-256 verification, and initialized a separate prefix. The 4,906 game files were APFS-cloned to ~/.local/share/openhoops/run/reference-game; the original is untouched. All original and working-copy file hashes were rechecked successfully after the four runs.
  • Four bounded launches establish loader/protection execution. Non-debugger run 04 captures the exact SecuROM 8016 message via Wine RichEdit diagnostics. No D3D9 load or game menu verified. CUA cannot inspect the locked desktop. Run 02's WineDbg attach timed out and its subsequent exit 84 is potentially debugger-induced, not an independent game error code.
  • Recovered retained original import directory at RVA 0x00C000CC: 10 DLLs, 242 symbols. Every INT/IAT value matches; independent pefile parsing confirms names/ordinals/addresses. The header currently points to a different protection-side directory. No PE patch was made.
  • Identified static game boundaries: window creation 0x00E0E2B0, window callback 0x00E0B860, message pump 0x00E0B9A0, graphics-init candidate 0x00DDC6B0, adapter loop 0x00DDC650, D3D mode enumeration 0x00DDC0F0. Original IAT labels and four seeds were used in a read-only Ghidra run; persistent changes were discarded. Decompiler argument types remain unreliable.
  • Next leads, not yet validated instruction-aligned callers: 0x00E0D6FB -> message pump, 0x00E0E845 -> window creation, 0x00D94477 -> graphics init. Validate them and trace the actual application/frame loop. If the alternate executable arrives, compare hashes/sections/imports first, then launch only a separate working copy.
  • Repro/evidence: tools/launch_reference.py, tools/recover_original_imports.py, tools/ghidra/ExportStartup.java, analysis/startup/. Full explanation in GAME-STARTUP.md. No community installer, game patch, external message or asset publication was performed.
  • Final checkpoint: 1,470 searchable documents, including 41 OpenHoops records. Startup evidence manifest hashes 63 files; new document links checked. All reference game/Wine debugger/server processes from these tests have exited. Do not interpret harness timeout exit codes as spontaneous game crashes.

Milestone — graphics-module dispatch and startup loop, 2:10 PM heartbeat

  • Validated all three previously raw branch candidates using Capstone from bounded function entries and an independent read-only Ghidra export: message-pump dispatch 0x00E0D6F0, window dispatch 0x00E0E830, subsystem initialization 0x00D94450. No runtime reachability claim.
  • Recovered original RTTI for DEFAULT, LOCKSTEP, EXTERNAL and PLUGIN VCGPUTHREAD graphics modules. Five entries at 0x00FDF278 select five objects (two share EXTERNAL's type/vtable). Default/lockstep method offsets +0x24, +0x2C, +0x34 connect pump, window creation and quit-status accessors.
  • Mapped initialization 0x00E0EC90, startup dispatch 0x00E0EBE0, callbacks 0x00E0EBC0/BD0, work loop 0x00E0E4C0 and queue submission 0x00E0E860. This is a graphics worker, not proof of the full game simulation loop. Decompiler loses the worker's jump table; preserved exact instructions show the dispatch handlers and branch back at 0x00E0E7D7.
  • Added tools/recover_boot_dispatch.py: hash-locked, read-only exporter checking file-backed bounds, three aligned branch edges, five RTTI chains, shared method slots and fourteen complete disassembly ranges. Evidence: analysis/startup/boot-dispatch.json; independent Ghidra exports under ghidra-platform-dispatch/ and ghidra-graphics-thread/. Both project runs were read-only with changes discarded. Original EXE hash verified unchanged.
  • No repeated Wine launch, dependency installation, mod execution or native-game boot in this milestone. Existing reference failure remains SecuROM 8016. Alternate executable/Windows-host question is pending.
  • Followed the remaining thread-bootstrap leads within this milestone: graphics init allocates a 0x948-byte object, installs THREADER@VCGPUTHREAD at +0x490, calls 0x00E0EC90, and reaches CreateThread through 0x00DA1B90. The Windows entry 0x00DA1AD0 invokes first virtual method 0x00E0EBD0, which calls the worker loop. Address 0x0213D8EC is the string "pusher", not a callback; corrected the initial candidate interpretation in the notes.
  • Next bounded startup work: follow work handlers toward actual device creation/presentation and find the higher-level application caller. Raw protected caller 0x0309F67D has a push-return-address/jump pattern targeting subsystem initialization but no verified reachable predecessor. Do not promote it to a recovered game entry.
  • Search index: 1,473 documents, including 44 OpenHoops records. Detailed interpretation and limits are in GAME-STARTUP.md. No new native implementation or behavioral-parity test is claimed; verification here concerns exact static evidence.

Alternate executable located by user — 2:24 PM America/Chicago

The user reports the alternate executable is in the Trash, inside the crack folder of 2k14 rld. A direct listing of /Users/brentlane/.Trash failed with Operation not permitted (macOS privacy access). Nothing was recovered or copied; no permission bypass attempted. The executable's location is now answered; do not ask for it again. User needs to restore/copy that folder through Finder into the project before filesystem inspection and separate-copy launch can proceed. Windows-host availability remains unknown.

Milestone — D3D device and frame boundary, 2:30 PM heartbeat

  • Checked project for newly restored alternate executable/crack files: none found at start of this continuation. Did not retry denied Trash access or repeat the known SecuROM launch failure.
  • Connected DEFAULT/LOCKSTEP module methods to Direct3DCreate9, CreateDevice (0x00E0D560), BeginScene (0x00E0BA60), EndScene (0x00E0BB00) and Present (0x00E0BBC0). Distinguished game-module offsets from COM offsets. COM slot identities independently enumerated from archived Wine 11.18 d3d9.h.
  • Mapped worker operation indices 3/window, 4/window teardown, 5/device/interface creation, 6/release and 8/frame work; index 7 remains a reconfiguration candidate. The work handler 0x00E0C7C0 reaches device health checks, scene operations and presentation. Complete simulation/menu setup and draw workload remain unknown.
  • Added tools/recover_d3d_boundary.py, preserving 12 instruction ranges, five shared module slots and three dispatch tables in analysis/startup/d3d-boundary.json. Ghidra exports saved for seven handlers and seven D3D-related functions. Indexed branches still defeat some pseudocode; exact bytes/table data are retained, not guessed control flow.
  • Added tools/probe_device_boot.py: 18 original-x86 wrapper cases passed under Unicorn with explicit mocks. Checks CreateDevice's seven stack arguments, three thread-dependent interface choices, fallback HWND, exact-zero HRESULT behavior, return pointer, stack balance and callee-saved registers. No real COM/D3D, GPU device, game boot or native reconstruction is claimed by these probes. Report analysis/startup/device-boot-probe.json stores exact source bytes, versions, source hashes, cases and limits.
  • Detailed findings: D3D boot contract. Original EXE remains hash-identical. No new dependency, mod execution, asset expansion or unrelated tiny-function recovery.
  • Next useful investigation: compare/launch restored alternate executable when available; otherwise trace the higher-level application caller and creation/submission of lifecycle/frame work. Do not redo device-slot discovery or 18-case probe without source/contract changes. Reference launch remains blocked before verified menu by SecuROM 8016.
  • Index refreshed to 1,478 documents, including 49 OpenHoops records.

Milestone — startup submissions and loading-loop identity, 2:50 PM heartbeat

  • No restored alternate executable found in the project at the start of this continuation. Did not retry denied Trash access or the unchanged failing launch.
  • Graphics initializer 0x00DDC6B0 now connects to window request 0x00DDBE70 at 0x00DDC8CA, then device request 0x00DDBF30 at 0x00DDC8E3. Window helper submits/waits on operation 3; device helper submits/waits on 5 then 7. Failure branch and unresolved follow-on contracts documented.
  • Frame submission 0x00DDA8E0 has readable callers 0x00AB51D0 and 0x00AB4D20. The repeated update/render path initially looked like a broader application loop, but following object global 0x01349810 to factory 0x00AB3070 proves loading-animation class dispatch, not the full engine main loop. Original RTTI identifies 17 classes, including NBATODAY, MYPLAYER and FIRSTRUN. Preserve this correction; do not call this the recovered gameplay/main loop.
  • Added tools/recover_application_boot.py and analysis/startup/application-boot.json: nine instruction ranges, all 26 factory entries, 17 constructor/RTTI chains, four independently confirmed Ghidra call references. Read-only Ghidra export contains 12 functions and 20 references. Original executable hash verified unchanged. No new native implementation or behavioral parity claim.
  • Details: application-side boot. Search index now 1,481 documents, including 52 OpenHoops records.
  • Next: compare/launch restored alternate version when it arrives. If still unavailable, bounded higher caller leads are 0x009F1120 and 0x009F2D30 into loading setup; roles not verified. Do not expand loading-animation implementations as a substitute for main startup recovery. The startup protection-to-game gap and native-game boot remain unresolved.

Milestone — CRT-to-WinMain target and runtime bytes, 3:10 PM heartbeat

  • No restored alternate executable found at the beginning of this continuation. No further attempt to access denied Trash. Higher loading callers 0x009F1120 and 0x009F2D30 exported read-only; their overall roles remain unknown.
  • Original GetStartupInfoW IAT leads to retained CRT startup 0x00E234DC. Its call at 0x00E23627 passes the four WinMain-shaped arguments to 0x006A8200. Ghidra independently confirms the call. Stub 0x00E2376F jumps into the CRT routine, but neither is proven to be reached from protected PE entry 0x02B62B60. WinMain implementation remains protected/unrecovered.
  • Added optional --debug-command to the bounded reference harness. Archived Wine 11.18 debugger manual/source with URL, version and hash attribution. One specific diagnostic run, reference-startup-memory-01, read the target's first 64 bytes and CRT's first 32 bytes after the known protection error. Both memory ranges exactly match original file bytes. This is a capture-time prefix comparison, not a whole-image or historical claim.
  • The debugger attached after SecuROM 8016 and encountered an attach-correlated WoW64 fault at 0xFFF88190; cause unresolved. Do not confuse it with the earlier protection failure or an ordinary game crash. Commands completed and detached successfully, then the harness stopped its prefix at 35 seconds. No menu/gameplay/native boot. Original and working executable hashes unchanged.
  • Added tools/recover_crt_startup.py and analysis/startup/crt-startup.json, verifying hash identity, complete bounded disassembly, aligned call arguments/stub edge, original import names, independent Ghidra call reference and all 96 captured bytes. First verifier pass exposed ordinal-only import entries; changed name lookup to handle them, then verification passed. No game patch, mod installer or dependency installation.
  • Handoff: inspect/hash/compare the alternate executable once restored, especially the now-identified 0x006A8200 target (address may differ in another build). Otherwise the protection-to-game transfer and readable WinMain body remain the critical gaps. Do not repeat this snapshot or expand asset/loading tools without a changed executable/environment or a specific new startup question. Details in GAME-STARTUP.md.
  • Search index refreshed to 1,485 documents, including 56 OpenHoops research records.

User returned — alternate folder restored and Windows host available

  • User canceled the research auto-resume automation; app confirmed deletion of openhoops-research-continuation. Do not recreate it without a new request. User now confirms a Windows 11 OptiPlex is available, superseding the earlier statement that no Windows PC was available. Hardware specifications, access and game compatibility remain unverified.
  • User restored Crack/nba2k14.exe and Crack/rld.dll into the project. Static inspection only: neither file has a valid DOS/PE header. EXE is 17,546,240 bytes, SHA-256 405bba9b509a44a77010bc745b0bbac3a3c69fdcac1f1bfc4859fec292ff4eb2; DLL is 453,120 bytes, SHA-256 1290f7ccded3f29b294e184bee01ac583e6ea5a124c5efb64a8a3f635fd36425. file identifies both as data; pefile rejects both with DOS header magic missing. A bounded scan found no MZ candidate with a corresponding PE signature. High entropy alone cannot distinguish encoding/encryption from corruption.
  • Saved exact headers, hashes, sizes, entropy, parser versions, original comparison and unverified provenance in analysis/startup/restored-variant-inspection.json. No restored file executed, installed or modified; original reference preserved. Need the source archive/extraction history to resolve these unexpected file contents before treating them as runnable replacements.
  • Windows reference testing could distinguish Wine-specific startup issues, capture actual game runtime behavior, and later validate native Windows builds. Availability does not prove this old executable will boot on Windows 11, and Windows reference execution does not complete the native reconstruction goal. Microsoft documents x86/WOW64 debugging at https://learn.microsoft.com/en-us/windows/win32/winprog64/debugging-wow64 .

ISO provided; cross-platform goal reaffirmed

  • User reaffirmed native Windows x86/x64, macOS and Linux with equivalent game behavior; Mac ARM-only work is not completion. Shared engine semantics and cross-target verification remain required. Windows OptiPlex setup underway; proposed remote command transport is Windows OpenSSH on the local network. No remote connection or Windows change performed yet.
  • User supplied rld-nba2k14.iso, 7,525,793,792 bytes, SHA-256 db4708063e5906e1a23ce096af2bd7601c7f6101e7f8fa9f76f6d61ffc7d7127. Default bsdtar listing failed on Rockridge metadata; --options iso9660:!rockridge successfully listed and read the two Crack files. No mount/installer execution.
  • ISO entries differ from restored loose files and parse successfully as Windows PE files. Extracted separately to resources/executable-variants/rld-iso/Crack/. EXE SHA-256 7cb5fdaa30586558a3146dcf9023880b1cceeaabfe0f92f967f461c4644f3704; DLL c8207a78ef2bb104f78daa159fc5ac1986ca812621596ca7c67c0f9773efa1e0. Loose copies and original corpus untouched. Prior invalid-header findings apply only to the restored loose files. Cause of changed contents unresolved.
  • Report analysis/startup/iso-variant-inspection.json records exact source/member identities, PE metadata, hashes and extraction method. Next: inspect this valid variant's startup/dependencies and launch only a separate working copy. No menu or gameplay claimed.

Milestone — reference intro/menu and runtime WinMain, user present

  • User authorized continued work while configuring SSH. Added hash-pinned --variant rld-iso to the existing bounded launcher and created a separate APFS working copy ~/.local/share/openhoops/run/reference-rld, mapped R:. Original corpus, original G: copy and archived variant untouched. Static imports/exports/sections saved in variant-static.json before execution.
  • Three variant runs now pass the previous original-version SecuROM stop and reach D3D9/WineD3D rendering. Captured exact game-window images verify the intro. User reports menu worked and progression to loading a match. User initially mistook this for the recomp; explicitly clarified that it is the original Windows game under Wine/Rosetta and native OpenHoops remains unfinished. No independently verified gameplay or native-engine boot.
  • Run 01 stopped at its 45-second bound. Runs 02/03 attached WineDbg after 45/90 seconds, successfully read memory, then encountered the known attach-correlated WoW64 fault and subsequent process exit. These are not proof of an independent match-loading crash. Keep user play tests separate from debugger attachment.
  • CUA could not select Wine; CoreGraphics located the named game window and screencapture -l saved only that window. Return/Escape events were targeted to the game PID in run 03; intro skip was not verified. No further interactive launch is running.
  • Captured 17,216 bytes in six ranges, including a complete readable 92-byte WinMain at 0x006A8200. WinMain calls 0x004E13B0, whose first instruction jumps to 0x02164310. That destination remains uncaptured; bootstrap still has obfuscated control flow. This is the next concrete startup lead, not a completed main-loop recovery.
  • Added tools/recover_runtime_boot.py and runtime-boot.json: exact logs, hashes, six lossless binary ranges, per-version file comparisons, instruction boundaries and trampoline check. Read-only Ghidra transient overlay verifies WinMain decompilation structure; original executable/project unchanged. Pseudocode import argument grouping is unreliable; original stack instructions determine GetModuleHandleA/LoadIconA parameters.
  • Details and caveats in GAME-STARTUP.md. Windows SSH setup remains with the user; automation remains deleted. User asked whether to wait: continue captured startup analysis locally; use the OptiPlex for reference execution/debugging and native Windows validation when available. No further installs or asset-tool expansion needed for this milestone.

Milestone — OptiPlex provisioned and native Windows x86/x64 verified

  • User provided working ssh optiplex / SFTP and explicitly authorized machine inspection and required software/dependency setup. Connected with existing saved key; no SSH/client key/firewall/power/autologon changes. SSH server config hash unchanged before/after, service Running/Automatic. Hardware: OptiPlex Micro 7010, i5-13600T, 16 GB RAM, UHD 770, Windows 11 Pro 26300.9457, Ethernet 1 Gbps. Console session 1 was active; SSH commands use session 0. No sound device returned by Win32_SoundDevice, audio availability unresolved.
  • Installed signature-verified Microsoft stable Build Tools 2026 18.10.3 (MSVC 19.51.36260.0, CMake 4.3.1-msvc1, Ninja 1.13.2, Windows SDK 26100) and x86/x64 SDK debugging tools/CDB 10.0.26100.9457. Both installers exit 0; no reboot. Saved official URLs, versions, hashes, signatures, arguments and receipts. Built pinned SDL 3.4.18 and zlib 1.3.2 from archived source for both architectures. No third-party mod installers.
  • Built seven existing native executables for each architecture, verified PE machine types and passed pixel CTest on both. Windows x86 and x64 each passed all 9,749 storage-routine comparison cases, using hash-checked previously Unicorn-validated Mac outputs. 19,498 Windows comparisons total. Both pixel decoders exactly match the Mac fixture bytes. This verifies the existing bounded reconstruction, not whole-engine behavior.
  • Windows Direct3D 11 smoke testing exposed a missing explicit success return in the viewer's SDL-renamed entry function. Added return 0;, rebuilt both Windows targets and Mac Metal, verified successful exits. Both Windows D3D11 captures are identical and their 512×512 texture rectangles exactly match independent CPU compositing. No scaled/full-game graphics parity claim. Initial failed harness reports preserved; final viewer hashes supersede earlier build hashes. No new viewer features.
  • Transferred a separate 7,740,323,840-byte game archive via SFTP and verified all 4,907 member hashes on Windows. The working copy uses the valid ISO executable/rld.dll; original corpus and malformed loose Crack copies untouched. Extracted the disc's x86 X3DAudio1_6/xinput1_3 DLLs app-locally, verified both Microsoft signatures and recorded hashes/versions. No game installer or system DLL replacement.
  • Details and reproducible scripts: Windows reference host, tools/windows/, analysis/windows/. Native game/menu remains unreconstructed. Research auto-resume remains deleted; current work is directly user-authorized.

Milestone — Windows runtime capture and bootstrap loop lead

  • Original Windows reference run 01 created a responsive NBA 2K14 window through its 110-second bound. No foreground capture: subsequent inspection identifies LockApp as foreground. PrintWindow returns true but its image is all black, which does not prove black game rendering. No Windows menu/gameplay claimed. No attempt to bypass the lock screen or configure autologon.
  • Snapshot 02's CDB -pd option was rejected (system does not support detach on exit) despite process exit 0; required memory outputs absent, so the harness reports failure. Removed this unnecessary flag for noninvasive capture, preserving failed report/logs.
  • Snapshot 03 succeeded: x86 CDB noninvasive read of 256 WinMain bytes and 4,096 bootstrap-target bytes. Game survived debugger exit and was then stopped by the harness. D3D9/Intel graphics modules loaded. CDB missing-symbol/unwind warnings prevent treating printed stacks as proven chains.
  • Exact 92-byte WinMain matches the earlier Wine capture. Fully decoded the 659-byte body at 0x02164310..0x021645A2, 148 instructions, 43 calls, all internal branches aligned. Captured application-loop candidate loads ECX from [0x015D08F0], calls 0x004E0190 at 0x02164552, and repeats at 0x02164559 while EAX is nonzero. This is runtime-byte static control flow, not a traced frame loop or recovered simulation. The body lies beyond the module's reported image end; do not confuse it with an on-disk RVA or unchanged original-CD code.
  • Added tools/windows/analyze_snapshot.py, analysis/windows/runtime-startup.json, and exact capture/report/log files. Next engine step: inspect/capture 0x004E0190 and its initialization dependencies. Desktop unlock/console access is needed for visual gameplay verification, but runtime evidence collection already works over SSH.
  • Removed the three temporary on-demand Windows tasks. No recurring automation added; no game/debugger left running. Saved final cleanup and unchanged SSH hash. Original game corpus preserved.

User-requested headless lock settings

  • User authorized disabling the lock screen for this headless machine. Inspected existing settings first: screensaver active 1, AC/DC password-on-resume 1, no machine inactivity policy or Dynamic Lock override.
  • Disabled screensaver activity and AC password-on-resume only; DC unchanged. The registry change succeeded, and SystemParametersInfo readback confirmed screensaver inactive inside console session 1. Its separate setter returned false; recorded this uncertainty and removed the one-time task after checking the successful getter rather than claiming the setter succeeded. Saved exact before/after state and restoration instructions in Windows reference notes. SSH configuration remains hash-identical.
  • This prevents the configured screensaver/wake locking paths; it does not unlock the current LockApp session or enable automatic sign-in after reboot. A normal user unlock is still needed for visible game/menu testing. Build/debug work already functions while locked.

Milestone — console control and requested headless sign-in

  • Installed signature-verified official RustDesk 1.5.0 for Windows x64 and Mac ARM64; archived packages, release digests, source CLI evidence and receipts. Windows service is Running/Automatic. Chosen alongside SSH for console interaction and cross-platform project use. Actual game-streaming performance remains untested.
  • Mac RustDesk direct-IP connection returned error 65 despite successful TCP reachability; an SSH loopback forward to the Dell's RustDesk port works. Authenticated desktop visible. CUA successfully clicked Windows Start, typed notepad, and dismissed search with Escape. No game launched in this step. User reported desktop up; unlock mechanism was not established.
  • User explicitly requested future automatic login and no lock screen. Applied and read back Winlogon auto-login for the user-declared passwordless local brent account, NoLockScreen, disabled inactivity/Dynamic Lock/screensaver locking. AC wake lock was already disabled and verified; DC unchanged. Saved exact before/after typed values; account credentials and SSH configuration unchanged. No reboot performed; post-reboot automatic sign-in remains unverified.
  • Details and connection route: WINDOWS-DESKTOP.md. Dedicated RustDesk credential remains outside the project, not in receipts/search index. Research automation remains canceled. Ready for actual Windows visual reference-game investigation; native-game boot remains unfinished.

Milestone — Windows match reached, input diagnosis and application loop

  • User attached physical mouse/keyboard after read-only x86 DirectInput probe found system mouse creation failure 0x80040154. Probe then succeeded for keyboard and mouse. Restarted original game; menu input works. Re-focusing the remote game with a click also mattered. No virtual input driver installed.
  • Original reference run 02 (PID 12708) completed offline setup, main menu, Spurs–Heat loading, tip-off and live first-quarter play. Clock progressed 6:00 → 5:49 → 5:44 → 5:38 → 5:22. Paused successfully and saved CUA screenshot. No debugger attached on this run; audio, isolated player movement and full-match stability remain unverified. User authorized an artificial under-18 test DOB to skip online enrollment; no online terms accepted/account created. Game left paused while user discussed direction.
  • Captured and structurally validated the entire 900-byte application dispatcher at 0x004E0190, 239 instructions and 78 calls, including both returns. Recovered its 147-byte frame-delta and 93-byte Windows clock boundaries; captured QPC selected with ~1e-7 scale and ~1/15-second delta cap. This cap is not a fixed simulation frequency. All three bodies differ from disk. Ghidra read-only overlay confirms broad dispatcher structure but timer pseudocode is unreliable; exact assembly takes precedence.
  • Details, source hashes, uncertainties and next steps: APPLICATION-LOOP.md, analysis/windows/application-loop.json. Native engine is still unfinished. Automation remains canceled; original corpus preserved.
  • User solicited a second opinion favoring compatibility/hooks and asked for our assessment. Recommendation: prioritize a playable compatibility baseline and targeted, version-aware engine hooks as near-term deliverables; retain shared portable subsystem code and evidence for later native reconstruction. This is a proposed sequencing change, not authorization to redefine compatibility as native completion.

Milestone — deep customization versus reconstruction assessment

  • User requested a deep comparison of hooks/translation layers and decompilation/recompilation for an extensible OpenHoops. Saved OPENHOOPS-APPROACH.md: capability matrix, source-versus-author evidence, API architecture, native constraints, precedents and bounded decision gates. Recommendation is a version-aware game adapter plus portable replacement systems; maintain the native-independent engine as an explicit final milestone. This is a recommendation, not a silent scope change.
  • Inspected Elan source, BodyHook documentation, Blaze SDK, shot-meter documentation and Sigil corrections. Elan's known foul/reset inconsistencies and Blaze's worker-thread-only callbacks identify why semantic events and authoritative game boundaries matter. No downloaded community binaries/installers executed.
  • Archived 26 primary-source files/pages with URLs, retrieval UTC, source commits, sizes and SHA-256: gta-reversed, MTA, OpenRCT2, OpenMW, N64Recomp, XenonRecomp, SR/SRW, McSema, reccmp, DXVK/Proton, Whisky, ImGui, Detours, SDL and Apple/Microsoft/CodeWeavers documentation. Original OpenRCT2 README path returned 404; corrected lowercase source retrieved, failed attempt retained. Manifest: resources/approach-research/manifest.json. Reproducible source-list script records current endpoints; saved manifest pins this investigation's revisions.
  • New read-only process probe used Elan candidates on paused Windows reference PID 12708, validating executable path/hash first. Returned period 1 and 321.527069 seconds, consistent with prior first-quarter 5:22 screen. Also captured 0/0 scores, shot clock 20.3568783, offensive rebounds 0/1; these do not independently establish home/away identity or all field semantics. First UIntPtr conversion failure preserved; corrected result successful. No game writes, injection, debugger attachment or new input. Script and exact bytes: analysis/approach/.
  • Static PE inspection confirms both valid supplied executables are x86 and already large-address-aware. Do not apply an unnecessary generic 4 GB flag patch or conflate a 64-bit companion with a 64-bit game. Original and variant EXE hashes rechecked unchanged.
  • Verification: 39 source/executable hash checks, seven runtime field encoding/address checks, nine local report links and archive-script syntax passed. This validates research consistency, not new hook/game/native functionality. Search index and evidence manifest refreshed. Current entry-point docs corrected to reflect Windows first-quarter play and Mac compatibility menu, while Linux gameplay and native-game boot remain unverified.
  • Next recommended implementation: validate named state across game transitions, find a safe engine callback, replace one authoritative rule with portable logic, and drive a custom scoreboard through the same API. Preserve original behavior as the baseline. Avoid another broad unrelated asset-tool/routine pass. Automation remains canceled; game left in its existing paused reference state.

Milestone — external mode skips onboarding on a clean first launch

  • User chose external-mode-first and explicitly required removal for everyone on their very first launch. Implemented source-built native/external-mode/dinput8.cpp: exact executable/runtime guards, synchronous startup hook, automatic per-user generic USR/STG initialization, original DirectInput forwarding. No runtime debugger, manual date or profile setup is required. Package is build/external-mode-v0.1; original EXE is unchanged. This adapter is not a native engine or x64 game conversion.
  • Recovered date submission at 0xB558D0, its 13-year threshold in this build, under-age offline flags, optional player-creation check and root registration dispatch. Patched the root's DOB descriptor branch at 0xB58501 and used the original close routine with the recovered stack contract. Disassembly, runtime captures, guarded bytes and traced popup stack are saved in analysis/offline-bootstrap; uncertainties and source attribution are in EXTERNAL-MODE.md.
  • Prepared profiles alone and STARTUP_ACCOUNT_REGISTRATION=0 did not skip DOB. Prototype run07 without a profile still opened MyPLAYER creation. Final design therefore combines automatic missing-save initialization with the runtime branch. Generic default-appearance openhoops player was generated through the supplied game's own editor; no independent save encoder, MyCareer save or online account. Original per-user profile backed up before any changes; subsequent test states separately preserved.
  • Automatic run08 began with the entire NBA 2K14 AppData directory absent, initialized both saves, skipped DOB/notice/creation and reached the menu. Quick Game reached Spurs–Heat first-quarter play, 2–0 at 5:35; pause worked. No full-match/audio/comprehensive input claim. Final DLL build removed DisableThreadLibraryCalls to retain static-CRT notifications; clean run10 again reached the menu, using no Config.cfg or existing saves before boot. Restart run11 retained USR/STG/Config byte-for-byte and logged the same offline transition.
  • Built x86 using MSVC 19.51, C++17 /W4 /WX /O2 /MT /LD, no warnings. Final DLL SHA-256 ec96fc157501d73dcb0bade62b5f08de83f49f9e73a7aac4c50907214e996db2. Installer passed fresh install, identical reinstall, conflicting-loader refusal without replacement, and unsupported-executable refusal. First script invocation was blocked by Windows execution policy; preserved failed receipts and excluded the inadvertent unmodified run09. Correct invocation uses an override for the installer process only, with no persistent policy change.
  • Supported version is supplied ISO EXE SHA-256 7cb5fdaa30586558a3146dcf9023880b1cceeaabfe0f92f967f461c4644f3704. Original CD and archived ISO EXEs rehashed unchanged. One Windows 11 x64 host tested; Mac/Linux adapter behavior, mod-loader chaining and corrupt/partial existing saves are untested. MyCAREER remains available in optional menus; forced startup creation is gone. No online account/terms acceptance and no assertion that all network activity is disabled.
  • Evidence manifest, validation report, package instructions and search index updated. Temporary interactive-launch tasks removed; no debugger or research automation running. Next: external match-launch contract for teams/rosters/settings and validated game-state reporting. Avoid treating this milestone as the external season manager, custom rules or native reconstruction already being complete.

Milestone — portable saves beside the executable (external mode v0.2)

  • User requested game saves and related user data under a separate folder beside the EXE. Implemented the common user-data builder hook: Saves → saves, Cache → saves/cache, shoes → saves/shoes, Online Data → saves/online-data. Root derives from main EXE, not working directory. Generic player/settings bootstrap and onboarding skip now operate on portable saves. Original EXE/corpus remain unchanged.
  • Recovered builder at 0x4DF150, its usercall contract and protected target 0x217A490. DirectInput initialization was too late; captured initialized flags and AppData paths prove it. Final guarded temporary kernel32 GetModuleHandleA hotpatch selects the original WinMain return 0x6A8216 through the supplied wrapper, restores the API entry, then verifies and patches game startup before path caches initialize. No filesystem/hash/library-load work in DllMain. Failed IAT/direct-return attempts, page-read failure and missing Online Data category attempts preserved. See PORTABLE-SAVES.md.
  • Final x86 DLL built warning-free /W4 /WX with MSVC 19.51; SHA-256 003a0c821b81f4abd0851b276fa7f5854de849c07ddb1723d9bd3259a0d2daf4. Runtime capture confirms all four cached categories and secondary path copies refer to exe-local saves (Windows short names). Original API hotpatch support is verified only on this Windows 11 host; new bootstrap under macOS/Wine/Linux remains untested.
  • Final run08 reached HOME, wrote Config/cache to portable paths and saved Roster1.ROS in-game. Run09 restarted and successfully loaded the same roster in-game, hash unchanged. Run10 began with both portable and AppData game directories absent, initialized missing generic files automatically, skipped DOB/MyPLAYER creation and reached HOME. AppData remained absent throughout. No debugger attached; no full-match or every-mode test for v0.2.
  • Installer fixtures passed fresh install, identical reinstall, exact v0.1 upgrade backup, unrelated-loader refusal, unsupported EXE refusal, hash-verified recursive migration of all four categories, and existing-portable-folder merge refusal. -MigrateAppData retains sources. The fixture APPDATA override was process-only and restored. All prior user saves/backups retained; original game EXEs rehashed unchanged.
  • Delivered build/external-mode-v0.2.zip and source/instructions. Package ZIP CRC checked, payload hashes verified, archived as a new version without replacing v0.1. Evidence in analysis/portable-saves, source snapshot, validation and search index refreshed. Dell game closed after testing; run09 portable saves restored with verified hashes, clean run10 data backed up. No temporary tasks or recurring automation left running.

Milestone — deep live-game telemetry investigation

  • User requested a broad, deep survey of live game data, possession, legal ball state, clocks, rules, three-point geometry and rebound events. Ran the original supported Windows game CPU-versus-CPU (Spurs away / Heat home), with the existing external-mode/portable-saves v0.2 adapter. Used a hash-guarded read-only process recorder; no new injected mod, community executable or game-memory write. Original reference corpus preserved.
  • Four bounded captures contain 8,670 samples across 960 seconds of recording, plus paused/code proof captures. Established 24 named roster entries, ten active actors, a substitution, Q1→Q2 transition, a made/missed three, FT/and-one, steal/turnover, block and OR/DR evidence. Final screenshot checkpoint Q2 3:14, MIA18–SA14. Captures overlap, include pauses, and have gaps; not a complete match or continuous frame trace.
  • Verified common player stats at actor+0xC7C and team records 0x1DE2188/0x1DE260C, including shooting splits, rebounds, assists, steals, blocks, turnovers, fouls, paint/fast-break points and possession time. Caught/refuted misleading mappings: +8/+A are TWO-point counts (total FG adds threes), “QuarterLength” at 0x1DEE5F0 is rounded remaining time, +0x246 is not fast-break points, team +/- slot is not score margin, team-context roots are not fixed home/away or always current possession, and ball-bound actor can remain the last shooter.
  • Haslem OR at game-03 seq904: player/team OR0→1, home possession retained. Shot clock reset before credited rebound; polling that stat cannot provide authoritative reset-rule timing. FT count reaches zero before score credit. Live/dead ball and final-match lifecycle remain unmapped.
  • Recovered exact 244-byte three-point predicate 0x89FF10, four transformed-point/corner/arc logic and two selector banks, plus classification-bit and scoring consumers. 1,266/1,266 comparisons against captured x86 passed with only point extraction stubbed. This is bounded code evidence, not a complete native game or a live rule patch. Shooting-foul/AI/visual-line consistency remains open.
  • Statically decompiled GreenMeter1.7.0, retaining MIT license and attribution; live-checked five shot/finish CALL leads. Inspected Elan source/CTs, Blaze SDK and archived tool descriptions. GameTrack screenshot confirms retained scorer/time/type/resulting-score records; backing store is a promising reconciliation target, not yet mapped.
  • Saved deep report, 238-item capability inventory (including unknown/derived/planned entries), exact scripts/raw samples/screenshots, source/hash manifest, and 172/172 research validation checks. Updated decoder after positive-three evidence and regenerated canonical outputs. No full-match/overtime/restart/save-load/API/other-platform validation claimed.
  • Recommended next: read-only named snapshot feed, recover GameTrack storage and authoritative match/event boundaries, then whole-match and reconnect/replay/final-result tests. Reference game left paused. No recurring automation enabled. Native reconstruction remains separate and unfinished.

Milestone — event semantics, corrections, final result and rematch reliability

  • User explicitly prioritized event meanings/reliability before an API. Followed that scope: no API built. Saved EVENT-SEMANTICS.md, canonical 20-slot phase / 22-ID stat-notification / 34-routine map, detailed coverage/unknowns and exact evidence. This overrides the preceding recommendation to build a snapshot feed next.
  • Five bounded Windows CPU-vs-CPU recordings: 13,530 samples over 1,500 recording seconds, with pauses, gaps and game-04/game-05 overlap. Additional final/rematch/paused captures 10/1,085/46 samples. Original supported game PID13108 with existing external-mode v0.2; no new injected DLL, debugger, installer or game-memory write. The match finished normally SA50–MIA43 and final UI/quarter/player statistics reconcile. This was not a complete ordered event recording.
  • Recovered phase manager and pre-commit transition callback, same-state transition behavior, stat fanout ABI/add-subtract-reset, known inline bypasses, and occupied three-slot callback table. Notifications can occur before aggregate writes or with no actual decrement. OR/DR retraction and block-correction paths exist; no live retraction captured. Recovered exact OR/DR credit, block/steal contexts, numeric foul branches and team-only turnover bypass. Assist credit chain/three counter helpers recovered; eligibility thresholds still incomplete.
  • Captured-x86 synthetic tests 959/959 passed, explicitly mocked dependencies; not a native engine or complete live event validation. Independent capture/UI/lifecycle checks 89/89 passed. Live owner/list consistency 7,563/7,565; two sequential-read disagreements retained. Four distinct turnover episodes show team aggregate lag ~3.99–4.32s; overlapping captures of one episode not counted twice.
  • Corrected two earlier claims: fast-break points are +0x2A (helper 0x8835C0), not +0x1A; the latter correlates with points off turnovers. Community possession byte's 0=home/255=away relationship reverses after halftime. Updated shared decoder, prior report and capability catalog; historical decoded outputs/validation remain earlier-version evidence. Original raw captures unchanged. Added second-chance +0x2C UI corroboration without claiming complete causal mapping.
  • Recovered period-settle gate, normal regulation finish latch and displayed/raw-period distinction: raw period5 occurs after regulation without OT. Postgame phase19 observed. One rematch reused all24 player actor addresses and samePID; finished/period reset precedes clearing old score, and polling misses intermediate startup phases. Paused rematch stays phase10 with both timer flags1 while clocks freeze. These invalidate naive match-ID/live-ball/ordered-event assumptions.
  • Full legal live/dead, named foul/violation categories, all clock-reset causes, assist eligibility, GameTrack history, live corrections, OT, abort, save/load and reconnect remain unfinished and explicitly tracked. Next work stays on controlled semantic fixtures and authoritative trace/reconciliation, not premature API design.
  • Evidence manifest and search index refreshed. Original CD and ISO EXEs preserved. Game left paused in rematch Q1 3:48, SA4–MIA6; no collector or recurring automation intentionally left running. Only original Windows x86 game/reference behavior tested here; no new native-game or macOS/Linux claim.

Milestone — ordered entry trace, restart/save-load and public extension requirement

  • User requested remaining scoreboard/export/deep-rule semantics and asked whether addresses persist. Clarified that OpenHoops must enable third parties to build independent dynasty tools and mods, without being tied to one first-party runner. Recorded in AGENTS.md and PUBLIC-API-REQUIREMENTS.md. No production API built; semantics remain the priority.
  • Built a temporary source-inspected x86 research adapter with25 guarded entry detours and bounded15-minute logging. All100 compiled wrapper cases passed. This injected research instrumentation, unlike prior read-only polling; original EXE/corpus and stable adapter source/package unchanged.
  • Preserved rematch as Exhibition1.EXG, backed up adapter/saves, exited normally and launched newPID13044. All25 entry guards accepted; imagebase400000 and phase-manager address unchanged; all24 actor pointers changed. Roster-node addresses happened to remain fixed. Build-specific addresses/offsets do not imply persistent values or portable pointers.
  • Earliest restored clock246.884781s versus pre-save227.282959s:19.601822s rollback, same6–4 score, phase8/shotclock24. Later paused capture238.101837s followed a new Haslem foul/turnover. Intermediate update's approximately11s referred to that later capture. Exact checkpoint selection is unknown. Idle demo and exhibition both recorded mode1; this alone cannot identify managed matches.
  • Complete trace:57,160 contiguous records, one observed game thread, zero recorded drops,900016ms wall duration. Includes menus/demo, save/load, gameplay andQ1 intermission, not a whole match. Six made twos plus three alternate-path FTs reconcile every player's point delta and both scores6–4→12–13. All37 observation assertions passed. Alternate scorer8BE550 ran;8BE3E0 did not. Two block-correction calls were no-ops. Stopclock ran3901times and cannot be counted as whistles. Assist bypass observed.
  • Recovered qualifying-team-foul writer881C00, full/last-two-minute counters, threshold8A2110, reset prefix8BDBC0, FT-award consumer8BDEB0, display-status consumer967F70 and quarter-dependent OT-length882800.1792 threshold cases plus42 writer/reset/OT cases passed against captured x86; only writer mode queries mocked. Ten live-code ranges match prior captures except two intended five-byte tracer detours. Live threshold/OT fixtures, selector/display names and complete foul exclusions remain open.
  • Saved Exhibition2.EXG separately, exited normally, archived research DLL/log/saves and restored hash-verified stablev0.2. Cleanup confirms game closed, temporary launch task absent. No automation, publication, external messages or community installers. Only Windows x86 reference behavior tested; native/cross-platform completion not claimed.
  • Report and evidence: EVENT-CONTRACTS.md, analysis/event-contracts. Search index and manifest refreshed. Next: qualification/violation reasons, actual correction/bonus/OT fixtures, GameTrack reconciliation, managed-match identity and checkpoint boundaries.

Milestone — controlled overtime, bonus/correction contracts and bounded event storage

  • User requested comprehensive violations/corrections/bonus/overtime mapping. Continued semantic investigation rather than building a premature API. The mapping is not complete; RULE-EVENT-MAPPING.md separates verified paths from named-rule/live-evidence gaps and remains oriented toward third-party tool authors.
  • Temporary inspected research adapter expanded25→31 guarded entry hooks. Built MSVC19.51 x86 /W4 /WX;124 compiled wrapper cases passed. Complete30-minute trace:96,035 contiguous records, one thread, zero recorded drops. This proves bounded trace integrity, not coverage of every event. Original executable/corpus unchanged.
  • Exact-preimage/hash/PID/paused-state-guarded memory fixtures accelerated shot-clock/regulation/OT expiry and seeded qualifying foul counters. This was an injected, mutable research session; inherited read-only snapshot-collector receipt wording must not be read as “no session injection/writes.” Original receipts retained with explicit correction in the report.
  • Live shot-clock expiry reached79E520 then turnover13, without ordinary player-TO notification6 in the inspected window. Natural shooting fouls advanced seeded full/late counters and both BONUS labels displayed; no8A2110 entry occurred, so a live non-shooting bonus award remains unverified.
  • Engine rebuilt an attempted isolated team-score override from player statistics; failed OT fixture retained. Clean tied rematch then verified first, second and third OT startup,180-second clocks, seeded counter resets and3+0 timeout pools. Miami4–Spurs2 finished in3OT: nine final snapshots/UI agree on finish latch/winner/phase19/raw period8. Final expiry occurred after trace ended. OT points share one slot5. Synthetic accelerated transitions are not a full natural OT game or buzzer-beater test. -616 captured-x86 award/correction tests passed:504 actual non-shooting award/threshold combinations,4 shooting overrides,60 block-retraction cases,48 causal rebound-context cases. Dependencies explicitly mocked. No nonzero live correction captured. Added conditional foul-qualification exclusions and a separate direct coach/technical-candidate counter path; subtype names remain candidates until corroborated. -56 actual shared record-constructor cases verify categoryC, node references and48-byte payload, including direction-as-float (not clock). Original English/newscorebug evidence preserves violation vocabulary without conflating localization, rule IDs, referee signals, foul/turnover subtypes and record kinds.
  • Follow-up recovered actual protected allocator215A2C0 from an existing runtime capture.17 storage tests execute initializer/allocator/copier/category lookup/checkpoint lookup/sink:1,024 reusable nodes; two byte arenas; eight checkpoint pointers; input-copy persistence; newest-to-oldest category70 lookup for rebound correction; oldest-node recycling; and null payload despite success return on insufficient arena space. Registry sizes8/48 are explicit synthetic inputs; runtime schema initialization, consumers and GameTrack identity remain unverified. External clients must not use recycled pointers/checkpoint indices as durable event/match IDs. -54 evidence-consistency checks passed. New report, exact code ranges, scripts, hashes, source versions and evidence manifest saved; search index refreshed. Failed boundary guesses/fixture attempts retained and identified rather than silently erased.
  • Game exited normally; stable external-modev0.2 DLL and every pre-session save restored/hash-checked. Research saves/logs preserved separately on Dell. Temporary launch task absent. No recurring automation, community installers, external messaging, publication or native/cross-platform completion claim.
  • Next: capture live event-schema initializer/table and consumers; establish named violation-ID bridge with positive/negative on-court fixtures; capture genuine non-shooting bonus awards and committed corrections; then close coherent snapshot, legal ball-state, checkpoint/abort/reconnect and command-boundary gaps. No additional authorization needed for this local research.

Milestone — public API development release 0.1.0 / HTTP v1

  • User requested building and testing the API. Implemented a Windows x86 game-thread snapshot/command bridge, x64 Python loopback HTTP/SSE broker, durable SQLite events/results/acknowledgements, third-party match/team/player identity bindings, leases and idempotent guarded clock commands. Delivered source, OpenAPI3.1 schemas, Python SDK, Node/Python consumer examples, installer and launcher. See API.md for contracts, attribution, exact versions/hashes and limits.
  • This is a working development subset, not completion of the full requested rule/engine API. Named authoritative violations/corrections, legal possession/live ball, arbitrary rules, automated roster/team launch and safe asset hot-swap remain unavailable. Unknowns stay null; unsupported commands fail explicitly. Observed deltas are not a complete play-by-play. Addresses remain adapter-private; no first-party runner dependency.
  • Real controlled Windows CPU game finished Spurs8–Heat6 in first OT, with24 external player IDs and reconciled final points. Clock writes deliberately accelerated periods; not a natural full-duration game. Eight readers, competing control leases, exact-preimage rejection and idempotent command retries were tested. SSE resumed at its durable cursor. Two independent consumers received the final result; one consumer committed and ACKed without duplicate ingestion. Forced broker restart retained immutable results, ACKs and cursors. Game exit marked data stale and blocked writes.
  • 50 automated tests pass on macOS ARM/Python3.9.6 and Windows11 x64/Python3.13.16, including the final packaged source.5,280 comparisons against separate live process-memory decoding passed;6,287 actual responses passed18 JSON schemas.42 final compiled command cases cover both clock destinations, bounds, exact preimages, phase/period/frozen/deadline guards, real memory readback and no repeated execution. Four compiled wrapper stack-alignment cases pass. Compiler MSVC19.51 /W4 /WX. Synthetic/native instruction cases are explicitly distinct from live engine tests.
  • Fixed live false-positive review detection at Q2 and OT resets. Replayed all6,282 recorded snapshots against final core: Q2/Q3/Q4 and OT transitions remained active with no false reviews, then exactly one8–6 result. Live testing before this fix required explicit resumes, so the actual live export has timeline3; replay result has timeline1. Captures contain gaps and cannot establish complete ordered event history.
  • Initial broker failures exposed missing Interlocked exports, interactive-versus-service mapping visibility and embedded-Python path handling. Added native atomic helper, same-session launcher guard and explicit source-path insertion. Hardened null/transitional sampling to avoid publishing stale roster data as current. Final compiled-code review found optimized-away clock readback; volatile access and read→write→read verification now enforce it. Adapter faults yield indeterminate command outcomes rather than false rejection. Startup attachment tolerates stale samples without presenting them as live; full traceback diagnostics are retained.
  • Full accelerated match used initial DLL1ef35030…; final DLL216ba721cf17a3be1d6a8de8980d54160dcda6c66a6b09d475a8b8b687fa3b74 includes the invalid-sampling and volatile-readback fixes. Versioned receipts distinguish intermediate/final boots from the earlier full-match evidence. Five installer cases pass: fresh, repeat, stablev0.2 upgrade with backup, conflicting loader refusal, unsupported EXE refusal. Release is local and unpublished; hashes/ZIP integrity checked. No claim of exhaustive mod/hardware compatibility.
  • Windows is the tested game-adapter target. Mac tested portable Python core/HTTP and remote clients. Linux and Wine adapter integration remain untested; this does not complete the native cross-platform engine. Original CD/ISO executable hashes still match baselines. Test saves/logs are archived separately; original pre-session saves are restored with hashes checked. Final API DLL is left installed in the Dell working copy, with stablev0.2 backup retained. No recurring automation or external messages.

Milestone — ordered storage capture and exact-counter integration (ongoing)

  • Continued full public-API request; completion not claimed. Added ordered record-storage capture, transactionally durable cursor ingestion, explicit overflow/faults and sanitized payloads. Runtime schema capture confirms123 categories and category12's8/48-byte payload. First Windows research build played nearly one natural quarter, score11–16; final evidence reconciliation pending.
  • Added exact OR/DR/block credit and retraction counter hooks.580 compiled instruction comparisons pass, including no-ops and arithmetic edges; nine record-capture/wrapper checks pass.67 broker tests pass on Mac/Windows; new counter tests and live second-build validation in progress. Detailed scope, hashes, evidence and remaining work: API-ENGINE-INTEGRATION.md.
  • Corrected common-fanout/callback ABI wording in EVENT-SEMANTICS.md. Preserved original corpus, stable release package and pre-session Dell adapter/saves backup. Research session remains active; no recurring automation.

Engine API continuation — pause/replay and live counter regression

  • Reconciled first run:1,448 ordered records exactly match private capture; zero flags/faults/gaps. Second run:401 records, three DR credits, zero faults/gaps. Found live inline-credit period metadata bug; preserved failing build and added a compiled regression that fails it. Fixed build03 and combined build04 pass580 counter comparisons, nine record checks and52 clock command cases.
  • Mapped actual simulation pause counter through getter/enter/exit and main update gate; read-only running/paused/instant-replay fixtures distinguish pause and separate replay flag. Added private snapshot ABI v2 with v1 read fallback; clock writes now require actual paused simulation and replay inactive. Public legal-ball state remains unknown. Evidence and contract. -82 broker tests pass Mac/Windows. Fixed a Windows HTTP413 connection-reset edge; bounded draining after response half-close preserves the response. Earlier Windows test attempt accidentally used an older source path; corrected invocation and retained both receipts.
  • Saved second test as separate Exhibition4, exited normally, archived saves and installed build04 in the Dell working copy. PID8736, broker12228; live validation remains active. Original corpus and pre-session adapter/saves backups retained. No automation or publication.

API live reconciliation and stat-path expansion

  • Build04:1,748 contiguous private records exactly match persisted public events; nine counter operations have correct period metadata, zero faults/gaps.6,869 snapshots,6,869 event pages and10,000 retained events pass current schemas. Q1→Q2 observed, stoppedQ2 5:44.9674 atSA12–MIA14, saved separateExhibition5.
  • Paused +1/restore commands pass for both clocks; paused replay and running simulation both reject. Preserved two earlier fixture timing failures; first temporary+1 was explicitly restored, then final sequence passed. Broader pregame replay-gate meaning remains uncertain.
  • Build05 extends6→14 counter hooks;1,356 compiled comparisons and83 localPython tests pass. Build06 adds inlineFT/turnover paths; ongoing development, not yet a completed API or release. All original reference files and pre-session backups preserved.

API natural-match coverage regression and additional engine boundaries

  • Build06 ongoing natural CPU exhibition, no deliberate clock/stat mutation.3,153 captured records have exact public/private parity, zero flags, all13 player-stat types and all actors resolved. Found10 attempt-count mismatches among312 player/stat comparisons; traced missing made-shot inline attempt writes, adding them in build10. Preserve defect evidence rather than declaring all stats complete.
  • Original HTTP recorder failed to recover an expired cursor, preserving snapshots only. Replacement explicitly logs gap and resumes; early/mid SQLite backups recover public prefix for exact comparison. Private recorder remained contiguous.
  • Added post-commit phase history capture. First wrapper build07 failed EFLAGS parity; never installed. Revised epilogue hook preserves state across1,604 comparisons. Added separate32-bit team-only turnover capture; build09 passes1,932 counter cases, nine record cases,52 commands and97 Mac/Windows Python tests. Builds08/09 remain compiled-only; next live build combines fixes.
  • Named rule violations, legal ball/possession, safe full rule commands, automated roster launch, lifecycle and whole-final-build regression remain unfinished. Original corpus/backups preserved. Research session active; no recurring automation or publication.

Direct scoring and shot-clock record meaning

  • Added direct32-bit point-counter capture plus missing made-shot attempt paths. Build12 combined instrumentation passes2,516 counter comparisons (including nested hooks),1,604 phase cases, nine record checks and52 command cases. Header advertises installed paths without claiming all writers.103 local Python tests pass; final Windows source12b validation pending.
  • Tightened final exports to reconcile all additive player/team box-score stats. Team-only turnover counters remain separate. Source/schema/SDK docs updated to development0.2.0; oldv0.1 release archive unchanged.
  • Natural category12/kind13 record coincides with shotclock0, a team-only turnover and no player-turnover increment. Joined to prior controlled expiry trace and exact caller; now exposes shot_clock_violation_recorded at storage-completion authority. Unknown kinds remain unknown.
  • Research game still build06, inQ3 with no adapter errors; second private recorder overlaps first, both bounded. Historical parity validators pinned to archived source. No full API/native completion claim.

Full natural baseline and combined-build live regression

  • Completed build06 natural6-minute-quarter CPU match: Spurs44–Heat51, regulation, enginefinish/phase19/rawperiod5; no deliberate clock/stat writes. All6,993 private records match public records exactly, with719 byte-identical overlap records between independent bounded captures; zero flags/faults/gaps and no unresolved counteractors.20 of312 endpoint stat comparisons differ, all two-/three-point attempts, matching the missing inline made-attempt paths fixed in build10+. Capture parity does not prove exhaustive engine coverage.
  • Replayed15,127 observed snapshots through the new all-additive-stat finalization gate: one final revision matching actual team/player/rules/winner result, no review_required transition. Managed binding began after play started; whole-match event completeness remains unclaimed.
  • Finalized bindings now detach on a new run/roster/reset without changing the completed result; transaction rollback regression covers in-memory and durable state.106 Python tests pass locally and on Windows11/Python3.13.16 for packagedsource12c.
  • Exited build06 normally, archived saves/SQLite/private/HTTP evidence. Installed combinedbuild12 SHA2568c2f5baf58d5c38fbe9d755e3f0e775441cf3b38b4725561c2f6e9a939af3e9b in Dell workingcopy. NewPID12812/run20a538245a60cd60a4d8fee05b92433b; broker6964. Old result remainsfinalized and new run detaches its binding. Allfive advertised capturepaths present, initial adaptererrors0.
  • Changed quarter length6→1 through normal gameUI for a bounded natural regression; pre-session original saves remain backedup. Combinedbuild12 full-game validation is inprogress, not yet passed. Broader requested API and native cross-platformengine remain incomplete.

Natural combined-build regression and ordered event identity

  • Build12 completed a natural one-minute-quarter CPU exhibition, Spurs0–Heat8. All1,267 captured records match the public stream; zero capture faults/flags/gaps. All336 player-stat endpoint comparisons reconcile, including points and made-shot attempts; 33 phase records captured. This run did not exercise made threes, offensive rebounds, actual retractions or nonzero team-only turnovers. Final export matches game UI; same-process rematch detaches the old binding and preserves the completed result unchanged. See analysis/api-engine/live-record-validation-12.json, live-12-natural-final.json, live-12-rematch-detach.json.
  • Added snapshot ABI3 event watermark, sampled after snapshot capture and published under the same seqlock. Public event identity now uses durable sequence intervals bracketed by continuous valid explicit bindings; pre-binding/uncertain records remain unbound. Delayed records use historical match/timeline mapping, not arrival-time roster IDs. V1/V2 snapshots remain readable. This is observed continuity, not proof of complete legal-play semantics.
  • Build13 passes121 Python tests on Mac/Windows; compiled tests:2,516 counter comparisons,1,604 phase cases,nine storage cases,52 command cases,24 boundary-helper cases,12 publication-integration cases. Integration mocks capture/command and two OS queries; live ordering still needs testing. DLL SHA256 f45ab8faedec0a9375cb924cda61f6eb17d46f2b8207293ad95bfc353f7f59fd. Installed13 after normal build12 exit; saves and final SQLite archived. First broker stop guard correctly refused due to stale script pattern; corrected exact source-path guard stopped12c before starting13.
  • Broader API remains unfinished: named violations/corrections, legal ball state, rule commands, automated launch, overtime splits and cross-platform game integration. Original corpus and pre-session adapter/saves remain preserved. No automation or publication.

Snapshot-bound identity live regression and period ledger implementation

  • Build13 live game bound at Q1 1:59.804 with24 external player IDs and ABI3 event boundary41. Early224-record sample contains183 bound records; external player/team IDs resolve correctly. Restarted broker2340→10132 midgame, preserving active match and timeline1. First restart attempt refused to overwrite _atomic.dll held by private recorder; hash-verified reuse succeeded. Interactive task launch backgrounded/paused game; resumed via normal UI. No clock/stat mutation in this game. Final parity/restart validation pending.
  • Added durable point-counter scoring ledger to broker source14, with explicit partial/reconciled state, per-period OT splits, per-player before/after chain checks and engine regulation/combined-OT reconciliation. Finalization now waits for the event cursor to reach the snapshot watermark. Late binding, counter gaps and unknown scoring correction periods cannot claim complete splits.132 tests pass on Mac and Windows; archived development14 package. Live13 scoring replay currently reconciles; this is offline replay, not live14 verification.
  • Bounded backcourt-time investigation executes actual8A1650 dispatch and79E2B0 handler in216 captured-x86 cases, with geometry/mode/side effects mocked. Positive/negative timer, flag, policy and actor guards pass; selectors0/1 yield recordkinds0/1. Selector2 has60-second table value but still emitskind0, so elapsed duration alone cannot supply a named enum. Public decoder remains unchanged pending live/UI corroboration. Evidence: analysis/api-engine/backcourt-time-verification.json and exact source hashes.
  • Full API and native engine remain unfinished. Preserved original corpus and pre-session backups. Research game/captures still active.

Full ABI3 natural match passed; bonus decoder corrected

  • Build13 natural two-minute-quarter match ended Spurs19–Heat17 in regulation. No deliberate clock/stat writes. All2,319 private records exactly match public records, zero flags/faults/gaps; all336 player-stat comparisons match using ABI3 event-watermark endpoints41→2319.2,278 bound records,41 prebinding records and101 external-actor checks pass. Includes four three-point credits and three OR credits (counts include entireprocess capture); no actual retraction/nonzero team-only-TO coverage claim. Broker2340→10132 restart preserved match/timeline1; evidence live-record-validation-13.json.
  • Finalization correctly waited through phase12 after finish latch before phase19. A20-second observation timeout during this transition is retained; game subsequently finalized normally and matched visible19–17 menu. All8,294 snapshots,8,293 event pages, match/result pages and scoring-ledger replay pass23 schemas. Broker14 scoring replay of17 point writes matches all four quarter buckets and final player/team totals. This is a natural regulation replay, not natural overtime or live14 verification.
  • Found production bonus decoder wrongly used late-foul threshold2 for nondefault selectors. Corrected to actual predicate, including signed comparisons and period boundaries.2,400 comparisons execute8A2110 and both helper routines without dependency stubs;588 executable-derived fixtures exercise public snapshot decoder.133 Python tests pass on Mac and Windows for development14b. Source13 live run used default selector0, so this bug does not invalidate its default-rule findings.
  • Exited13 normally, archived finalSQLite/saves; original corpus and pre-session backups preserved. Started freshPID12840 at12:31:49UTC using same verifiednative13DLL and newbroker14b for controlled violation/period-ledger integration. Fullrequested API remains unfinished; no native-engine completion claim or publication.

Backcourt violation names and scoring-history integrity

  • Controlled live14 fixtures on PID12840 produced category12/kind0 at sequence145/Q1 94.3386s and747/Q1 22.27996s; kind1 at784/Q1 22.2288s and852/Q1 2.2377s. Each immediately follows the declared player-turnover write for the same actor. Exact caller79E49B supplies selector1→kind1, otherwisekind0, after6C7300 updates the turnover. Original dispatch/handler passed216 captured-x86 cases with documented geometry/side-effect stubs.
  • Visually observed 8-SEC VIOLATION at the first paused-preimage fixture in the CUA result; the subsequently saved screenshot was already followup play and is labeled accordingly. backcourt-10sec-exact-live-14.png directly retains 10-SEC VIOLATION at2.3s. The other waiting/followup screenshots are not mislabeled as exact calls. live-14-backcourt-all.json retains public records. A paused float timer write0.05s, two bounded active one-write reproductions and a paused selector0→1→0 cycle are research fixtures, not supported public commands or natural-duration violations. Two earlier armed attempts timed out without writes; retained failure logs. Selector restored with exact-preimage/readback verification at12:52:28UTC.
  • Development15 adds public names eight_second_backcourt_violation and ten_second_backcourt_violation; original numeric kinds retained. Names describe recorded calls, not timer-derived durations. Unknown kinds remain null. Source/schema/SDK documentation agree. Native13 DLL unchanged; broker15 passes138 tests locally and on Windows. Retired destructive v0.1-only schema generator; canonical OpenAPI now validates/formats without dropping extension schemas.
  • Closed a scoring-ledger completeness hole: an overlapping ring-history gap, record fault, new capture fault or unbound point write marks the active scoring timeline partial even if endpoint totals later reconcile. Pre-binding/other-run losses do not poison a new binding; loss annotation is transactionally durable and rollback-tested. Whole-match event completeness remains unclaimed.
  • Upgraded broker14b PID7064→15 PID12648 midQ3 using preserved SQLite state; match engine-api-14 retained timeline1 and reconciled period ledger. Task launch backgrounded and paused the game; normal UI resumed it. HTTP/private captures remain active; final live15 parity/export verification pending. Original corpus/pre-session backups preserved. Full API/native engine remains unfinished.

Controlled full-match regression passed; free-throw schedule ABI4

  • Completed controlled run14 (native13, broker14b→15): Spurs17–Heat21, regulation. All2,884 private records exactly match public records, zero faults/flags/gaps; all336 player-stat comparisons match between watermark49→2884.2,835 bound records and151 external-actor checks pass. Quarter ledger reconciles SA[5,2,4,6]/MIA[4,4,4,9], persists through broker upgrade, and finalizes at phase19. Backcourt timer/selector fixtures make this a controlled game; no claim of natural violation durations, live retractions or multi-OT coverage.14,212 snapshots and14,211 event pages plus match/result/ledger pass23 schemas. Evidence: live-record-validation-14.json, schema-validation-14.json, live-14-controlled-final.json.
  • Closed an additional finalization race: snapshot capture faults make the scoring ledger partial before finalization even if event polling has not yet reported a loss. Regression included in source16.
  • Added private snapshot ABI4, retaining v1–v3 read fallback. Captures scheduled free-throw kind/shooter under the publication seqlock; initial public award used a phase8 gate (later disproved in run16 and corrected to phase14 in17b; see regression below), and is null on invalid data or legacy adapters. Known kind1=shooting and4=non_shooting_bonus come from bounded prior award-code recovery; other numeric kinds remain unnamed. Shooter resolves through existing public player keys; pointers remain private. This is a schedule observation, not a complete causal foul classification.
  • Development16:144 Python tests pass on Mac and Windows;288 compiled free-throw helper cases,12 publication cases,2,516 counter comparisons,1,604 phase cases,nine storage checks,24 boundary cases and52 clock commands pass. Publication tests mock capture helpers and OS queries; helper tests separately execute compiled code. DLL SHA25660384906074435ad427561573b74e6f2d28d0cfbaf6928f4c9d5531f5a0511e8. Cosmetic sampler log still saysv3; actual mapping/header version is4.
  • Exited14 normally, archived saves/SQLite; installed16 only in Dell workingcopy. PID9372/run99c98dab54f705d0c21cdc6e00a2c893; broker10116/private recorder10080. Initial attract demo was observed and left through normalUI, then QuickGame launched for live validation. No live16 FT/OT pass claimed yet. Original corpus and pre-session saves/DLL backups preserved. Full requested API remains unfinished.

Live FT phase regression caught and corrected; native17b boot started

  • Natural run16 ended Spurs21–Heat12, regulation, matching the retained final UI. All336 player-stat comparisons reconcile.2,535 private records are contiguous with zero flags/faults/gaps;2,509 available public records match exactly, including all2,269 bound records and102 actor identity checks. Public prefix1–26 was not retained by the late-started HTTP capture/rolling database; this is explicitly a public-evidence gap, not claimed full-prefix parity. Attract-demo and prebinding records remain unbound. Bindingwatermark266 at zero score; finalwatermark2535. Final scoring ledger is reconciled. No deliberate clock/stat mutations.
  • Failed new feature: build16 gate incorrectly used phase8 (inbound), so actual phase14 FT administration with attempts remaining returned null award. Native/unit tests had mirrored that incorrect phase and did not establish its semantics. Archived defect evidence live-16-ft-phase-regression.json; watcher interrupted after game finished because the bad gate could never yield the expected observation. Corrected native and decoder to phase14 in17b, explicitly rejecting8/10/18/19. No claim that16 passed FT feature validation.
  • Natural record2168 atQ4 54.72s is kind25, after Chalmers PF2166, before Parker's FTM/FTA2207/2209 and2226/2228; last attempt is processed in phase10 after remaining reaches0. Captured original7A05F0 handler passes28 synthetic cases for actor ordering, two/three-shot schedules and rejection guards; dependencies including foul detection are mocked, float predicate replaced by fldz;ret. Handler writes kind25/fouler/shooter. Public name25 remains unexposed pending stronger live/UI corroboration. Refined nine Ghidra handler entries remain inferred pseudocode; warnings and exact source overlays preserved.
  • Native17b adds append-only privateABI5 rule parameters: selected three-point geometry bank in game units, raw selectors, period duration/full shot-clock reset/conditional minimum parameters. Read-only observations, no league-name inference or unsupported rule mutation. Null legacy/invalid/nonfinite behavior documented.148 Python tests pass Mac/Windows; compiled32 parameter cases,480 correctedFT cases,12 seqlock publication cases,2,516 counter comparisons,1,604 phase cases,nine storage cases,52 command cases pass. Original17 build also had the badFT gate and was never installed;17b corrects it.
  • Exited16 normally; archived saves/SQLite/private/HTTP evidence and stopped broker10116. Installed17b DLL SHA256e43739773a68cf8b52d0c16d309d6666db0c52c1aa83d47575606b2086dad9cb in Dell workingcopy, startedPID5936 at13:49:37UTC, broker7448. Live17b verification pending. Original corpus/pre-session DLL and saves remain preserved. Full API/native engine goals still incomplete.

Corrected FT schedule live evidence and rebound correction context

  • Native17b natural run0e4024bb08f45871bf1bc03448931815: Q2 0.952683s kind25 record1027 identifies away:7 and home:2, after PF1025. Phase14 begins1049; 242 award samples identify LeBron James/home:2, type1, two attempts, remaining2→1. FTM/FTA1063/1065 and1095/1097 each increment by1. Last make occurs in phase10 after transition1092.276 gated snapshots/five committed counter checks pass (live-17b-free-throw-validation.json). Exact FT UI and independent-memory snapshot were not captured for this sequence; no live bonus/technical/and-one/three-shot claim. Match still active at this milestone.
  • Nine unchanged default rule parameters independently match ReadProcessMemory (120/24/14 seconds; selectors0; four geometry values); reads were at separate times, not one atomic cross-process snapshot. live-17b-rule-parameter-parity.json. Conditional14 parameter is not evidence of OR reset policy.
  • Broker17c adds separate discovery for FT schedule/read-only rule parameters using producer ABI metadata, and includes rule-only changes and transitions to unknown in snapshot.observed. Legacy ABI4 with the bad FT gate is not advertised as validated.151 tests pass Mac and Windows. Native DLL unchanged;17c not yet the live broker.
  • Original942B10 category112 constructor passes96 captured-x86 cases for actor node, offensive flag, position, direction and eligibility gates. History/eligibility calls and sink are stubbed; no nearby opponents. Category112 is the concrete record used by correction lookup78C4F0. Auxiliary flags remain unnamed and live causal retraction still unproved. Initial harness inverted the mode4 gate; assertion caught it and expectation was corrected from actual jne before passing. Evidence retained; no production enum changed.
  • Full requested API remains unfinished. Original corpus and pre-session backups preserved.

Natural two-overtime game, live bonus award and named blocking foul

  • Native17b game PID5936 ended normally Miami24–SanAntonio19 after two natural overtimes. No deliberate clock/stat writes. All3,432 private records match public records exactly; zero faults/flags/gaps, no missing public prefix.3,376 bound records,56 unbound attract/prebinding records,170 external actor checks; all336 player-stat comparisons reconcile at watermark56→3432.11,166 snapshots/11,164 event pages and match/result/ledger pass23 schemas.
  • Scoring ledger reconciles six periods: SA[4,2,2,9,2,0],MIA[4,2,7,4,2,5]. Both OT starts initialize60s for120s regulation-period parameter. Qualifying counters visibly reset from nonzero; settled phase7 timeout allocation is1+0. Earlier6-minute-quarter fixture's180s/3+0 must not be generalized. UI final aggregates OT into2/7; API separately retains2–2 and0–5. Evidence live-17b-overtime-validation.json, live-record-validation-17b.json, schema-validation-17b.json.
  • Natural Q4 9.644706s awardtype4 identifies James/home:2 with two attempts. Away late qualifying count1→2 changes bonus false→true; earlier kind21 foul went to inbound, subsequent kind21 tophase14. FTM/FTA2490/2492 and2504/2506 each increment1. Exact during-FT UI retains James shooting and Miami BONUS. live-17b-bonus-validation.json; kind21 remains unnamed. Initial validation selected an uncaptured exact boundary2471 and failed; corrected to observed bracket[2471,2475), with failure note retained.
  • Exact BLOCKING FOUL banner retained in live-17b-natural-ot-screen.png, OT6.2s/19–19. Storedrecord2956 kind19 actors Ginobili/away:5 and Wade/home:1 matches original7A02A0→7A0482.20 captured-handler cases verify record19, actor order, qualifier1 and credit subtype2 with detection/downstream calls mocked. Broker17d now decodes19 asblocking_foul; original numeric domains remain distinct. Archived source record decodes correctly with17d. No retroactive rewrite of17b stored public history.
  • Broker17c's discovery/rule-delta changes plus named blocking foul form17d:152 tests pass Mac/Windows. Live upgrade7448→13056 preserves finalized result and six-period ledger exactly and advertises ABI5 schedule/parameter capabilities. Native DLL unchangedSHAe43739773a68cf8b52d0c16d309d6666db0c52c1aa83d47575606b2086dad9cb.
  • Private capture stopped cleanly at3,432. HTTP capture stopped bySIGINT after final export, closing its file; expected KeyboardInterrupt retained in tool output. Initial save copy while game alive failed on locked cache file (partial archive retained); after normal UI exit retry verified all156 files. Original corpus and pre-session saves/DLL preserved; pre-session saves not restored yet. Broker17d still running against the now-exited process. Full API/native-engine goal remains unfinished, especially causal live corrections, remaining violation meanings, legal ball state, arbitrary rule callbacks, automated roster launch and cross-platform game adapter.

Rebound record provenance built; live18 blocked by Dell connectivity

  • Development18 adds private event ABI2 (same244-byte record/249,912-byte ring), resolved category112 rebound context, and observer-only scope around original78C4F0 plus its4C77F0 lookup. A matching negative OR/DR counter change can reference the actual selected context as correction_of_record_id; this is not a claim about the original stat-credit event (correction_of_event_id remainsnull). Node reuse, timestamp/payload changes, actor/stat mismatch, missing context and no-op/wrapped counters fail closed. Nested scopes restore after normal returns. Original corpus preserved. -159 Python tests pass Mac/Windows for archived source18. Three further local regression tests cover external identity across restart, transactional rollback/retry and nonfinite geometry:162 pass locally; extra three not yet run on Windows. Compiled DLL SHA256642eebdf3e893ad7b20a7e5dae6addc0c9581f08f13fedcaa5a72e1bbc08d97e, MSVC19.51/W4/WX/O2/MT.122 compiled rebound cases execute actual history search, correction branches and counter arithmetic with documented game/OS dependencies mocked;2,516 counter,1,604 phase,480 FT,32 rule-parameter,12 ABI5 publication,nine storage,52 command cases pass. Exception unwind/live natural retraction remain unverified. Initial synthetic harness omissions and wrong ABI3 publication-harness attempt retained/described, not production failures.
  • Replayed all3,432 archived17b raw records through development18 and validated public event pages against23 schemas.18 context records decode with unknown player, correctly respecting legacy17b's missing actor capture. This is offline compatibility evidence, not live18 validation. rebound-schema-replay-18.json.
  • Stopped identified broker17dPID13056. Installed18 only in Dell workingcopy after game/oldDLL/backup hash guards. Started gamePID10088 at14:49:02UTC, broker11672 and private recorder8644. Last HTTP observation14:50:42UTC:runbc19e4514846476402d0599b4655d3ed,ABI5,phase0/invalid pregame sample,adapter errors0,event faults0/sequence0. CUA reached title screen. Then RustDesk remainedConnecting, SSH8-second connect timed out, ping timed out and both existing tunnels exited. Cause unknown. No in-game18 verification or clean remote exit claimed. User asked asynchronously to check power/Ethernet.
  • Stopped local HTTP recorder bySIGINT; partial boot/transport evidence closed and retained. Remote recorder/game/broker may still be running; cannot confirm or restore pre-session DLL/saves until host reachable. Remote recorder has its existing45-minute deadline. Last known installed DLL18; pre-session stable DLL216ba721... and original saves remain in Dell api-engine-backup. Original NBA2K14-extracted untouched. No automation/publication.
  • Next: reconnect SSH/RustDesk/API tunnel, inspect actual remote state before restarting anything, archive private receipt/logs, complete live context/provenance test and restore clean test state. Broad requested API still incomplete: nonzero live corrections, remaining violation names, legal ball state, arbitrary rule callbacks, automated roster launch and cross-platform game integration. Do not label development18 fully complete or production ready.

Scope decision — Windows-first deep editing, not full decomp/recomp

  • User explicitly directed updating all documentation to replace full decomp/recomp with deep engine edits and the public extension API, Windows first; Mac/Linux compatibility follows afterward. Updated AGENTS.md, project/knowledge-base entry points, canonical PROJECT-SCOPE, implementation plan, approach, public API requirements and source/evidence notes. Compatibility/translation layers are acceptable later; targeted reverse engineering remains a feature-driven technique.
  • Preserved earlier strategy verbatim in analysis/documentation/2026-10-13-original-strategy.zip; readable superseded copies and original/snapshot hashes are in knowledge-base/history/. Earlier technical evidence, attributed community posts, immutable package manifests and original game corpus were not rewritten.
  • During documentation work, Dell reconnected with the same game10088, broker11672 and recorder8644; no host reboot was observed. Re-established both loopback forwards; upgraded identified broker11672→13168 to18a using preserved state.163 tests now pass Windows as well as Mac. Native18 unchanged. The development18a package was staged before reconnection and accurately retains its packaging-time validation limits; current integration log supersedes those time-specific limits. No live correction pass yet.

Controlled defensive-rebound correction and original-credit linkage development

  • Closed run18 after host recovery.3,528 contiguous private records have zero capture flags/faults/gaps.24 resolved rebound contexts each match an immediately preceding same-actor unit credit.1,983 retained public records match;1,545 earlier public records are missing from retained evidence. Attract demo only, not a managed full match. live-context-validation-18.json and closed-state18 retain evidence.
  • Research19 uses a separate fixed original-routine mailbox: game-thread execution, paused/frozen phase10, same run/period/clock, exact latest context/actor/counter, nonzero period bucket and short expiry. No arbitrary call/address endpoint. MSVC19.51/W4/WX build SHA6989dc0d62d5312a7a7aa7aaf9835961187b93bf22cb5f1cb24f74d79290a247;122 rebound regression and32 compiled fixture cases pass with documented dependencies stubbed. Initial client112-byte layout assertion failed before mutation; corrected116-byte client and fixture tests retained.
  • Live PID632/runba9c6da637b17b74404e682de82ee9a9: original78C4F0 retracts LeBron/home:2 DR1→0 at Q1 73.094848s; context295→negative counter335. Disabled original ECX0 and wrong-count preimage controls produce no events/change. Game clock unchanged; original shot-clock restoration16.704700→24 is recorded. Public event35f4851d53ad466688b98ac9c7fc2cfb:120654 has correct external player reference-home:2 and selected-context ID. Saved UI shows rebound count0. This is a controlled routine fixture, not natural retraction evidence. live-19-correction-second.json, live-19-public-correction.json, live-19-rebound-ui-after.png. Managed matchengine-api-19 remains active for final export regression at this milestone.
  • Development20 builds original-credit owner observer at796D50, eventABI3, exact counter→context→correction source IDs, durable retained public-event lookup, restart/rollback/retention handling.170 local Python tests pass before documentation/discovery edits; Windows broker20 and liveABI3 validation pending. Native20 SHA5de68565354503489cefd36263c723ec81aa04b6ac933fbd56ee1beb526999fa built successfully;82 credit-owner/counter/constructor comparisons pass. Game notification, eligibility and storage sink mocked. Wrong-thread test initially expected two faults; actual constructor also publishes a metadata record, giving three rejected publications; assertion corrected with original-path evidence. Exception unwind and recursive engine callbacks remain unverified.
  • Current live adapter remains research19; broker18aPID13248, private recorder3156 and local HTTP19 capture active. Pre-session DLL/saves remain backed up, not restored. Original corpus unchanged. Items1–4 are not complete: broader corrections, remaining violations/legal ball state, scoreboard semantics and coherent rule editing still need implementation/live evidence.

Controlled correction full-match export passed; ABI3 lineage run21 started

  • Research19 completed regulation Spurs23–Heat22, matching the retained final UI. All2,763 private records exactly match public records; zero flags/faults/gaps, no missing public prefix.2,596 bound records and145 external actor checks pass. All336 player-stat comparisons reconcile, including the forced DR decrement. Home team-only turnover1 matches its separate hook delta. Quarter ledger reconciles SA[2,7,8,6]/MIA[5,5,2,10].10,323 snapshots and10,320 event pages plus match/result/ledger validate23 schemas. live-record-validation-19.json, schema-validation-19.json, live-19-controlled-final.json.
  • Finished replay/phase12 was correctly held until stable phase19; raw period5 at regulation finish is not overtime evidence. Closed private capture cleanly, stopped local HTTP recorder bySIGINT after final export, backed up SQLite with the backup API, exited game normally and archived saves. Broker18aPID13248 stopped by exact source guard. The first capture validator failed because a broad17b→19 filename replacement also changed the pinned run nonce; corrected exact nonce and retained original failure in this note. No production behavior changed for that harness correction.
  • Source20a passes170 Python tests on Mac and Windows. Schemas/SDK document context-source, original-stat-source and durable HTTP event IDs separately; discovery capability-gates ABI3 lineage. Research21 combines native20 with the isolated fixed routine fixture, SHA35b94ed1a99fe8601c830c04233fa700aa4d62e4b11d75c408f22b6c66fda06b;82 credit-owner comparisons,122 original correction cases and32 fixture cases pass. First21 build attempt lacked extraction preamble and did not compile; corrected staging succeeded. No full ABI3 live pass yet.
  • Installed21 only in the Dell working copy after hash/process guards; launchedPID6976 at16:09:46UTC, run4c369ceef126e27d1fe1a61342505b46. Broker20aPID12932; private recorder5672; HTTP21 active. Testing managed matchengine-api-21. Stable pre-session saves and DLL backups remain preserved and not restored. Items1–4 still incomplete; unknown semantics and broad rule editing remain unadvertised.
  • Live21 records111→112→116 form a natural OR credit/context/retraction chain for home:4, inside the bound managed matchengine-api-21, before any research request. Initial validator prose incorrectly called it unbound attract mode; corrected by checking actual public binding fields. No corresponding officiating/UI correction banner retained, so the basketball cause is not established. Controlled OR chain311→312→540 for LeBron/home:2 retracts1→0 at Q1 28.044588s with both game and shot clocks unchanged; disabled-path and wrong-counter controls do not mutate. Both source references and durable public event ID match the original credit and player. live-21-linkage-validation.json; current match not finalized at this milestone.
  • Native22 adds a block owner observer at8BE240 and caller-qualified provenance for8BE2F0 credit/8A3A02 retraction. Cache checks actual remembered blocker/opponent/stamp, period and counter preimage; consumed/changed/ambiguous contexts fail closed. No proximity inference. Event ABI4 adds block linkage; old snapshot ABI5 unchanged.48 original-vs-instrumented cases pass for register/flags/FP/stack and game-memory effects, including changed context, double retraction, overflow and wrong thread. Eligibility, notifications and OS queries mocked; original owner/counter/retraction instructions execute. native-block-tests-22.json.
  • First isolated candidate22 build failed on a missing forward declaration; added declaration and conditional compilation guard before successful build. Development22 broker adds block source/durable IDs, retained lookup, legacy mapping fallback and schema support.176 Python tests pass locally. A previous test treating block-stat provenance as invalid needed updating for the explicitly added format; unrelated stat4 still rejects. Windows22 tests and live block validation pending. Candidate source archives preserve the unbuilt initial22 and corrected full22 separately.
  • Separate research23 build includes a fixed original8A39A0 mailbox with game-thread/phase/pause/replay/run/period/clock/count/context gates and no arbitrary address/function endpoint.38 compiled mailbox cases pass, including repeat rejection. Initial generated harness had whitespace/indentation error and did not execute; corrected harness pass retained separately. Research DLL SHAa0191b44b3af119610cf91ee124471f5d44e2443c4954cfab3bcf8c2c7349a24, not yet installed. Full four-part request remains incomplete; especially remaining violations/legal possession, full scoreboard semantics and coherent rule commands.

Live21 full-match lineage regression passed; research23 installed

  • Live21 ended Spurs16–Heat18 in regulation; final UI retained. All2,846 private records match the public stream, zero faults/flags/gaps or missing prefix;2,801 bound/45unbound records and154 external-actor checks. All336 player-stat differences reconcile, including naturalOR116 and controlledOR540.9,193 snapshots/9,192 event pages and result/match/ledger pass23 schemas. Quarter scores SA[5,4,5,2],MIA[5,5,2,6] match UI. live-record-validation-21.json, schema-validation-21.json.
  • Validator first retained an old19 receipt filename and correctly failed its nonce check; fixed filename. Next exact-boundary assertion caught snapshot44 versus actual binding45. Selected retained HTTP snapshot1557 at exact watermark45, matching roster; all endpoint comparisons then pass. Both failed logs retained. Never silently included records outside the binding. Closed private/HTTP captures, used SQLite backup API, exited normally, archived final saves and stopped broker20a12932 with identity guard.
  • Windows development22 now passes176 tests using explicit checked import path. First run incorrectly relied on PYTHONPATH, ignored by the embedded runtime, and imported old installed source; its failures are retained separately. Fixed test launcher asserts source location before testing. Research23 passes48 block comparisons,38 mailbox cases,2,516 counter,82 rebound-owner and122 rebound-correction comparisons. Original game notifications/eligibility/OS stubs and synthetic limits remain documented.
  • Installed research23 SHAa0191b44b3af119610cf91ee124471f5d44e2443c4954cfab3bcf8c2c7349a24 only in Dell workingcopy. Game9300 started16:41:15UTC, broker22PID7792/private recorder1548, local HTTP23 active. Preparing managed matchengine-api-23. No block live success claimed yet. Pre-session saves/stableDLL remain backed up, not restored. Items1–4 still unfinished.

Natural full-match23 and shooting-foul/and-one evidence

  • Research23/broker22 run d23bc0eac9230e644a7fc50c3168f768 ended Spurs21–Heat16, regulation; quarter scores SA[4,2,7,8]/MIA[7,4,0,5] match retained final UI. All2,461 private records exactly match public records, zero faults/flags/gaps/missing prefix;2,417 bound/44unbound,128 external-actor checks. All336 player-stat comparisons reconcile.5,753 snapshots/5,751 event pages plus match/result/ledger pass23 schemas. No deliberate game/stat/clock writes.
  • Block2295 for Leonard/away:2 was naturally credited atQ4 9.166793s. The initial ten-minute block watcher timed out; retry detected the late block, but the game completed before a paused retraction test. Research mailbox was never invoked. No live block-retraction pass claimed. Static inspection also found the client still asserted the old matchengine-api-21; it had not executed. Next fixture client must take an explicit expected match/run rather than copied IDs.
  • Shooting record1944, Splitter/away:4 against Bosh/home:4, Q4 43.742882s: CUA tool image visibly showed SHOOTING FOUL,43.8,Spurs17/Heat13. That banner image is retained in this conversation; next saved PNG live-23-after-shooting-foul-ui.png is later substitution/made-basket presentation17/15 and does not itself show the banner. PF1942 precedes record1944; Bosh2-point credit1952/make1953/attempt1954 follows. Phase18 provisional2/2 schedule becomes1/1 after the basket; phase14 identifies Bosh/type1/one attempt. Final FTM2002/point2003/FTA2004 occurs after phase14→10 record2000. live-23-shooting-validation.json. This temporal sequence has no invented causal event ID.
  • Development24 names category12kind25 shooting_foul, grounded by original7A05F0's28 bounded cases and observed23UI/award/counter evidence.178 tests pass Mac and Windows, including a retained17b binary record and wrong-domain/fault rejection. Schemas/docs updated; native production source unchanged22, installed research native23 remains separate. Development24 package/hashes retained, not yet running at this milestone.
  • Stopped private23 cleanly, closed HTTP viaSIGINT after export, SQLite backup API passed integrity check, normal game exit verified, archived closed saves/database and stopped exact broker7792. The pre-session stable DLL/saves are still backed up, not restored. All four requested areas remain incomplete; remaining violation meanings/legal ball state and coherent rule editing are substantial outstanding work.

Full-match25 regression and selected localization observer26

  • Broker24/research23 run7f186542e5f0e7236cbbc0d8795672dc (gamePID10028) ended Spurs22–Heat18; quarters SA[8,2,4,8]/MIA[4,6,6,2] match saved final UI. All2,498 private records exactly match public records; zero flags/faults/gaps/missing prefix.2,455 bound/43unbound and136 external actor checks; all336 player-stat comparisons reconcile.4,940 snapshots/4,939 event pages plus match/result/ledger pass23 schemas. No block credit occurred, so the block retraction fixture was not invoked; this is a natural full-match regression, not correction proof. live-record-validation-25.json, schema-validation-25.json.
  • On startup the first HTTP snapshot still belonged to the exited run23; retained as live-25-before-new-mapping-snapshot.json, then pinned all watchers/binding to the new nonce before binding. No old-run samples were accepted by final validators. The pending block watcher and HTTP recorder were stopped bySIGINT after final export (expected KeyboardInterrupt retained). Private capture stopped cleanly, SQLite backup integrity passed; normal game exit and final save archive verified, broker636 stopped. Pre-session stable DLL/saves still backed up, not restored.
  • Research26 adds a separate selected-localization observer at660060 for46 recovered foul/violation labels. Private ring includes requested hash, original caller, event watermark, period/clock and raw reason; none implies an authoritative causal mapping or proves text was actually displayed. Production source/public ABI unchanged. MSVC19.51/W4/WX/O2 build SHA334ca7a8bdfb349e9497f3d005ad5e95348828c8bdb24ab323d908d9eb7a412b;56 compiled formatter-preservation cases and48 block-observer regression cases pass. Lookup/format/OS dependencies mocked; live labeling and SEH unwind remain unverified at this milestone.
  • Original880190 conditional minimum passes56 bounded cases: it raises only a lower shot clock, notifies with truncated minimum before writing, stores ceil(minimum) in1DEE5F4 and sets1CE78E8 refresh flag. Game clock/timer flags remain unchanged in tested cases. Downstream notification/full-reset callbacks mocked. Separate1DEE890 minimum is used by phase18 setup8A14E0; cannot equate either minimum with an offensive-rebound rule. shot-minimum-verification-26.json. This does not yet implement coherent public rule commands.
  • Corrected a disassembly-discovery error: the initial foul-display-consumers25 script used a failed padding search and decoded401001 for8FF6EF. Original bad-boundary output retained/labeled; corrected decode starts at the independently identified call8FF6EF and shows raw reason indexing128-bit masks at1E19090, not a localization mapping. Label hashes and parallel key hashes have no direct text references in the bounded search; no new violation enums inferred from numerical coincidence.
  • Items1–4 remain incomplete. Continue block live validation, authoritative remaining violations/legal ball state, scoreboard edge cases and coherent rule editing. No automation or publishing.

Run26 presentation evidence and correction-test priority change

  • Research26 is running on Dell game PID6196, run 1fd6c0e4f307876422f6adc8cd91ede6, with broker development24 and managed match engine-api-26. Original corpus is unchanged. The separately compiled localization observer passed56 preservation cases,48 block regression cases and2,516 counter comparisons. This remains a research adapter, not a new release.
  • Natural block credit150 (Wade/home:1, Q1 89.238846s) was followed by a paused fixture attempt at76.105324s. The dry-run guard rejected the request (result2; event watermark212 unchanged). The actual-retraction operation was never submitted; no deliberate game mutation occurred. Receipt: analysis/api-engine/live-26-block-rejected-first.json. The exact rejecting subcondition is not established. Do not weaken the guards or claim successful live block correction.
  • The user explicitly deferred block testing after asking about diminishing returns. Stopped the next-block watcher; continue the current game as a presentation/event capture. Rebound correction functionality already has natural OR and controlled OR/DR evidence, including full-game reconciliation; do not make identifying every basketball cause a prerequisite for other features. Main priorities are remaining event meanings, legal ball state, scoreboard semantics and coherent rule controls.
  • Static original-code evidence: shooting-foul handler7A05F0 calls block retraction8A39A0 at7A070E. This supports a purpose for that conditional retraction, but does not prove a natural live block reversal or the cause of the previously captured rebound reversal. The two raw rebound-retraction call candidates are80AAA6 and80AB23. See correction-caller-context-26.txt and correction-caller-candidates-26.json.
  • New positive presentation evidence: the midgame label capture contains738 contiguous localization requests (369 Blocking Foul and369 personal/team-foul templates) at Q1 46.782185s, raw reason10, event watermarks323–330. Labels originate at callers5CAA1E and5CA9DE. This is a copied midgame prefix, not a closed full-run receipt; localization requests are not proof every frame displayed the text and do not establish a causal event ID. Original formatter5CA8F0 loads the label hash from its input object+8; its only discovered direct caller5CAF97 obtains that object through5C72E0. The remaining enum-to-presentation bridge is still under investigation.
  • First single-byte-padding guess for the formatter began at5CA9E4, inside an instruction. Replaced it with a contiguous-padding candidate5CA8F0 and verified the independently observed call5CAA19. New raw index/call searches are explicitly candidates, not verified event names. No new public enum or legal-ball claim was added.

Closed run26; presentation-property bridge research27

  • Run26 ended Spurs17–Heat11 in regulation. Final UI quarters SA[6,0,4,7], MIA[2,4,5,0] agree with the exported ledger. All2,375 private records match public records; zero faults/flags/gaps/missing prefix,2,335 bound/40unbound and121 external-actor checks. All336 player-stat comparisons reconcile.7,383 snapshots and7,382 event pages plus match/result/ledger pass23 schemas. The rejected block dry run never reached mutation; otherwise ordinary CPU gameplay. live-record-validation-26.json, schema-validation-26.json, live-26-final-ui.png.
  • Closed label capture has3,664 contiguous records, zero errors/gaps, verified binary/JSON parity and SHA256 receipts. Blocking Foul requests bracket kind19 record322; Shooting Foul requests bracket kind25 records1273,1455,2039. Personal Foul requests at Q4 14.266997s/raw reason4 bracket unnamed kind21 record2204. This is presentation corroboration, not a causal identifier or an independently verified specific foul subtype. label-validation-26.json, live-26-label-event-brackets.json. No new public name assigned.
  • Private and label recorders stopped cleanly. HTTP recorder closed by SIGINT after final export; expected KeyboardInterrupt retained. SQLite backup integrity passed. Normal game exit verified and closed database/saves archived; broker12372 stopped by identity guard. Pre-session stable adapter and original saves remain backed up, not restored.
  • Research27 extends the private observer to selected label-property setter attempts at5C75D0, whose original protected body214B640 stores type4/hash at object+4/+8 after lookup5C7320. The original five-byte relative jump is guarded and the observer resumes its original destination. Research label ABI2 uses56-byte records, origin0=request/origin1=setter attempt, plus property key. A setter attempt can fail its lookup and is not proof of a write. No pointers/public enum added. The research block mutation mailbox was removed from27 in accordance with the user's deferral; production block observation remains.
  • Research27 compiled MSVC19.51/W4/WX/O2/MT; DLL SHA25632504d44d644754c3167bab26e073a2829c80af36951fac27fbbd477a142ca24.56 formatter and56 setter original-versus-instrumented cases pass register/flags/FP/stack/game-memory preservation, filtering/thread gates and ring wrap. Original protected setter body executes; property/resource lookup, formatting and OS functions are mocked. No live setter success or SEH unwind claim yet.
  • Installed27 only in Dell working copy after process/hash/backup guards. GamePID13252 launched2026-10-13T18:03:06.2278495Z; new run32fcdbdf2f5fc5eca5068c0229c676c0. Broker24PID1716, private recorder5148, label recorder636 and bounded HTTP27/final watcher active. First HTTP boot snapshot retained stale run26; new launch snapshot pins27 before binding. Started CPU exhibition; final validation pending. Four-part API request remains incomplete; blocks explicitly deferred.

Run27 closed; foul labels, presentation and holder API; settings scope expansion

  • User prioritizes fouls/violations, physical ball holder, legal live/dead status and general presentation cues for third-party clients. Rules implementation and block-retraction live tests are deferred. User subsequently authorized API reads/writes for game sliders and other settings available in-game. Inventory and genuine engine-side verification are required; menu-only changes are not sufficient.
  • Run27 research adapter/broker24 completed Spurs12–Heat19, quarters SA[4,2,4,2]/MIA[9,4,4,2], exact final UI retained. All2,369 private records match public records:2,330 bound/39unbound,130 external actor checks,336 stat comparisons, zero faults/gaps/mismatches.6,711 snapshots and6,710 event pages plus match/result/ledger pass23 schemas. Private/label recorders closed cleanly and SQLite backup integrity passed; HTTP recorder stopped bySIGINT after final export. GamePID13252 and broker1716 remain running; a subsequent unbound game is paused. Original corpus untouched.
  • Closed label ring:5,481 contiguous records, zero errors/gaps, binary/JSON parity and SHA receipts. Research27 property setter D8C4D7→5C75D0 captured Reach-in Foul/hash25CD25DD/raw reason6 at Q3 72.7149277 alongside category12kind18/event1422; Out of Bounds/hash05A68807/reason18 at Q4 93.3890152 and57.6792603 alongside kind7/events1928/2160. Later formatter requests corroborate these assignments. Exact same tick/clock/period is evidence, not an invented causal ID. No exact banners from these three moments saved. live-27-named-event-evidence.json.
  • Original reach-in handler7A0B80:40 bounded cases pass; actor0committer/actor1victim, reason6/qualifier1 and subtype6 credit. Initial harness incorrectly applied special-actor suppression to committer; corrected to victim from original assembly. Original out-of-bounds handler737DD0:56 bounded cases pass, reason18, kind7 and turnover notification4; flags may substitute ball+114 actor, so public actor is not guaranteed last toucher/holder. Dependencies mocked as documented; upstream detection not verified by these fixtures.
  • Broker source28a adds names reach_in_foul/out_of_bounds, experimental ball.holder from current on-court roster attachment (null in flight), and presentation states pregame/inbound/play/period_ending/between_periods/halftime/free_throw/stoppage/postgame. Halftime phase12/rawperiod3/clock0 corroborated by saved Sprint Halftime Report UI. Pause/replay remain independent. Phase17 timeout and legal live/dead/possession remain unnamed/null. Scope is four-quarter exhibition; no custom sounds built.190 Python tests pass locally and on Windows;23 schemas validate. Candidate28a is staged, not running yet. Existing running broker24 does not expose new fields.
  • Research28 copied-property observer built SHA308e6995f927f320e2d9fb933372ef5a04e503c67bee5d35e8325980df93581b but not installed or preservation/live tested. Research27 already captured positive setter evidence, so no reason to deploy28 merely because it compiled. Stable pre-session DLL/saves remain backed up, not restored.
  • Keyboard troubleshooting temporarily changed RustDesk to Legacy/source1 without improvement. Restoring source2 (Map) and clicking game before held Escape successfully opened pause. CPU foul UI values initially50. Raised all six CPU foul sliders to100 through UI; cpu-fouls-before-28.png and cpu-fouls-raised-28.png. A temporary Simulation preset selection was returned to Default before custom changes. User bank has not deliberately been changed. No claim of runtime value verification yet; game remains paused in sliders, Q2 1:21, SA7–MIA3, subsequent unbound match.
  • Source leads: Elan CT https://github.com/elanjcoop/Elan-2K-Mod/blob/main/Elan%27s%20Engine.CT retains possession candidate+10F5655, already disproved as fixed home/away across halftime; do not promote it. NLSC https://forums.nba-live.com/viewtopic.php?t=96395 search snippet mentions82 LooseBallFoulFreq; direct page returned403, full post unverified. Local Sigil13978 slider_names.json provides59 UI names and126-float user/CPU bank candidates, not runtime proof. Blaze SDK exposes generic memory/plugin facilities, not authoritative foul/ball semantics.

Slider profile recovery and development29, live deployment begun

  • Development28a was deployed on brokerPID10256 with original research27 gamePID13252 and verified to expose new presentation/physical holder fields. Partial subsequent unbound capture28 closed deliberately Q3~37s (not a full-match regression/export). Private ring3239–4215:977 records, no faults/gaps; labels8638–12310:3673 records, no errors/gaps. Recorders6696/3868 stopped cleanly; HTTP stopped bySIGINT (expected interruption retained). SQLite backup integrity check passed, game exited normally and closed saves/database archived remotely in logs/api-engine-28/closed-state. Broker10256 stopped by identity guard. Pre-session originals remain backed up.
  • Six CPU foul sliders raised to100 via UI and saved in working profile. Isolated shooting100→99→100 comparison pinpoints cache130CAB4. First read used incorrect arithmetic1F0C900; corrected130C900; failed read retained. Authoritative profile resolves [1F207A8]→+350CA4→+BBE30, preset+0 and126 floats+4. Profile capture508bytes SHA e4945cac5d8e8262da204e9da9f9d55d6fec8b771fb6688724e663712d1ad248 confirms all six user50/CPU100. UI comparison/screenshots retained. Original corpus unchanged.
  • Original slider getter/setter table130BF98 recovered for63 user/CPU pairs; archived Sigil13978 names59 UI entries (other pairs not exposed). Original setters/getters/profile lookup/cache refresh/custom preset execute in1,512 bounded cases, including144 foul gameplay getter cases. Special-mode queries stubbed false. Pairs2,45,46 do not invoke refresh; this was discovered by a failed initial blanket assertion, corrected from original code. These tests do not verify all labels or live behavior.
  • Private ABI6 adds profile reads and game-thread mailbox. Development29 GET /v1/settings catalogs59 named sliders/user+CPU; slider.set initially permits only six foul IDs. Paused phase10, nonreplay, same period/run,750ms frozen clock, value/preimage0..100, lease/idempotency/expiry guards. Invokes original setter and restores user/CPU selector. Runtime profile only; explicit disk save is not implemented. Every other in-game setting and remaining slider write remains unfinished; do not call settings API complete.
  • 195 broker tests pass Mac and Windows;26 schemas. Compiled native mailbox228 cases pass including original six setters/refresh, readback and duplicate refusal; synthetic memory/selected special-mode stubs, no live-write or exception-unwind proof. MSVC19.51 /W4 /WX /O2 /MT research29 DLL SHA dbeff942de62ad03a0362b1e02d5bdfd6a5a364ed999ee5f307883ec812503ce preserves private research27 label observer. Source archive, hashes, maps and receipts retained. Installed guarded into separate Dell working copy, gamePID7528 launched2026-10-13T19:04:47Z; broker29PID12940. Live game/API write verification pending at this milestone.
  • In-game UI inventory: Gameplay difficulty Pro, game style Custom, game speed50, fatigue/injuriesOn, shooting/FT shootingUserTiming, FTdifficulty50. Presentation audioDefault, commentary100,PA45,effects60,crowd50,chatter30,in-game music0,action replaysOccasionally,after-basket camera cutsOften,ball-handler textName,FT help/routinesOn,shot feedbackOff,pick-and-roll overlayOn; units/date/time/decimal rows gray in-game. Saved screenshots. No presentation/gameplay setting was changed. Quarter duration not offered on observed in-game Gameplay screen. Controller/camera/video/NBA rules inventory and original setter recovery remain.

Live foul slider verification29 and expanded named-slider development30

  • Research29/broker29 run2edd41cf1b03bb70e746f1d0394fbacb successfully exposed59 user/CPU profile values. All12 six-foul/side combinations passed public HTTP original-setter write/readback, duplicate-command identity, stale-preimage rejection and restoration with whole named-bank equality. live-settings-roundtrip-29a.json. First script assumed a fixed150ms observation delay and failed an equality assertion after an applied restore; later capture showed no difference. Corrected the harness to await snapshot convergence within3s; retained original failure/readback. Command acknowledgement can precede the next observed snapshot.
  • Additional independent UI check: set six CPU foul sliders to94/95/96/97/98/99 using public API; original menu showed exact OverBack/Charging/Blocking/Reaching/Shooting/LooseBall values. Screenshots and command receipts retained; API restored all to100 and UI confirmed all100. User bank remains50. Game paused Q1~109s during tests. No disk-persistence claim or upstream foul-frequency statistical-effect test.
  • Run29 HTTP capture closed bySIGINT after tests.2,409 snapshots,2,408 event pages and settings response pass26 JSON schemas. Normal game exit and closed-state saves/SQLite archive verified; broker12940 stopped by identity guard. No managed match/export claimed for this brief fixture run.
  • Development30 extends original setter dispatch to all59 named sliders, excluding unnamed63-pair slots45/46/48/50. Guards verify original dispatch table and setter entry bytes, and all existing pause/run/preimage/lease guards remain. Speed follows original setter behavior (no cache-refresh call); no invented refresh added.2,242 compiled command cases pass, including both sides, rejection and whole profile preservation/restoration.195 broker tests pass Mac/Windows; first local invocation lacked PYTHONPATH and failed import, corrected invocation log retained. No new general gameplay/presentation/controller/video/NBA-rule settings controls yet.
  • Research30 DLL SHA9ce9c80a872ecf4031407a688974777edf0e031910023688e8b9ef12531ae594 compiled /W4 /WX and installed into guarded Dell working copy. GamePID9660, brokerPID5124, run e8e1912b1b5c30f5ae7e507ad974b5d9. Expanded live write verification pending. Research29/30 preserve private label observer27. Stable pre-session DLL/saves remain backed up; originals untouched.

All118 named slider/side live round trips pass30

  • Research30/broker30 run e8e1912b1b5c30f5ae7e507ad974b5d9 passed all59 named sliders on both sides through public HTTP: original setter write/readback, identical duplicate receipt, stale-preimage refusal, restore and unchanged whole named bank. Paused Q2 109.7619705s, unbound SA0–MIA2 fixture. live-settings-roundtrip-30.json, live-settings-test-30.log. First attempt rejected preflight at between-period phase/120s; no command submitted. Resumed and paused phase10 before successful test. No managed-match/full-game/export claim for this fixture.
  • This adds live write-path evidence for all118 values, not independent UI-label or upstream gameplay-effect verification for each. Six foul labels already have UI evidence29. General gameplay/presentation/controller/camera/video/NBA-rule settings still unfinished. Runtime profile writes; no explicit disk persistence guarantee. API and integration docs updated.
  • General-settings read-only exploration begins with profile/options/global captures. Original accessor caller candidates retained in options-accessor-callers-30.json; padding-bounded decoding is discovery evidence, not complete recovered control functions. UI click/Left timing changed Difficulty Pro→Rookie rather than intended Speed50→49; screenshot game-speed49-30.png is misnamed and actually shows Rookie/Speed50. Difficulty restored to Pro with verified UI. Captured profile/options unchanged; initial narrow global range insufficient to locate difficulty. Widening read-only capture next. No general setting exposed from this candidate alone.

General settings recovery30 and development31

  • Isolated original-menu changes mapped20 active-game controls:7 gameplay (difficulty, speed, fatigue, injuries, shooting/FT type and FT difficulty) and13 presentation (six volume channels, replay/camera-cut frequency, ball-handler labels, FT help/routines, shot feedback, pick-and-roll overlay). Memory captures plus original handlers and English localization tables retained in options-map-30.json/options-value-labels-30.json. Only active config changes; profile/options captures unchanged. All temporary values restored; original menu asked whether to save after the game and No was selected. Dirty flag1E85A94 observed, exact setter not established. Screenshot shot-feedback-on-30.png actually shows Grade Only, not binary On; ft-difficulty49-30.png actually shows45. Correct values retained in capture/report names.
  • All562 bounded original handler cases pass with no mocked callees, active-game branch, range/wrap/clamp and neighbor preservation. These prove handler behavior, not all downstream effects. NBA Rules inventory screenshots saved; rules were not changed. Other menu groups/presets still unfinished.
  • Development31/private ABI7 implements option.set and options/options_catalog in GET /v1/settings and options in snapshots/deltas.20 named settings, integer menu values/choice labels, range/step checks, leased/idempotent/same-run+period and frozen paused phase10 gate; original handlers execute on game thread. Current-game scope only, explicit profile save not implemented. Unknown/private addresses not exposed. Public capability is experimental. -198 broker tests pass Mac/Windows. Native367 options mailbox cases and2,242 slider regression cases pass;27 schemas validate. MSVC19.51 /W4 /WX research31 DLL SHA87d9cc25c634a2a5c0157c4cec978280766ae00518a24795e49970064df2e16d. No live option write claim yet. Original-handler tests synthetic; no SEH unwind test. Source archives/hashes retained.
  • Run30 HTTP capture stopped withSIGINT;13,280 snapshots,13,278 event pages/settings response validate. Unbound fixture ended deliberately Q2, no full-game/result claim. Normal game exit, broker5124 identity-guarded stop, closed saves/SQLite files archived remotely logs/api-engine-30/closed-state. Installed31 into working copy only; game2636 launched20:01:43Z, broker11560, new run076f52011f1fb92503a326e9bbead44f. Bounded HTTP31 capture active; live option verification next. Stable pre-session adapter/saves remain backed up; original corpus unchanged.

Twenty general controls verified live31

  • All20 options passed public HTTP original-handler writes/readback, identical duplicate receipt, stale-preimage rejection, restoration and whole-options equality in run076f52011f1fb92503a326e9bbead44f. live-options-roundtrip-31.json. Separate deliberate20-value test independently matched every value in original Gameplay/Presentation menus; screenshots api-gameplay-/api-presentation--31.png. All20 restored through public API and restored Presentation UI saved. ui-options-set-31.json and ui-options-restore-31.json.
  • Current-game writes only; persistence and all downstream gameplay effects remain unverified. Shot Feedback appears gray with Real Player% shooting; changing stored value does not establish active effect. Other setting groups/presets remain unfinished. Catalog verification updated locally after packaged31, so running broker retains older pending-verification text until redeployment. Original corpus untouched.

Nineteen NBA-rule switches recovered; development32 deployed for live tests

  • Isolated original-menu changes mapped all19 NBA Rules toggles; original handlers pass76 bounded cases without mocked callees. rules-map-31.json, rules-original-verification-31.json. All19 restored On; active config exactly matches baseline. Misnamed initial goaltending/double-dribble/reaching screenshots are superseded by confirmed screenshots. Controller inventory has13 rows; two temporary changes localized Defensive Assist float/options+7C2C and Automatic Shot Contest/options+7C24, then byte-exact options restoration. Other controller setters and camera/video controls remain unfinished.
  • Original menu exit5369D0 invokes virtual shot-clock reset only for off→on with enabled manager/active config. Verified live dispatch4121B0→89F5E0. API preserves that reset instead of writing the flag alone. ABI8 appends19 rule values, all existing offsets retained; option.set supports39 controls with original handler, pause/run/period/preimage/lease guards. Manager/dispatch mismatch rejects before mutation. Current-game scope; no persistence guarantee. -199 Python tests pass Mac/Windows;709 compiled option cases,2,242 slider regression cases and48 timer re-enable cases pass. Timer tests execute original reset/helper/refresh; presentation notification and downstream full-reset callback mocked. MSVC19.51/W4/WX research32 DLL SHAfac3f1a467b945661a5e68ed6d80871d056352e36e3f7bd5b506c50ad240f083. Package32a fixes one test fixture missing player_count; initial failed test log retained. No live32 or SEH-unwind claim yet.
  • Run31 HTTP closed bySIGINT:10,489 snapshots/10,488 event pages/settings response pass27 schemas. Normal game exit and closed saves/SQLite archive verified; broker11560 identity-guarded stop. Installed32 only in Dell working copy; game7688 launched20:33:49Z, broker32aPID12512. First HTTP response stale run31 retained; new ABI8 run e3ee62e66333d15f017ae0f125afba6d pinned separately. Bounded HTTP32 recorder started. Original corpus unchanged; pre-session DLL/saves still backed up, not restored.

Development32 live rule-switch round trips

  • Run e3ee62e66333d15f017ae0f125afba6d passed all39 general/rule option public HTTP commands, duplicate identity, stale-preimage rejection and restoration with whole-options equality. live-options-roundtrip-32.json. Shot-clock off→on invoked original reset16.35472298→24 seconds; game clock remained112.35467529, paused phase10. Unbound CPU fixture, not a full-match result.
  • Independent API all19-off test matched every original NBA Rules menu row; screenshots api-rules-top32/middle32/middle2-32/bottom32.png. All19 restored via public API. Runtime scope; all downstream enforcement effects, persistence, presets/controller/camera/video remain unfinished. Catalog verification updated locally; running32a metadata remains older until next deployment.

Controller preferences recovered32; development33 verification in progress

  • All13 Controller Settings rows mapped by isolated original-menu changes and restored byte-exactly in the captured profile/options regions. Correct owner is [1F207A8]->350CAC +28, profile0, player stride5C. Prior options+7C24/+7C2C observations were an oversized CA8 read spilling into the adjacent CAC allocation (difference7B98), not options fields. Original accessorA09FD0 and58CC20 initialization loop establish ten stored player slots. UI mapping is Player1; stored slots are not roster players or proof of connected controllers.
  • All13 original setters execute successfully after extending the protected-code capture through217BFFF. Initial trace32 lacked pages containing three setter branches, exhausted its instruction budget, and is retained as failed evidence. Trace32a and520 all-value/all-ten-slot cases return with correct stack/register preservation, one expected write and byte-exact neighbor preservation, without mocked callees. controller-map32.json, controller-original-verification32.json, protected-controller32-capture.json. Protected pages217C000 onward failed reads and were not used. No downstream gameplay/input-device or persistence claim.
  • Menu ranges/choices include preferred position0..5, Pro Stick0..2, right-stick passing0=Off/1=Directional/2=Zone, auto-contest0=Manual/1=Intense-D/2=Always, defensive assist0..100 in5-unit steps, other switches/orientations0..1. Saved per-choice screenshots and memory captures. controller-contest-wrap-32.png actually still shows Always; not wrap proof. controller-position-upper-32.png shows None after Center. All temporary values restored, verified settings-diff-baseline-controller-range-restored-32.json (only unrelated menu dirty flag differs in global capture).
  • Development33 source adds append-only ABI9(9252bytes), controller snapshot/catalog and controller.set with stored player_slot0..9, named setting/value/preimage plus existing identity/lease/run/period/frozen-pause guards. Uses original setters on game thread.202 Python tests pass locally; MSVC/W4/WX build succeeds SHA256f9c727d72852eb33ff79b186fbb49f37778cf411a24a64b3317f74036617b8e8.28 schemas validate. Compiled mailbox/Windows broker/live tests pending at this entry;33 not installed.32 remains paused unbound. Camera/video/presets/control setup/coaching and foul/legal-ball follow-ups remain unfinished.

Controller development33 live verification complete

  • Installed research33 DLL SHA256 f9c727d72852eb33ff79b186fbb49f37778cf411a24a64b3317f74036617b8e8 into the Dell working copy; game4992, broker10040, run58e4034d683f9489aa88c3c35717ccac, ABI9. Run32 closed normally with saved-state archive;8,822 snapshots/8,821 event pages/settings passed28 schemas. First33 launch response was stale and retained; new run separately pinned.
  • All130 controller setting/slot combinations pass live HTTP original-setter write/readback, duplicate identity, stale-preimage rejection and whole-bank restoration (live-controllers-roundtrip-33.json). Separate all13 Player1 changes match original UI (api-controller-top33.png, api-controller-middle33.png, api-controller-bottom33.png); all13 restored through API (ui-controllers-restore-33.json). The open menu caches displayed values until reopened; api-controller-restored33.png was captured before reopening and still shows temporary values, so it is not UI restoration proof. Public snapshots confirm restoration.
  • Unbound paused CPU fixture Q1 105.292915 seconds; zero adapter errors, no full-match claim. Ten stored slots do not establish ten connected devices or all gameplay/input effects. Disk persistence remains unimplemented. Local capability text updated after packaged33, so running broker retains older pending text until redeployment. Camera/video/presets/control bindings/coaching and foul/legal-ball work remain unfinished.

All 26 engine camera descriptors exposed (development33b)

  • User explicitly requested every camera, including internal types. Recovered26 original descriptors at102A480/stride30h and localized names from the archived English resource. Protected next/previous selectors wrap at25; the normal exhibition menu exposes17. Public GET /v1/settings.cameras_catalog includes all26 with stable IDs, six control descriptors each, original defaults/ranges and configurability. Nine additional types: Turbo, Showtime, Dunk Cam, Broadcast Dynamic, Drill High, Drill2K, Bench, Horse, Training Camp. Private engine indices/addresses are omitted. Original defaults are not runtime observations.
  • camera-descriptors33.json, camera-map33.json, camera-functions33.json/.txt preserve attribution, hashes, addresses and UI comparison evidence. Original951A00/951B60 handlers pass1,348 bounded cases covering all26 types, range wrapping, unsupported-control no-ops, neighboring table preservation and invalidation flag. Input ownership, sound, menu highlighting and downstream presentation reset are mocked; this is not renderer/activation proof. Temporary camera UI changes restored to Broadcast Stadium/reverse Off; final table equals earliest full-table capture except Generic Zoom6→5 (the first full capture occurred after its temporary zoom change). Save-profile prompt was declined.
  • Development33b is a broker-only update:203 Python tests pass on both Mac and Windows. DLL/ABI9 and game4992 remain unchanged. Broker10040 was identity-checked and stopped; closed SQLite files and hashes archived on Dell under logs/api-engine-33/broker-closed-state. Broker33bPID10200 serves the same game run58e4034d683f9489aa88c3c35717ccac. Live authenticated HTTP verifies26 unique entries,156 control descriptors, all nine hidden entries, schema validity and explicit unsupported activation (live-camera-catalog-33b.json). No camera activation, current-camera readback or camera-setting write command is implemented yet; catalog availability must not be described as camera control.
  • HTTP33 recorder was stopped with SIGINT before broker replacement; 8,708 snapshots,8,708 event pages and the live33b settings response pass29 schemas (schema-validation-33b.json). Video settings inventory/baseline was captured read-only; no video changes were made. Remaining settings groups, camera activation/runtime controls, foul/legal-ball and timeout work are still open. Original corpus untouched; stable pre-session DLL/saves backups remain unrestored.

Timeout and five-second inbound evidence34; camera-control development34

  • Continued the user's authorized remaining API work. Live33/run58e4034d683f9489aa88c3c35717ccac fixture34 collected7,970 sequential context/HTTP samples, zero failed RPM reads;1,676 private records and label/property requests archived in analysis/api-engine/live34. These reads are sequential, not atomic. Controlled Spurs full timeout UI matches phase17, away timeouts6→5, frozen game clock81.6412. Recorded17→14 free-throw return.618 timeout samples include kind1 and kind2, countdown0..60; kind2 remains unnamed. RustDesk screenshot latency prevents exact UI timer parity. Controller temporarily assigned Spurs for timeout/free-throw/idle violation tests, then restoredCPU before exit. This is a partial unbound fixture, not complete-game/export regression.
  • Four category12 kind8 records co-occur with original 5-Sec Violation localization property/formatter requests reason20. Original79D360 executes in8 bounded actor-side/alignment cases with expected kind8, input actor, turnover subtype7 and phase18; upstream timer/detection and downstream effects mocked. Original8C7EF0 timeout entry passes96 normal20/60-second branches, two teams, phases8/10/14, alignment and mocked eligibility refusal. Exact files/hashes/mocks retained. Public presentation now names timeout; kind8 named five_second_inbound_violation. These do not establish legal live/dead ball.
  • ABI10 append-only(9952bytes) adds runtime configuration for26 cameras, timeout team/type/countdown, and guarded camera.select/camera.set. Selection limited17 ordinary exhibition types with original eligibility query; all9 internal types remain catalog/read-only. Commands require pausedphase10,750ms frozen clock, nonreplay, Player1 input ownership, camera menu closed, exact preimage/run/period, lease/expiry/idempotency. Selection uses original951670 sequence without UI widget writes; controls use inspected descriptor mutation and original boolean invalidation. Runtime only, no disk persistence guarantee. -207 Python tests pass Mac/Windows;31schemas valid. New compiled camera command cases3,094 pass with documented mode/input/renderer mocks and original selection storage; existing2,740 controller,709 option,2,242 slider compiled cases pass on34. These are not live camera/renderer proof. Initial old unknown-kind8 test failed as expected after naming; updated to recorded34 fixture. Timeout fixture originally assumed kind1 throughout; observed kind2 transition retained and expectation corrected, not falsely named.
  • Research34 DLL SHA62ba0d046faa40d012ee6ec1bfb58d60da63fd2041b451235cd76db47ce0f78b builtMSVC19.51 /W4/WX/O2/MT, installed only in Dell working copy. Old fixture deliberately quitQ4~95s then game exited normally; broker10200 identity-guarded stopped; closed SQLite/saves archive logs/api-engine-34/closed-state. New game11828 launched21:59:31Z, broker34PID5148. Live34 camera/timeout checks pending. Original corpus unchanged; stable pre-session DLL/saves backups still unrestored.

Development34 live camera and timeout verification; final regression underway

  • All17 supported camera selections and63 configurable camera/control pairs pass live public command/readback, identical duplicate receipt, stale-preimage refusal and whole-bank restoration in run c8dad432193f882a434d8bf7aa4dd3de. live-camera-roundtrip34.json. Independent2K zoom4/height9/keyZoomOn/reverseOn/autoFlipOff/fixedHeightOff matches original menu; rendered2K view saved and all six values plus original Broadcast Stadium restored. Nine internal types stay catalog/runtime-read only. This is not visual certification of every camera effect.
  • Public timeout fixture called with ordinary PageUp after temporary keyboard assignment to Spurs atQ4 61.1249046s, score16–15. UI shows SPURS TIMEOUT.738 retained timeout samples identify away team, fixed game clock, countdown and kindnull/full;17→14 return verified. CPU assignment restored before free throws resumed. timeout-public-validation34.json; standalone timeout-public-before34.json was captured after entry despite its filename. Initial assumption of immediate full-pool decrement failed: actual late-Q4 short pool1→0 while full remained1, and context later reported full/60seconds. Documented context kind separately from charged allowance. No private clock/stat writes.
  • Bounded ball-candidate analysis:7,970 sequential RPM/HTTP observations; candidate1DEE604 overlaps play/free-throw/stoppage/timeout, and offense/defense roots persist through null physical holder. Original8BCA60 includes inbound placement/direction/late-clock logic. ball-limits34.json explicitly declines legal possession/live/dead claims.
  • Added API-REMAINING.md with concrete skipped blockers per user authorization: legal ball state, remaining event/actor meanings, unmapped presentation subsegments, internal camera activation, video apply/device recreation, presets, physical input bindings, coaching, explicit settings serialization, launch/checkpoint and hot-swap. Capability discovery marks unavailable paths; no guessed successes. Rules redesign/block live reversal remain deferred.
  • Broker34a metadata/schema/docs align with verified scope.207 Python tests pass Mac and Windows (python-tests34a.log, stage-test-34a.log); DLL remains exact research34. Archived natural double-OT17b records replay through current scoring module with identical reconciled period splits,27 point records; this is replay, not a newly played OT fixture. SSE reconnect/HTTP parity passes on running34. Initial no-cursor request returns expected retention409; test resynchronizes at advertised cursor. Newest combined complete game, final export/restart and package checks remain underway at this entry.

Development34b final API disposition and packaged verification

  • Latest combined native34 game finished Spurs28–Heat23 in first overtime (regulation22–22). Raw final period6 advances at the end and does not mean second overtime; a transient commentary error was corrected against the point-event ledger and original final UI. All3,260 source records after binding boundary43 through3303 are retained,336 player-counter deltas and team-only turnover deltas reconcile, external actors match, one immutable final result, zero adapter errors/capture flags/faults. Binding began0.1282s after opening tip: whole-match-event completeness remains false. Camera tests paused/restored and one ordinary keyboard timeout called; no score/clock patches. live-record-validation34.json, live-34-observed-final.json, live-34-final-ui.png. -31 public schemas validate10,636 captured snapshots,10,635 event pages, final match/result/scoring ledger, settings and14 UI command receipts. Initial HTTP line1 retention409 preceded binding and resynchronized; no bound records missing. Earlier natural double-OT17b fixture also replays exactly through current scoring logic. Native34 archive has22 source/build files byte-identical to workspace; unlike research33 it has no private localization observer. Earlier33 localization evidence remains attributed separately.
  • Broker34→34a restart preserved exact result, consumer acknowledgement and independent consumer delivery; fixed test script's wrong revision lookup to result_revision before the action. At finished-game SSE, a cursor at latest naturally produced no event; test changed to replay a known retained record rather than wait for nonexistent activity. A session500 and Windows10053 disconnect logs prompted further work. Capability queries were outside the engine lock; an unlocked concurrent local probe exitedSIGBUS138 (not definitive Windows root cause).34b serializes those reads and catches ConnectionAbortedError without sending a second response.209 tests pass Mac/Windows including both regressions;16,000 concurrent capability queries with1,000 ingests pass. Live34b restart and exact SSE/HTTP replay parity pass. Native DLL unchanged.
  • Local experimental package build/openhoops-api-v0.2.0-dev34b.zip SHA2564f2bd9db09f8d33522662b136fb0d940db65cdd7472a019de201c7a51cd184ca contains exact native34 DLL/source, broker34b, schemas/examples/docs/seed files.107 member hashes plus hash inventory/ZIP CRC verified locally and on Dell. Five installer cases pass: fresh, identical reinstall, supported upgrade/backed-up DLL, unrelated loader refusal, unsupported EXE refusal. No publishing, no game EXE or Python runtime bundled.
  • Completed regression game closed normally. Closed test saves archived remotely logs/api-engine-34/end-state, pre-session saves restored byte-for-byte from logs/api-engine-backup (receipt save-restore.json); native34 left installed with original stable DLL backup preserved. Fresh game9392/run09f0b4ab42a4f3a0495db3cf9e0c55c1 launches through packaged Start-API/broker9168. Intro/menu initially exposed only the stale previous snapshot, correctly not live; after loading exhibition, new-run live telemetry has zero adapter errors and no inherited match binding. Prior result/ack persist, old-run command refused,400 concurrent public capability queries pass. packaged-smoke34b.json. This is a short unbound pregame fixture, not a second complete game or settings-persistence proof.
  • Remaining disposition is explicit in API-REMAINING.md: legal possession/live-dead, remaining foul/violation meanings and actor roles, granular presentation, nine internal camera activations, video/presets/physical bindings/coaching and explicit disk persistence skipped with concrete recovery/verification blockers. Automatic roster/team launch, checkpoint control and asset hot-swap are future work. Rules redesign and live block-retraction proof remain deferred. Unknowns are not exported as confident booleans/names; full API scope is not claimed complete.

  • Final cleanup verified: short restart fixture quit before tip atQ1 6:00/0–0 (restored pre-session settings); game exited normally. Packaged broker marked its new-run sample stale, then broker9168 was identity-checked/stopped and closed SQLite/WAL archive retained under logs/api-engine-34/broker-final-closed34b. Database integrity is ok with one result revision forengine-api-34. Fresh-boot saves archived underrestart-end-state and all pre-session saves restored again with per-file hash equality (save-restore-final.json). No game/API listener remains. Native34 remains in the Dell working copy; stable pre-session DLL backup retained. SSH configuration and original corpus unchanged. Final supplemental package verification is build/openhoops-api-v0.2.0-dev34b-verification.json; package bytes remain exactly the tested4f2bd9... archive.

Pregame configuration development35: live command round trips

  • User requested external match workflow plus the choose-team Game Options settings. Keyboard3 opens that screen,1 returns. Eight settings recovered independently from original-menu changes: difficulty, speed, quarter minutes, fatigue, injuries, arena, home/away playbooks. Options accessorA09F10 owns the first five; A09FD0 setup record owns arena/team pointers and book IDs. Oversized options reads span the adjacent controller allocation; that overlap is explicitly not an options-field claim. Pregame fatigue/injuries use4B0B50/4B0AE0, different from active-game option fallback. Loaded roster supplies102 arena entries and69 books;45 type0 arenas and67 ordinary books writable, mode/unlock-dependent arenas and user books read-only. Game style code observed only; presets/VIP unsupported.
  • New append-only ABI11(45124bytes) captures preparation even when active-game snapshot is invalid. Existing4E0190 sampler runs in menus (previous stale-menu assumption disproved). GET /v1/preparation and guarded preparation.set require a fresh run, exact configuration revision/preimage, current lease, original-handler game-thread execution, expiry and readback. Availability is valid exhibition configuration with simulation inactive; not an assertion of the visible menu page or automatic launch support. Scope runtime-only. Automatic team/roster selection and launch remain unfinished. -292 bounded original-handler cases and80 compiled command cases pass. Compiled tests use captured roster/options and mock UTF conversion; not live rendering proof. Initial35 speed-loop test exhausted instruction budget;35a avoids converting entire catalogs inside each increment. MSVC19.51/W4/WX/O2/MT research35a DLL SHA256a3737b027190b46ba2374757559fb8e668e64de0fd65ae9d2a12a06c4ca413a0; public version0.2.0.dev35.227 Python tests pass Mac and Windows. Evidence in analysis/match-launch;32-schema contract added, live schema verification pending.
  • Prior34 game632 exited normally; first install attempt refused while game was still running. BackupDLL/saves in Dell logs/match-launch-35-backup; broker6552 stopped and closed state archived. New35a game12608, broker2948, run6eb2cab75ff84ea3a818d072eedbb040.212 live public command cases pass across all45 allowed arenas,67 home and67 away books, all5 difficulties/12 quarters, speed bounds, fatigue/injury switches, with duplicate receipts, changed-preimage refusal and final baseline values restored. This verifies runtime configuration, not loading every arena/playbook effects. live-roundtrip35.json.
  • Eight-setting fixture now selects All-Star/speed51/one-minute quarters/fatigueOff/injuriesOff/NewOrleansArena/Pelicans homebook/Suns awaybook. Test harness first used unsupported120s lease and was refused before writes; corrected to60s renewal. Fixture label lookup first omitted “Playbook” suffix; corrected. A follow-up used a sampled stale revision after acknowledged write and was correctly refused; now waits for public readback before next mutation. Current fixture not yet launched. No original corpus changes.

Development35 loaded-match verification and independent client

  • Original Game Options UI matches all eight API fixture values (api-options-top35.png, api-options-books35.png). Ordinary keyboard launch, CPU vs CPU, loads Spurs/Heat at New Orleans Arena with60-second quarters. Active-game options confirm All-Star/speed51/fatigueOff/injuriesOff; rendered court captured. BDE510 loading path copies selected books into runtime banks at1F205E8+side*DCh. Read-only verification finds PelicansID10/SunsID24, both220-byte records byte-identical to loaded roster entries, zero failed reads (live-loaded-books35.json). Selection/loading is proven; individual AI plays are not traced. Active simulation rejects pregame mutation with409 and null preparation configuration.
  • Existing compiled adapter checks pass unchanged semantics on new35a DLL:3,094 camera /2,740 controller /709 options /2,242 sliders.232 broker/client tests pass Mac and Windows (Windows12.478s).32 schemas valid;212 live preparation command/receipt pairs plus initial/final preparation responses validate.
  • Added independent public-API examples: prepare_match.py exports/validates/applies a roster-catalog-scoped settings plan; match_session.py uses explicit external roster mapping, terminal scoreboard and private SQLite commit-before-ACK result handling. They contain no executable addresses. Team/roster selection and match launch remain manual; no overlay or automatic launcher claim. New fixture bound atQ1 59.981361s, boundary41: earliest opening records predate binding, so whole-match-event completeness false. Sample terminal initially looked for pause at snapshot top-level and printed null; fixed to clocks.paused in saved source. Running initial sample log retains that display bug; underlying API snapshots have correct pause state. Final fixture/result still in progress at this entry.

Development35 final fixture, examples, package and cleanup complete

  • Configured fixture finished Spurs14–Heat6 in regulation. Independent match_session.py persisted exact broker result revision1 in its own SQLite database before ACK; separate validation process verifies that stored result, consumer ACK and every player/team total against the final snapshot. All5,370 live snapshots have zero adapter errors.5,901 saved snapshots,212 preparation commands/receipts, match/result/scoring ledger and two preparation responses pass32 schemas. BindingQ1 59.981361s/boundary41 still excludes opening activity; whole-match completeness false. demo-validation35.json, schema-validation35.json, game-final35.png. Validation first assumed result player entries contain adapter keys; corrected to compare their actual public external IDs. No export mismatch.
  • Added separate loopback browser scoreboard through public snapshot API, token remains in Python, foreignHost/Origin refused and stale/invalid scores cleared. Verified actual final14–6 against game UI, then cleared state on return to menus. This browser display was introduced at final; terminal client followed the full recorded match. It is not an in-game renderer replacement. scoreboard-final35-verified.png, scoreboard-cleared35.png. The first native screenshot cropped the browser's wider viewport; full-page capture is the actual proof. Initial final display said Paused because the game enters its postgame menu; corrected final-label precedence to Postgame and reverified.236 tests now pass Mac/Windows, including four HTTP display tests. Saved source includes prior terminal pause-path correction.
  • Public prepare_match.py applied the baseline plan after returning to menus, restoring all original values; five commands needed because arena/books had already reset during the normal return. Runtime-only scope remains. example-plan-restore35.json. Game12608 then exited normally.95 original save/cache files restored byte-for-byte from logs/match-launch-35-backup; changed test saves retained under logs/match-launch-35a-live/end-state. Broker2948 identity-checked/stopped; closed SQLite/WAL archive and hashes saved. Local browser test server stopped. cleanup35.json confirms no game/API listener, original EXE hash unchanged, native35a left installed. SSH configuration/original corpus unchanged.
  • Unpublished local package build/openhoops-api-v0.2.0-dev35.zip SHA25623884c2050d759e36a85fa9e6f6b358e86a9d8f2285a36a950a462da05130223 contains exact compiled35a native code/DLL, broker35, schemas and independent examples.109 member hashes and ZIP CRC pass locally and on Dell. Fresh install, identical reinstall, native34 upgrade/backup, unknown-loader refusal and unsupported-EXE refusal pass. Package source snapshot precedes this final documentation addendum; supplemental post-build verification is build/openhoops-api-v0.2.0-dev35-verification.json. No publication or game EXE/Python runtime bundling.
  • Scope handoff: pregame configuration and independent scoreboard/result examples are implemented. Team/roster selection and start still use original menu; automatic launch not implemented. Presets/VIP, arbitrary rules, earlier skipped legal-ball/event meanings remain explicit limits. Next useful integration milestone is a verified team/roster launch transaction with binding before tip, not broader incidental event hunting.

College-rules feasibility audit (research only)

  • User requested probable versus impractical college-rule assessment before implementation. Reviewed local community/tool catalog, Elan source, Sigil withdrawn Era panel, Blaze SDK, existing geometry/backcourt/bonus/FT/timeout tests and current API period assumptions. Saved COLLEGE-RULES-FEASIBILITY.md and analysis/college-rules-audit/manifest.json with30 pinned source/evidence hashes. No new live tests, game changes, package installs or release rebuilds.
  • No core request established impossible. Strong leads: original geometry/scoring predicate1,266 bounded cases; ten-second native call/label with controlled accelerated timer (not natural duration); foul threshold/reset/award paths plus natural default bonus; timeout entry96 bounded cases with eligibility mocked. One-and-one/arrow/full officiating and AI parity remain weakest areas. Existing current API explicitly assumes four-quarter presentation/scoring; two halves requires coordinated adapter/core changes.
  • Disposition is qualitative engineering judgment, not a promise or a hidden NCAA-mode claim. Archived binaries not all freshly disassembled. Recommended next proof targets are actual half lifecycle, one-and-one/bonus and arrow/administration. No implementation started. Original corpus and remote machine unchanged.

College research36: first guarded native candidate

  • User authorized implementation of remaining college rules; exclusions preserved in COLLEGE-RULES-IMPLEMENTATION.md. Foul-out numeric menu6→5 confirmed; recovered field/setters. Original runtime kind3 has contingent-FT miss/continuation branches; bounded checks support use for one-and-one but no natural proof yet.
  • Added compile-time and INI gated research adapter;1,066 bounded compiled/original instruction cases,9 code guards pass. MSVC19.51/W4/WX build SHA454fcdcf...41d. Hooks target half-end progression, fixedOT300sec,30secfullclock/20conditionalminimum,10secbackcourt,5foulout,defensive3sec/backtobasketOff,7/10bonus andOTcarry,geometry,late-madeclock,timeoutentryadvancement suppression. This is partial research, not full NCAA mode/API release.
  • Preserved baseline saves/DLL; game13576 exited normally. Researchgame14428/broker8532 launched in separate state; opening arena visibly10:00/30. Live fixture underway. Stable35API recorder still has quarter/bonus/geometry interpretations; no authoritative college export claim. No originals changed. Full details/limits/currentprocesses in implementation document.

College research36a/b: failed pregame gate, control, timeout bookkeeping

  • Enabled36 stalled in pregame; same DLL disabled and baseline saves restored reached natural CPU gameplay. Control screenshot and code/thread evidence retained.36a synchronizes active minutes with half duration;1,066 bounded cases pass, live fix not yet established. Screen Time blocked remote UI temporarily; user cleared it and RustDesk access now verified. Attract mode ran while unattended; separate controlled fixture now entering. Current36a game8480/broker4148; stable35 API semantics still unsuitable for authoritative college export. -36b built separately, not installed; SHA4c58a52f...eaace. Original timeout allocation/half/OT/entry paths plus compiled substitutions pass1,192 bounded cases/14 guards; earlier1,066 cases also pass.1full+3short, halftime1+2 cap, unused OT carry plus1short,30-second short duration. No TV scheduling yet. Harness initially omitted unrelated initialization helpers; added explicit mocks and recorded limitation. Original timeout legality and downstream phase/render behavior remain live gates.
  • Native arrow setting/held-ball path recovered; reverses in inbound setup callback, so exceptions/timing still need work. Lane timer uses an inset213.36cm center predicate; no guessed global width patch. Attribution/runtime hashes remain in source evidence and forthcoming milestone manifest. Original corpus/SSH/stable package preserved.

College36a live halves and final-decision failure;36e correction

  • Screen Time cleared; RustDesk verified. Controlled Spurs/Heat fixture in36a reached10:00 tip and first-half horn, went straight to original halftime at11–12, then second half600s with qualifying-foul reset. First-half made basket30.53s continued clock; second-half made basket23.7266s stopped through inbound. Both half clocks explicitly advanced to65s for boundary tests, foul sliders50→100. Not a full-length game. Attract-game events before boundary1880 excluded.95 baseline saves preserved.
  • Live failure: second-half ended20–19, but36a enteredOT300s instead of final. End-period increment hook ran after8BC690 completion decision, whose8BC6E4 predicate still required rawperiod>=4. Failure retained inhttp-live36a.jsonl/live-summary36a.json; no authoritative result exported. Stopped disposable fixture in erroneousOT25–23 and quit normally. Stable broker35 has incorrect college quarter/bonus/geometry interpretations; no college API claim. -36c collision-reset candidate used original full-clock near-end sentinel and would produce21 instead of20. NCAA2-11 explicit20 reset must reactivate near period end;36d jumps to89F614 notifications/store after loading20, bypassing sentinel.196 bounded reset/arrow cases pass; court-contact cause and arrow exception timing still require live proof.36c/d never installed.36d SHA7216248b9b564bb9e3c7febd7147ea9898f2aba09859634402a75eb8d6b89c12. -36e changes guarded8BC6EA immediate4→3 so original completion decision recognizes second half before period transition.2,016 stock/college bounded finish cases pass (tie/non-tie, pending, ball-state, readiness, raw1..7). Harness initially reused Unicorn translated cache across code mutation; explicitcache invalidation corrected harness, no game change. Existing1,066 core,1,192 timeout,196 reset/arrow cases pass. MSVC19.51/W4/WX build SHAe66ccd45544d5410a6111d9139dc86bd1a872fba41d10f8432b0991c8931db20. Live36e regression remains pending at this entry.
  • Outstanding: correct final live regression;20-minute fresh-start; full NCAA reset matrix; lane12ft/art; TV timeouts; natural one-and-one outcomes and5PFdisqualification; arrow exceptions; coordinated public college API/UI/export. No complete college-mode claim.

36e fresh launch and36f additional candidates

-36a normal menu Exit closed game window but leftPID8480 sleeping in original teardown (DA1AAD/DDBB21/DDBC1C/DDBD07/4E043C stack); noninvasive CDB evidence retained inshutdown-cdb36a.log. Identity-checked idle/windowless process stopped. First replacement launch correctly refused while old process remained; initial broker-start consequently failed because new log directory did not exist. Retried sequentially after cleanup; no concurrent game writes. Original stable broker state archived closed. -36e installed only in Dell reference working copy, PID15132/run3b79c052d8bce9b70eb69f524c58edb1, broker1468 separateapi-state-college36e. Baseline95saves restored; beforeDLL backed up before replacement. Fresh first exhibition (no attract mode) completed intro and natural tip at1200s/30; initial allowance1full+3short observed. gameplayscreenshotgameplay36e.png. This confirms fresh20-minute launch, not full20-minute duration. - Pausedphase10 at1171.68298s: public12foul sliders50→100, qualifyingcounters1DEE59C/5BC0→6 with exe/DLL/PID, pause,phase,period,clock/preimage/readback guards. Explicit synthetic test setup; subsequent fouls/FT administration remain engine-driven. Clock advanced to240s throughpublicAPI. No score changes, no bound final export. Logsrecordexactmutations. Natural seventh fouls so far shootingand-one (kind1), not one-and-one evidence. -36f candidate (not installed): replace89F680elapsed helper to map raw1/3tohalves and fixed300sOT, respect1DEE5F8 completed-period transition; original single-periodmode retained. Patch onlybonusUIcall967F94 to7; existing9B0CE0/9B0D00 still govern10/no-late2.504bounded elapsed/x87/bonus-getter cases,1,066core,1,192timeout,196reset/arrow pass. SHA7ce2e8712f0ca33963daa9a0e2b2d57f2513214342ae236943421c9092959296. Native consumer integration and rendered bonus label pending. Existing BONUSlabel cannot distinguish one-and-one/doublebonus; publicAPI adaptation stillpending.

Research36e live final regression and restoration

  • live-validation36e.json and validate_live36e.py pin5528 valid samples, zero adapter errors/capture faults, correct final Heat12–Spurs10, and no false overtime. Closed trace SHA256e2a29ea5551d24ee5f86ad801c0f6d97220244e130b2976fe9ff65ece70217d9. Initial source858; halftime5283; second half5989; final8187. final36e.png confirms the final UI. halftime36e.png is a transition logo, not scoreboard evidence.
  • Fresh20-minute start used1200/30. Halftime Spurs10–Heat9 led to1200 seconds and both qualifying-foul counters0. Initial timeouts1full+3short became1full+2short at halftime. First-half clock fixture240s; second-half65s;12 foul sliders100 and paused qualifying counters seeded0→6. No scores were edited. Seventh fouls were shooting and-one kind1, so no live one-and-one verification. Observed20-second resets include one at13.853s remaining; independent contact/reset-cause classification remains pending. No college final export was bound or asserted.
  • Normal Exit closed the window but left15132 running. Noninvasive shutdown-cdb36e.log shows the main thread waiting through DA1D22/E0BE06/DBACCF/D967D6/DDBD4D/4E043C and a graphics worker in igd9trinity32/d3d9. Stack unwinding warns frames may be wrong; causation is not established. Initial CPU-idle cleanup guard refused; this failure is retained. Separate path/hash/windowless/evidence-guarded cleanup explicitly terminated the test process. Do not describe it as a normal process exit or as proven college-hook failure.
  • Broker1468 stopped; closed state and test saves archived. Stable35a SHAa3737b027190b46ba2374757559fb8e668e64de0fd65ae9d2a12a06c4ca413a0 restored, original executable SHA7cb5fdaa30586558a3146dcf9023880b1cceeaabfe0f92f967f461c4644f3704 unchanged, all95 baseline save hashes matched. Receipt2026-10-14T03:10:14Z reports zero game processes/listeners. Stable package and original corpus preserved.
  • Next useful gate: deterministic paused fixture for non-shooting seventh foul and both one-and-one outcomes, then valid tied/repeated OT and remaining reset policy. Keep research36f separate until its elapsed-time consumers and bonus display pass live verification; do not expose college capabilities as complete before API/export semantics are adapted.

Research36g — configurable half lengths and scaled overtime

User requested shortened-game overtime policy: half lengths1–4min→OT1min,5–8→2,9–12→3,13–16→4,17–20→5. This is an OpenHoops custom scaling policy, not a claim that NCAA regulation overtime scales. HalfMinutes now accepts every integer1..20. One compiled helper supplies OT duration and repeated-OT elapsed-time calculation. Invalid unsigned duration inputs leave configuration unchanged and fail initialization.

MSVC19.51/W4/WX build SHA532ded606bb9090e206094a486ae582535848bf26fe4d9e3298e38a6f3ad4e53. Compiled/original bounded checks:1,066 core/15 guards,1,320 duration/elapsed/bonus cases,1,192 timeout/14 guards,196 reset/arrow cases. The first configuration test mistakenly compared the fullEAX for a bool ABI return; corrected to inspectAL. Runtime code was unchanged by this harness fix. All20 half lengths, boundary groups, raw1..9 elapsed and transition states, and invalid0/21/999/UINT_MAX exercised. Downstream full gameplay still requires live verification.

Live fixture36g started2026-10-14T03:14:59Z in Dell reference copy, game14412/broker13948, separateapi-state-college36g, runac10f05b9f0913050dadf8a8a45f243c. Config10-minute halves, expected3-minute OT. Stable DLL/saves backed up before install. No original corpus/package changed. Work underway; do not treat this entry as completion of college mode.

Research36g live bonus and36h public profile candidate

-36g natural non-shooting foul at580.523s with synthetic qualifier seed6 produced kind3, total2/remaining2 (source106). First make retained one attempt; subsequent schedule source132; second miss cleared remaining and returned to play. Another kind3 at213.620s earned and made both attempts. This verifies first-make continuation under live engine administration, not first-miss cancellation. Foul sliders were configured to favor non-shooting fouls; later loose-ball/over-back100 added. Neither scoring nor FT outcomes edited during these sequences. BONUS displayed for Spurs after Miami reached7 while Miami with opponent6 had noBONUS; bonus-label36g.png saved. -36g first-half clock was advanced at a paused play checkpoint to0.1s for lifecycle testing. API receipt correctly applied float32 0.10000000149; initial harness exact Python-float comparison failed and was corrected to tolerance1e-5. Saved receipt retains true value. Earlier attempt refused because paused phase8 inbound, not phase10; resumed naturally before applying. Halftime reached11–4, raw3/phase12,1full+2short allowances. FurtherOT test underway; no full-length-game or first-miss claim. -36h builds separately, not installed at this entry. Native privateABI12 appends24-byte RuleProfile (Shared45148), preserving command/event offsets andABI1–11 broker support. Declares active college/disabled original configuration, half/OT duration, elapsed helper; API geometry captures installed college constants. Public additive fields: logical half/OT, raw1/3 half score buckets,7/10 bonus description, scopedkind3 one-and-one/kind4 doublebonus, experimental capability, profile metadata and unverified-rule flag in exports. Existing raw IDs/buckets preserved. Scoring ledger omits phantom raw2/4 and exposes logical labels; original-game behavior unchanged. -247 Python tests pass on Mac and Windows;5 synthetic public schema checks pass;36h native1066core/15guards,1320elapsed/bonus,1192timeout/14guards,196reset/arrow pass. DLL SHA885d856ee6bf49f4b2eb28734e72547aba7a2bfa73ddf874fc6c2575672f89ae. Windows first test command used embedded Python’s ignoredPYTHONPATH, loading a stale installed module and failing; explicit sys.path inserted in test-api36h.ps1, then all247 passed. No claim from failed harness. Current live36g remains ABI11/stable35 broker;36h deployment/live profile verification pending.

Research36g repeated overtime and36h live API launch

  • User OT policy verified in compiled code for every half length1..20. In the live10-minute fixture, raw5 and raw6 both initialized180seconds; qualifying-foul counters8/9 carried through bothOTs, and short timeouts increased2→3→4 while full remained1. overtime-live36g.json pins source10032/11328. These are controlled lifecycle tests: team aggregate scores were synthetically tied and clocks advanced to0.1s; player/period stats were not reconciled. No final result was bound/exported. Do not describe this as a natural tied-game verification.
  • Closed36g trace has9060valid samples,312882768bytes,SHA2564cdee5c1b95473095738d489cb99b2950461e0cc733b973b3fb42c07f693daaa. Original code administered both first-make one-and-one continuations; first-miss cancellation remains a live gate. -36g Quit and application Exit completed normally (no remaining nba2k14 process); broker13948 stopped, test saves/state archived, stable35a and all95 baseline saves restored. cleanup-receipt36g.json records zero game processes/listeners and unchanged executable hash at2026-10-14T03:44:43Z. -36h now installed only in Dell working reference copy: game2348,broker5124,run5d97079c311fd7c3566f391b42a973b2, separateapi-state-college36h, HalfMinutes=1. DLL885d856ee6bf49f4b2eb28734e72547aba7a2bfa73ddf874fc6c2575672f89ae. PublicABI12 observed. Fresh CPU exhibition to validate minimum duration and public logical periods/final result is underway. No release or complete-college claim.

Research36h natural minimum-duration game and live public export

  • Fresh1-minute halves ran from tip through halftime and a natural4–1 Spurs final without clock, score, foul-counter, or slider mutations. API12 identified both logical halves and120elapsed seconds. Original postgame progressed fromphase12 to19 normally; do not relax the existing phase19 finalization gate. Native UI still says1st/3rd; public API labels half1/2. final36h.png is the visual final. -4280captured snapshots passed current OpenAPI schema,3242valid game samples, zero adapter errors/capture faults. Closed120455421-byte trace SHA256829a604d1798df5abd71b001ee27ae803566315e83b76fe7e946b8accb33c8f6. public-validation36h.json records phases/mappings; http-live36h-closed.json pins closed trace.
  • Bindingcollege36h-natural-minimum finalized exactly one result; all additive player/team box scores reconciled. Scoring ledger half1away2/home1,half2away2/home0, no phantomquarters/issues. Result schema, immutable redelivery, repeated acknowledgement, independent secondconsumer delivery passed in verify_delivery36h.py/delivery-verification36h.json. This proves one regulation college export, not all overtime/foul/timeout exports or full rules. Broad profile verification flags deliberately remainfalse. -36h exited normally; broker5124 stopped, closed state/test saves archived, stable35a and95baseline save hashes restored (cleanup-receipt36h.json,03:56:03Z). New36h2 sameDLL test game14240/broker13420,10-minute halves,separateapi-state-college36h2, targets first-miss one-and-one. No original corpus orstable35release changes.
  • TV-timeout investigation: captured B919A0 is a mode predicate, B919E0 stores a presentation field, and7A0E40 performs substantial presentation/player setup. Kind2alone is insufficient to create an uncharged media break in quickgame; retain scoped eligibility/charge handling as unfinished. Ghidra12.1.4 read-only export and exactcaptured text/rdata hashes in ghidra-media-timeout. No TV behavior installed.

Research36i candidate and36h2 five-foul live check

-36i built separately, not installed: DLL SHA2566e1c658c1f4dd3d5adad43d2bb2af90a07562729a4dfb8254f7dedbebdbb60d4. Guarded pointer operand8A1EA0 redirects offensive-three-second player-center width from213.36cm to152.4cm. This retains the original inferred one-foot inset for a12ft painted lane; it is not a literal foot-volume implementation. Shared constant, timer, eligibility, and dispatch remain unchanged.840 bounded lane cases exercise both directions and boundaries; first harness incorrectly used a decimal literal instead of the original captured float, corrected with no runtime-code change. Live violation/art/FT-lineup gates remain open. -36i bounded checks:1,066core/16guards,1,320duration/elapsed/bonus,1,192timeouts/14guards,196reset/arrow,88originalfoulcache/disqualification/rotation cases pass. Original6D58F0 copies PF to packed cache and sets actor+1280bit0x2 at5;6C51F0 rotation predicate uses5. Mode5/6/7 original exceptions retained. No original corpus/stable package changes. - API presentation capability scope now follows declared original/college profile;248 tests pass on Mac and Windows. Later Python revision is staged separately in college36i-api/api, whereas initial college-research36i.zip contains the earlier Python revision. Do not confuse these packages when deploying. NativeABI12 unchanged. -36h2 test fixture: qualifying counters6/6,18 public foul/presentation settings changed with before/receipt/after record. Paused phase10 first-half all10 on-court PF counters set to4, preserving neighboring packed data; no disqualification flag or foul-cache writes. At212.4596s, the next natural foul gave Dwyane Wade(home:1) PF5, replaced him off court, and awarded Tim Duncan(away:3) a one-and-one. Read-only04:17:12UTC probe confirms packedPF5,flags131(bit0x2set),active threshold5. This is controlled synthetic setup followed by live engine administration; no legitimate final export is bound. First attempt made and continued; first-miss cancellation remains pending. Evidence: fixture-foul-out36h2.ps1/.log, read-foul-flags36h2.ps1/.log, active http-live36h2.jsonl (hash only after close).

Research36h2 closure;36j scoped media-entry prototype

36h2 ended after the first half12–15 without a final binding. Wade PF4→5 source9523, off-court9567; original flags confirm disqualified, not merely a coach substitution. Other one-and-one first shots made; first-miss proof remains open. Closed trace313650514bytes/21402validJSONlines/SHA256dfc2bf12968b2ca1ab1a7e8556c9e8d06c5614daa6c99afe427d3b76c61c556c. Normal game exit; cleanup04:24:38UTC restored95save hashes/stable35a,0processes/listeners,originalEXE unchanged.

36j SHA25642ee320daae3fff33325cfcfa25bc540c95750f2eab9904c55f94cb8ebb5d525 adds a research-only MediaEntryProbe=1(one-shot, defaultoff). On first transition into FTphase14 before any attempt, original8C7EF0 is called withkind2. Only its guarded eligibility call and six mode-predicate callsites use wrappers; scope is limited to this synchronous invocation and cleared with __finally. Ordinary callers forward to originals. No global mode switch, team allowance writes, or live-ball forced stop.976 compiled-wrapper/originalentry cases pass (including empty timeout pools, FTresume flag, aligned stack variants);1192ordinary timeout,1066core/17guards,1320duration,840lane cases pass;248APItests pass. Presentation and phase consumers are mocked in bounded tests; live resume is not established yet. This is an entry primitive, NOT TV scheduling/merging/injury policy.

36j fresh live fixture game13056/broker2156,10-minute halves, isolatedapi-state-college36j,04:25:07UTC. Includes36i lane predicate and updated Python capability scope. Source, build, tests, exact original bytes/hashes retained; stable35package/originalcorpus unchanged. Pending liveFT→unchargedtimeout→sameFT continuation, then media scheduling and remaining rules.

Research36j live refusal and36k deferred probe

36j reached natural FTphase14 source2792 at504.5084s with the presentation/replay flag true. The edge-only probe refused and never reconsidered after flag cleared. No timeoutphase17 occurred; this is a failed live entry gate, not proof of working TV timeouts. media-probe-refusal36j.json preserves6 FT transitions.18publicsliders/options changed; no clock/score/foul-counter writes. Normal Quit/Exit;04:36:27UTC cleanup restored stable35a and95baseline saves,originalEXE unchanged,0gameprocesses/listeners.

36k candidate SHA256d8c00240c4229e1a14821c371142369af0a0d297334c3092acb39162cea36428 arms on firstFTphase, waits for presentation/replay and pause toclear, same shooter with unchangedFTA and remaining==total, and ball physically attached to shooter. Rejects flight/credited attempt and other phases.33bounded dispatch cases include deferral, flight, first-attempt changes and repeated-frame suppression;976scopedentry/1192ordinarytimeouts,1066core,1320duration,840lane pass. Original entry still mocked for dispatch tests; actual presentation/resumption requires liveproof.

Fresh36k game4148 in separateapi-state-college36k starts04:36:41UTC,10-minute halves,MediaEntryProbe=1. No complete media scheduler/college-release claim. Public timeoutkind2 remains null until a separately verified media declaration is added; never reinterpret all originalkind2timeouts as media.

Research36k live media resumption;36l scheduled-break candidate

36k one-shot entry passed a natural two-shot foul sequence: source2290 phase14 at587.5434s, TimDuncan away:3,2remaining/2total,FTA0; source2291 phase17 uncharged60s; source2827 resumed the same pending FT award/shooter/clock. Both teams retained1full+3short. Initial validator failed because phase10 at3042 is final-shot release before stat credit; second FTA/FTM arrived3051, then running play. Corrected validator waits for settled credit and running play; engine code unchanged. live-media36k.json retains release and settled observations plus explicit harness correction. No adapter errors through this path. This establishes one interrupted FT sequence, not scheduled TV or inbound behavior.

After that proof, disposable fixture at04:50:29UTC seeded qualifying counters2/2→6/6 at paused phase10 clock381.5815, and18public settings changed to favor nonshooting fouls. No subsequent one-and-one was observed before voluntary quit at108s firsthalf; first-miss gate remains open. No score/clock writes or final binding. Normal application exit;04:58:17UTC cleanup restored stable35a and95save hashes,0gameprocesses/listeners,originalEXE unchanged. Closed trace hash/linecount in http-live36k-closed.json.

36l built separately: DLLfba4dda9d2156ddb2f611399db60ea569577154888ab07bbd59a6f639980d61c,MSVC19.51/W4/WX. Adds opt-inMediaTimeouts=3/4 (default0; mutually exclusive with one-shot probe). Portable scheduler implements NCAA2026-27 5-14.10 three/four marks, inclusive30second team-timeout merge, firstsecondhalf/OTteamtimeout conversion separately from scheduled marks, onceperstoppage and resetpermatch/period. Shortened halves proportionally space marks, an OpenHoops custom policy;20minutes exactly15/10/5 or16/12/8/4. Original ordinary teamtimeout charge is preserved; duration converted to60s. Automatic entry waits for stopped-clockphase8/14, clearedpresentation/pause, physicalholder; FT shooter/attempt guards retained. Engine integration still requires live inbound placement/possession/clock proof. Injuryrefund/replayclassification/mediaAPIprovenance notimplemented; do not claim full TV policy.

1,669 portable scheduling assertions and101compiled adapter cases passed; compiled original entry/presentation is mocked in adapter checks. Existing33probe,976entry,1192ordinarytimeout,1066core/17guards,1320duration,196rim/arrow,840lane cases pass. Stable35package/originalcorpus unchanged. Next live candidate uses1-minute halves to cover repeated scheduled breaks and halftime without clock edits.

Research36l natural9–4 final and inbound-duration failure;36n candidate

36l game4328/broker10040/run77a9d839c6ab6b5e01cb28306bac3486 completed natural1-minute halves9–4 (half1:5–2;half2:4–2), no score/clock/foul/slider mutations. Five automatic media entries preserved allowances and resumed play; only two FT-entry breaks passed60second duration. Three inbound-entry breaks exposed a zero timer in captured snapshots and ended early. live-media36l.json pins each sequence; this is a failed TV-duration gate, not complete TV support. Public originalkind2 remainsnull. Adapter errors0.

Binding occurred at2–0 (firstFT release), so full boxscores reconcile but scoring event ledger correctly reports partial, missing zero-score start. Initial copied36h full-ledger assertion failed; corrected test verifies explicit incomplete baseline,3–2 observed half1 ledger plus4–2half2,9–4fullboxscores, independent deliveries/idempotent acknowledgements. No API implementation change to hide this. final36l.png anddelivery-verification36l.json retained. Normal exit; cleanup05:17:12UTC restoredstable35a/95saves/0processes/listeners,unchangedEXE. Closedtrace metadata inhttp-live36l-closed.json.

Read-only original timer audit:8BD3C3 clears1DEE5E4 and8BD3CB sets completion1DEE61C during inbound initialization;8CC845→B91980 gates timeout shortening.46CB50 merely reads1527C80; its alternate duration is10seconds, NOT zero. Earlier hypothesis that46CB50 selected zero is disproved by captured constants and compiled-original tests. Failed harness assertion retained in task outputs, corrected coverage nowtests10/60branches (980entry cases). Private module read initially selected systemdinput8 by basename and returned irrelevantzero state; fullpath“reference-game/dinput8.dll” selection corrected it, confirming36lsecond-halfservedmask7. Ignore read-scheduler36l-retry.log's zero scheduler fields. FirstprivateCSV shotBits column read1DEE664 incorrectly; do not use as shot clock. Secondcaptureusesverified1DEE654. These observations are not coherent high-frequency snapshots and do not prove every inbound coordinate.

36m built/neverinstalled:4e8fb8023dbb89f23015a9bb88136aab9d0709af1196c1c0190aa7f708822424 simply assigns60after entry; superseded before live test because later inbound initialization can clear it.36n372725b2c37b619df4db776dd54f64abb4b2f68136676af1f2038a853afcfe3f re-arms media timer/completion exactlyonce on following phase17tick, then stock countdown; privateactive flag gates stockshortening only for ownedmedia. Original ordinary timeout handling preserved.106compiled adapter cases include lateclear/rearmonce/no repeat and4shorteningpredicatecases;980entry,1192ordinarytimeout,1066core/18guards pass. Live success still required.

36n freshgame15284/broker5164 starts05:18:03UTC,MediaTimeouts4/HalfMinutes1. Next fixture mustbindbeforeopening score, verifyactual60s inbound timer, same throw-in context/clock/allowances, naturalfinal andnormalexit. MediaAPIprovenance, injuryrefund/replay eligibility and completeTVpolicy remain pending; do not confuse bounded scheduling logic with full rulebook compliance.

Research36n live inbound-media correction and result;36o API provenance

36n deliberate CPU Spurs/Heat exhibition (runb0df90b0a13f8f7452c8f0aff58065b8) completed naturally2–5 with one-minute halves, no score/clock/foul/slider mutations. Earlier attract demo excluded by binding boundary2860. Binding phase7 attempt was refused409; corrected harness bound phase10 at0–0 before opening score. Three automatic inbound media breaks all lasted60seconds, preserved both allowances and game clock. Read-only50–65ms private samples confirm same raw period, shot clock, throw-in vector and team/opponent/context before/resume for allthree. Separate process reads are not atomic frames. First-entry samples showtimer0 before next tick; rearm diagnostic observed0/completion0. This supports one-frame timer overwrite/rearm, not a traced instruction-pointer proof of every writer. live-media36n.json andinbound-verification36n.json retain exact observations.

Natural final2–5, half1:0–3;half2:2–2. Public result schema/allplayer-teamstat sums/two logicalhalves/reconciledledger/independentdelivery/idempotentack pass.3,458 sampled public snapshots validated in firstpass,3,266validgame,0adaptererrors/capturefaults. final36n.png retained. Normalexit;05:35:21UTC cleanup restoredstable35a/95baseline saves,originalEXEunchanged,0gameprocesses/listeners. Closedtrace187768537bytes/13826validlines/0invalid/SHA2565f9ee3939d30330d29bf194f04e4ac76e8d54ac5baf742b2b5345633f7d850cf.

The trace caught transient profile labeling:source6513phase11finishedtrue/raw3 preceded raw increment5, but the mapper subtracted1too early and labeledhalf1. Corrected rule_profiles.py andscoring.py decrementonly settledphase12/19. Exactcapturedsnapshot replay nowlabels half2; regulation/OT transition tests added.249Python tests pass MacandWindows. Finalized2–5result alreadycorrect; originaltrace notrewritten. Separate college36n-api-fix archive pins hotfix;36n livebroker usedpre-hotfixsource.

Targeted original reset callback8CBEA0:direction-times-position nonnegative branchmax(current,20);negative branchfull30 (original31near-period-end sentinel).336bounded cases executeoriginalcomparison/stores withpositiongetter/notificationsmocked. Fullresetalwaysupdatescachedceiling evenunchanged; initialharnessassumption corrected, noenginecodechange. Padding-basedconditional-callercandidate starts are not function ownership:79DAF6 belongs79D9B0,79DE49 belongs79DD50; retainedGhidra exacttargets. This still does not prove all NCAA resetcauses/livecourtclassification.

36o candidate adds explicit media scheduler provenance to privateABI13(28-byteappend,Shared45176,prioroffsetsunchanged). Publicrules.media_timeouts exposes configuredmarks,servedmarks,activebreakreason andallowancecharge; stockunknownkind2remainsunnamed. Declared scheduler ownership only, not inference from originaltimeoutkind. Strictdecoder/schema/255Python tests and9compiledmetadata-to-publicschema cases pass locally;106scheduler/980entry/1192ordinarytimeouts/1066core18guards pass. DLL7502e01db992af55353f11d3e8b0efef775b78ccb4bd4117b27fa9b1d4a977f0. Native diagnostic logstillcontainsolder“v12”label; mapping/header13isactualversion. Windows/live13 transport verification in progress. FullTVinjuryrefund/replayexceptions/first-missone-and-one/arrow/resetmatrix/courtartremainincomplete.

Research36o live media API and natural final

36o run94f6711f9c7a09756c58272bab4743a2 completed natural Spurs7–Heat2 (halves5–2 and2–0). Zero-score binding excluded earlier attract demo. No score/clock/foul/slider writes. Four automatic60second media breaks (twoFT, twoinbound) passed public scheduler ownership, mark/countdown, unchanged allowances/gameclock and ownershipclear on resume.4,184 liveABI13 snapshots validated by media contract harness; separate4,320snapshot general schema pass with0adaptererrors/capturefaults. Final boxscores, two logicalhalves, reconciledledger, independentconsumerdelivery/idempotentack allpass. Original finalscreen still shows NBAquarterlabels; API exposeshalves. final36o.png andresults36o.json retained. Normalexit/cleanup05:58:23UTC restored95baseline saves/stable35a,0game/listeners,EXEunchanged; closedtrace metadata inhttp-live36o-closed.json.

92bounded shooting-foulgeometry cases execute original8BDEB0 attachedball award and releasedball flagconsumer, plus originalshotflagwriter8C7CBF→8C7CDE callingpatched89FF10. Both banks/directions/top/corner boundaries includingcollegeoutside/NBAinside690cm pass; neighboringflagspreserved. Mode/eligibility/actorresolve/footpointgetter mocked: not live shooting-foul/trajectory/court-art proof. Exactbytes, versions and limits inshooting-foul-geometry-verification36o.json.

36o2 uses same testedbinary in fresh disposable10minute-half fixture with mediaoff. Targetfirst-miss one-and-one by converting onlypending unattempted shooting-awardkind1→3 under paused/holder/counter guards. This syntheticsetup tests downstreammisscancellation, not foulqualification (separatelyobserved earlier). No legitimatefinalbinding permitted.

Research36o2 bounded manual awards;36p diagnostic candidate

36o2 game13860/broker8700/run880472f263ffda5877cb873bd5c55890 used10minutehalves/mediaoff, declared publicfoul/contactslider changes. No binding/finalexport. Converted onlykind1→3 for one pending two-shotaward and one firstshotinflight (remaining1,total2,shooterFTM/FTA0,ballowner0); bothfirstshotsmade. No first-miss cancellation proof. Guarded attempts refused whenphysicalholder absent orfirstattemptalreadyreleased; settings write refused duringinboundtransition. Retryafterstablephase10 succeeded; rejectedwritesnotpresentedasapplied. Privateinflightconversion explicitlytestsdownstreamadministration, noteligibility/releaseclassification. NormalQuit/Exit atsecondhalf9:47,score19–14; cleanup06:29:25UTC restored95saves/stable35a,originalEXEunchanged,0game/listeners. Closedtrace metadata retained.

Read-onlyreboundbrackets36o/36o2 showoffensiverecovery20 anddefensiverecovery30. Defensivecategory112record mayprecedepossessionreset andstillcarry20; subsequentsnapshotshows30. Twoearlyrecords have nomatchingphysicalholderwithinbracket andremaininconclusive (onefollowedbydifferentteammateattachment), notresetfailures orauthoritativelegalcontrol. No fullresetmatrixclaim.

36p introducesnative/college/award_probe.inc solelyunderOPENHOOPS_COLLEGE_TEST_PROBES plusINI OneAndOneProbeAttempts=1..8(default0). It waitsfororiginalunattemptedtwo-shotkind1, sameFTA/FTM,stoppedclock,clearedpause/presentation,actualshooterattachment; changesonlykindto3. Watchesfirstcredit andstopsconversionsafterfirstmissorconfiguredcap. It doesNOTclearcontingentattempt itself. Cannotcombinewithmediadiagnostics. No legitimatebindingallowedbytestworkflow; not a productionfeature. DLL33256ccfc4a870c2e9a7279c98269478121e66c5e43aa174630de30b4eaa9656,MSVC19.51/W4/WX;39compiledprobe cases,1066core18guards,106scheduler,980entry,1192ordinarytimeouts pass. Logsinkmocked; livefirst-missstillrequired. Originalsources/stable35preserved.

Research36p closure and36q arrow audit — October14,2026

The36p diagnostic ran in attract/demo mode, not a deliberately launched exhibition. Its bounded45-minute HTTP recording retained32,520 valid JSON lines (646,423,433 bytes, SHA25690f624290dde46b9b7c81f4e9b41e47cfedd461ccba5d7c91ed063bf42981445). Four unattempted two-shot awards were converted from kind1 to kind3; the diagnostic stopped conversions after the fourth award's first miss. Original shot outcomes were untouched. Native log at06:50:33UTC records the conversion and06:50:40UTC the miss.

first-miss36p.json pins same-run/roster/period observations: source9727, raw3,587.12854s, home:3 FTA4/FTM3, kind3, two attempts remaining; source9787 FTA5/FTM3 with zero remaining; source9790 running clock587.09485s. A further settled sample after two game seconds still has exactly one added attempt. The verifier now bounds searches to30seconds and rejects changes of run, roster or period. This supports downstream first-miss cancellation in the running attract-mode engine. It does not establish natural qualifying-foul selection or a controlled exhibition; no legitimate final binding/export was created.

Remote clicks and secure-attention worked, but keyboard events and typed text failed in both the game and Windows Task Manager. Both USB keyboard and mouse enumerate OK; game10128 responded. Reconnecting and testing keyboard modes did not establish a fix. User was asked to test manual RustDesk input. The game was explicitly terminated as a disposable synthetic fixture, NOT exited normally. The immediate post-stop guard briefly reported it still running; subsequent independent query and guarded cleanup confirmed exit. Cleanup10:52:04UTC restored all95baseline save hashes and stable35a adapter,0gameprocesses/0listeners, originalEXE hash unchanged. cleanup-receipt36p.json, stop-fixture36p.log, and http-live36p-closed.json retain the distinction.

36q adds no game patch. Forty bounded original-instruction tests establish that9BA650 calls880350 and flips1DEE924 before inbound setup8A11A0, then requests phase8. They also establish that8A11F0 only advances substage1/2 to3; this is not a verified legal-touch/throw-in-completion signal. Downstream setup, possession reset, dispatcher and notifications are mocked. Exact bytes/hash/cases are in arrow-entry-verification36q.json.

Recovered inbound jump table8BD5C4 targets8BD424/450/4B1/4CC. The8BD5B0→882EC0 branch resumes/rearms the inbound timer, not verified legal first touch. Direct-call candidates to8A11F0 are7860D4 (within7859A0) and8543CA (within8541F0). A padding-based initial guess854050 was the preceding function and is retained as rejected ownership evidence; corrected Ghidra export contains8541F0. Existing bad seed8BCF10 was inside8BCEE0, not a valid entry. These are leads for tracing completion and exceptions, not an arrow fix. No source release or capability claims changed. All255local API tests pass. Remaining work still includes controlled first-miss exhibition, arrow completion/foul/violation exceptions, full reset causes, lane/court art, TV policy exceptions and broader regression.

Remote input recovered — October14,2026

User is on phone and cannot manually test. RustDesk source2/Map plus explicit180–300ms CUA key holds restored Windows and game menu inputs. Verified Return/Escape/Up/Down/Space through a fresh stable35a launch, then normal exit. Default-duration events unreliable; Ctrl+A still appended a, so modifier shortcuts remain unresolved. This clears the game-menu testing blocker without claiming every keyboard path fixed. No permission/driver/service/SSH changes. Cleanup11:12:53UTC restored95baseline saves and verified stableDLL/originalEXE/SSHhash/no game process. Full evidence and source attribution: analysis/windows/input-repair-20261014/verification.json andmanifest; reproducible method inWINDOWS-DESKTOP.md. College-rule implementation unchanged this repair session.

Research36r — controlled first-miss confirmation and arrow continuation

RustDesk source2/Map with explicit key holds enabled deliberate quick-game selection (CPU Spurs–Heat), not attract mode. Research36p DLL reused unchanged with OneAndOneProbeAttempts=8;38 public slider/settings changes retained in foul-slider-fixture36r-shooting-only.json. No legitimate binding or final export. Two eligible shooting awards converted kind1→3; first miss occurred on second conversion. This fixture proves downstream administration, not natural qualifying-foul selection (separate earlier evidence).

Run36c7216aea6093aae233fc5073adbd56,raw1,clock305.50385s,shooteraway:4: source5326 FTA0/FTM0,kind3,two remaining; source5393 FTA1/FTM0,zero remaining; source5398 clock resumed; settled source5415 stillFTA1/FTM0 after two game seconds. No outcome/stat/clock override implements the cancellation. first-miss36r.json and retained HTTP trace are exact evidence.

Voluntary Quit/Exit at4:42 first half9–12. Cleanup11:34:09UTC restored stable35a and all95baseline save hashes, originalEXE unchanged,0gameprocesses/0listeners. Recorder closed13770validlines/0invalid,189333736bytes,SHA256cf0d9a5086b40629afa3f19bdd4772fc5e7238f5b76606097e490b28f50ff8f4. This closes the controlled-exhibition first-miss gate.

Arrow audit corrected an invalid interior entry8BD610 to function8BD5E0: the former falls inside the call at8BD60E. Verified disassembly shows the official-ball/phase10 branch calls8804C0 at8BD76A; predecessor contact routine797080 handles violations before this gate. Ghidra interior7975E9 and8BDBB0 seeds are retained as rejected ownership evidence, not valid whole-function recovery. NCAA2026-27 casebook A.R.6-4..6-7 and2025-26 table-crew source PDFs archived with hashes under sources36r. Research36s arrow candidate is being compiled/tested separately; no complete-arrow claim yet.

Research36s — delayed arrow live completion

Research36s DLL134ecccc1a4a70dcad514dec01940630a91ac8779bad4c4c5b98e6d3506b1c23 passed1066core/22original-byte guards and340compiled arrow/touch-gate cases. New arrow.inc delays entitlement consumption until the verified8BD5E0 official-ball/phase10 clock-start call; commits foul retention at8BF490 and accepted throwing-team violations at four record sites. Rare point-of-interruption and unclassified exception coverage stays incomplete.

Deliberately launched CPU Spurs–Heat exhibition,1minute halves, mediaoff, synthetic held-ball setup only. Private50ms samples andnative logs show held AP selectedaway at44.907firsthalf, heldsamearrow throughinbound, thenflippedonceattouch; natural secondhalfstart selectedhome at60seconds andflippedonceattouch. Bothresumeclocks. Game finished2–4; no legitimatebinding/export forsyntheticfixture. arrow-live36s.json retains exact rows;3921publicsnapshots validated,2886validgame,0adaptererrors/capturefaults. Normalexit;cleanup11:48:47UTC restoredstable35a/all95saves,originalEXEunchanged,0game/listeners. Research36t adds diagnostic foul probes only, same arrowpolicy; nowtestingaccepted violation/foul administration live.

36t diagnostic failure retained: held-ball helper9BA690 needs ECX=ballholder when arrow differs from current offense, because conditional6C7300 credits turnover. Probe called it as no-arg;36s happened to avoid that branch, while36t recorded1caught adapter exception and neverreached APbegin. Reject36t livefixture as arrowevidence; no outcomes changed to manufacture success. Quit normally at8:49firsthalf2–0. Initial cleanup transientlyfailedcopying broker.lock afterprocessstop; no saves/adapter restore hadoccurred. Launchguardcorrectlyrefusedunstablecopy. Freshguarded cleanup-retry11:58:00UTC restored95saves/stable35a andverified0game/listeners,originalEXEunchanged. Research36u fixes diagnostic calling convention, requiresobservedpending+injectionbeforecompletion, andadds3regressioncases. Core arrowpolicyunchanged.1066core/22guards,340arrow,35probe,8originalfive-second and56originalOOB-handler cases pass. Failed logs/harness attempts retained, not concealed.

Research36u — controlled arrow exceptions verified and baseline restored

The corrected diagnostic completed four controlled cases in deliberately launched CPU Spurs–Heat exhibition run8d0963f7f7bf8e02a47d5afb4ee33315: throwing-team five-second violation forfeited AP; defending-team common foul retained AP and immediate possession; throwing-team common foul retained AP while the opponent received the foul inbound; the next normal AP then used that retained entitlement and flipped on legal touch. Both fouls occurred during inbound flight (phase10, ball unattached, stopped game clock). Public record8/home:3 and record22 actor pairs corroborate the accepted handlers; home:4 and away:4 each received one foul. Private reads confirm correct immediate possession and persistent arrow through resumed play. arrow-live36u.json pins exact rows, public source/event IDs and foul-credit observations.

These are synthetic accepted-handler integration fixtures, not naturally detected tie-ups, collisions or five-second expiration. Neither scoring nor clock/outcomes was overwritten. No legitimate match binding/export. One diagnostic rearm was refused during a free-throw phase; later safe-running retry succeeded. Initial verification assumed foul credit appeared within0.5seconds of arrow retention; observed HTTP credits arrived0.87/0.77seconds later. Corrected verifier searches the same run/period bounded by resumed play, requiring exactly one increment; no engine change to force this assertion.

All4 live cases pass.36s separately proves natural halftime AP and two normal completions.36u compiled verification passes1066core/22byte guards,340arrow,35diagnostic,8original five-second,56original OOB and64original self-return/contact cases. All255local Python API tests pass.3996public snapshots validate (3001validgame),0adaptererrors/0capturefaults. Native44-file source parity against builtarchive passes. DLLf4d1cf61cae5f3ebc21f046aa0278088360df467ed8b8991ce20a0127b50e6ef; full source/build/versions and hashes retained.

Normal Quit/Exit at7:33firsthalf2–2, then cleanup12:09:30UTC restored stable35a/all95baseline save hashes, originalEXE unchanged,0gameprocesses/0listeners. Private sampler stopped cleanly by stopfile before exit. HTTP recorder closed8003validlines/0invalid,119022721bytes,SHA25607c4423ebed0afe735312c9710a301c02d781e0831d71519b7e951b6745f7d27;11transport error lines after broker shutdown are distinct from zero liveadapter/capture faults. Earlier36t failure is retained, not counted as success.

Targeted gates: controlled first-miss one-and-one and ordinary arrow completion/foul/violation administration now have evidence. Conservative public arrow_exceptions flag remains for rare technical/double-foul/point-of-interruption and unclassified cases; technical redesign was excluded. Full reset matrix, court/lane art, complete TVpolicy and broader regression remain separate college work. Stable35package remains unchanged; no complete-college release claim.

Final preservation check12:15:31UTC confirms Windows SSH server configuration unchanged (870a4450...). A local comparison initially used that server hash against the Mac client config and failed because they are different files; corrected targetverified, no SSH configuration was modified. Stable35package SHA23884c2050d759e36a85fa9e6f6b358e86a9d8f2285a36a950a462da05130223 unchanged. targeted-gaps36u.json summarizes the scoped gate evidence.

Research36v fixed media marks — October14,2026 (in progress)

User explicitly requested fixed TV marks in shortened halves:10 minutes uses under8/4. Revision2 college profiles now use only full-length marks strictly below the starting clock;8 minutes uses under4 and1–4 minutes have no scheduled marks. Three-break format similarly retains15/10/5. First-team-timeout conversion remains separately enabled. Revision1 decoding preserves historical proportional schedules. API exposes actual scheduled count plus full-length format and shortened-half policy; ABI13 layout unchanged.

1572 portable scheduling assertions,1066 compiled core cases/22 guards,340 arrow cases,106 scheduler cases,9 compiled metadata/schema cases and258 API tests pass. Final Windows test runner explicitly inserts staged API path (embedded Python ignored PYTHONPATH); dependency-free unittest restored after initial jsonschema import failure. Failed logs retained. MSVC19.51/W4/WX DLL4e0775a39c133dc3d402618696e05a031020704081b438ff3c4975c33417006b. Original36v source archive plus explicit schema/test correction archives record the exact staged sources.

Natural CPU Spurs–Heat10-minute-half exhibition runf0cd06b8ddb5ecac626cecaa7874d6db bound before opening score, no outcome/clock/slider writes. Public revision2 reports marks480/240 and two scheduled breaks; under8 reached. Game and recorder remain active; no final/export or complete-media claim yet. Local36w additionally prevents consecutive media conversions without clock running;1574 portable assertions pass, but36v live binary does not contain this later guard.

Official NCAA rulebook archived with URL/hash/extracted pages in sources36v. Targeted reset audit distinguishes live possession flips from frontcourt throw-in awards. New dead-ball/reset hooks are not implemented at this milestone; full reset matrix, court/lane artwork, TV exceptions and broader regression remain open. No stable release replaced.

Research36w/x/y — dead-ball reset implementation and lane diagnostic (in progress)

36w adds three guarded call-site replacements:8BC4D2 committed new inbound possession,9BA660 held-ball possession change,9BA66B post-placement held inbound. Exact20 applies only when the final awarded throw-in is in the receiving team's frontcourt. Midcourt remains backcourt; unchanged-possession held AP preserves the clock. Global8A1070 remains original for live steals/defensive rebounds. Compiled wrappers plus original8BC4C0/9BA650 pass1928 bounded cases across both teams/directions, court halves, unchanged/changed possession, near-end sentinel and stack alignments. Flip side effects, placement construction, phase dispatcher/notifications are mocked; live proof remains pending. Same-team AP after rim/backcourt offensive rebound remain separate reset causes.

36w also prevents first-team media conversion immediately after a scheduled media break before play resumes;1574 portable scheduling assertions pass.1066core/25guards,340arrow,106scheduler and9compiledmedia metadata checks pass. Full public schema initially rejected college revision2; corrected RuleProfile schema now accepts college1/2 and original1 only.122 full broker Snapshot contract cases and258 API unit tests pass. Initial generated contract harness incorrectly passed raw normalize output without broker health fields; switched to Engine.public_snapshot, not weakened schema. Corrections retained.36w DLL a066695ee9b8d0335d3d6d41bfd5b07960666b0bffb16c397ec44906fb3df124; schema correction archive college36w-schema-fix.zip is separate from initial36w source archive. Both staged36v/36w schemas updated.

36x adds only diagnostic ArrowProbe5/6: wait for natural attached possession on the required side and opposite AP entitlement; then invoke stock held-ball presentation. Mode6 subsequently invokes accepted5second handler. No ball position, outcome or clock writes.82new and35existing diagnostic checks pass;1928 reset cases pass.36y adds optional LanePlacementProbe (defaultoff; test compile only), observing first128 original872BD0 placement calls while phase14.40 frame/gating checks preserve GPR/flags/SIMD and displaced instruction. It changes no placement. Native FT observations36v show lane players still aroundNBA9ft center positions; current narrow violation predicate alone is not a corrected FT lineup. Read-only placement/table/constant leads saved; no arbitrary shared-constant patch applied.

36v natural10minute game remains active. Firsthalf24–19 completed with only marks480/240 consumed; under4 break occurred at38.079647s, the later qualifying stop. First under8 media duration/allowances passed but subsequent replay stalled until normal Space input; automatic continuation not certified. Second media returned without that intervention. Normal halftime presentation skipped withSpace. No score/clock/foul/slider writes and binding remains legitimate.6,229 captured public snapshots and first complete media cycle validated before later samples; final validation/export pending.36w/x/y are separately built candidates, NOT the installed36v game.

Ghidra target8BD220 produced a discontiguous interior-function artifact and is rejected as function-ownership evidence. Other target evidence and exactoriginaldisassembly retained. No complete college release; stable35 and original corpus preserved.

Research36v — natural fixed-media game and final export closed

Natural ten-minute-half CPU Spurs–Heat finished30–38, with no clock/score/foul/slider writes. All4 scheduled media cycles (480/240 marks each half) passed duration>=59seconds, frozen game clock and unchanged team allowances. Actual break clocks458.175262/38.079647 firsthalf and391.362427/94.927322 secondhalf reflect later qualifying stopped-clock opportunities.14,983 valid live snapshots pass schema and0adapter/capture errors. First media return needed a normal Space replay skip; other returns resumed normally. Automatic presentation and injury/charged-conversion exceptions remain open.

Final phase19 export passes schema, both-team player-stat sums, two logical-half scoring ledger with no issues, idempotent acknowledgement and independent-consumer delivery. Two premature verifier invocations before phase19 correctly found no final result; no finalization gate was weakened. Closed trace32,180valid lines/0invalid,SHA256bf5143f7ff05c62fb707f626b3473d6e7d2485073cbacd36c3557e2beffe54ee. No overtime occurred.

Normal game exit; initial cleanup refused while exit confirmation remained open, finalcleanup13:21:27UTC restored95baseline saves/stable35a, unchangedEXE,0game/listeners. Private read-only rim trace retained8,286samples; ball+184bit0x10 also transitions during ordinary attachment/passing, so it is not sufficient evidence of a rim hit. No reset hook based on that flag was installed.36y1928deadball/core1066/26guards/40lane-observer checks pass; controlled live reset/lane fixture next.

Research36y closed reset fixture and36z lane investigation

Three controlled live reset cases passed: held-ball change to frontcourt20, held-ball change to backcourt30, then accepted five-second violation to opponent frontcourt20. Exact timings/coordinates/team directions and public/private observations in deadball-live36y.json. Handler injections are explicitly synthetic; no score, ball placement, outcome or clock override. No legitimate match binding. Source1928 bounded reset cases supplement, not replace, these integration checks.

Closed36y trace10922valid JSON lines,5355schema-valid snapshots/4612validgame,0adaptererrors/0capturefaults; SHA256c35c80421aabe4a2ce684cb90993e344546a9987918b928d2286618dbb932267. Three natural FT sequences observed, zero phase14 placement-probe hits. Narrow violation predicate is not a finished FT lineup. Normal Quit/Exit and cleanup13:41:59UTC restored stable35a/all95baseline saves; unchanged EXE,0game/listeners. Evidence in cleanup-receipt36y.json.

36z broadens only read-only872BD0 observation to relevant x/z rectangle in any active phase (placement may precede phase14).40compiled observer cases pass; DLL1a5447dc03fb1f6bde508c6846f42178e9da079399bf363e8473f74c9ded10ae. Installed only in Windows working copy game8736/broker1856, HalfMinutes10/mediaoff/ArrowProbe0/LanePlacementProbe1. No position correction is yet implemented. Source archive, MSVC19.51 build, exact map and attribution retained. Targeted FT dispatch helpers7B91D0/54B630/92CD90 show flag/presentation setup, not proven lineup owner. No complete-college release claim.

Research36z closed;36aa/ab free-throw goals and court geometry

36z observes872BD0 in all active phases: seven rectangle hits at pregame2/4, none at natural FT14 (home:1 at485.938s). Closed trace9024validJSON,4273schema-valid snapshots/2949validgame,0adapter/capturefaults; SHAe75fc129937c9c85bcf4ed1d5b27fdf7d717157f747a0e1f60f53792ca651db7. Quit at5:56 firsthalf6–8. Cleanup13:56:58UTC restoredstable35a/all95saves, unchangedEXE,0game/listeners.

Targeted static chain7AAF10→7A7BD0→6C0BD0(slot assignment)→7A6DE0→71A300 revealed dedicated10slot FTgoal tableF2D650. Original71A300 uses slotx/z, outward36.576cm clearance for occupied lane slots, and shooter-team attacking direction. Direct callers748290/7A6DFC/7A7BA5 retained. Ghidra failed71A300/7A6DE0 jump-table recovery, so exact captured instruction listings/table bytes are authority, not failed pseudocode.

New native/college/lane.inc retains original shooter/outside-player entries, shifts occupiedslots1/2/5/6/7 inward60.96cm (16ft→12ftlane), relocates slot centers to NCAA8–11/11–14/14–17ft spaces above the block. Original goal calculation/heading remains. Guarded pointer replacements71A30B/71A314 reference private table, full80-byte originaltable checked. Rule8-4 and court diagramPDF18 verified from archived official2025–27book; rendered source retained. Five occupied slots stay within NCAAmaximumsix; no mandate to fill allsix.

36aa initial harness lacked optimized-away initializer symbol;36ab marks that initializer noinline for verification. A second harness failure was stale Unicorn translated code after alternating pointer operands; explicit translation-cache invalidation corrected the test, not the engine.36ab passes144original-coordinate/heading cases over9non-shooter slots,bothdirections,4alignments,before/after;1066core/29byteguards and1928resetcases pass. Original table unchanged. DLL10fbbc30b320cd00c35042f595fcd0d4c125405549319391742d4f040287fb49. Diagnosticgoal logging only whenLanePlacementProbe1. Windows36ab game10132/broker5272 installed; live lineup verification pending. No full lane/court claim.

Read-only f010court mesh inspection follows archived NLSC13894 Explorer field leads (independent Python decoder, no packageexecution). Parsed15groups of float32 stride36 geometry; group12 contains threepoint/lane-line geometry. Wireframe plot and exact vertex data retained. Initial big-endian trial was rejected; despite class nameBigEndianReader, inherited methods used here are little-endian. Court texture alpha/padding and material correspondence still need verification; originalasset unchanged. court-mesh-attribution36ab.json pins four sourcefiles andURL. No standalone tool expansion/release.

User-requested Mac restart — October 14, 2026, 14:08 UTC

Research36ab was stopped at the user's request before the new free-throw lineup could be verified live. The game reached the deliberately selected Spurs–Heat pregame presentation after earlier attract-mode activity. No completed exhibition FT sequence, no legitimate match binding, and no final export. Normal UI close attempts did not exit during presentation; the exact guarded research process10132 was then terminated. The immediate process count was transiently1; subsequent cleanup independently verified0. No new test was started after the restart request.

Cleanup receipt36ab at14:08:19UTC confirms stable35a adapter restored, all95 baseline save hashes restored, original working EXE unchanged,0game processes and0API listeners. Native final log and receipt copied to the Mac. HTTP recorder closed normally via stopfile:8,132 valid JSON lines,3,862 schema-valid snapshots(1,386 valid-game including attract),0adapter/capture errors,50,262,383bytes,SHA25643e40ef78382a80720fe74a520e974dfc49958c0d67ee35061c510642f99ec8c. No FT observations. Evidence:analysis/college-rules/http-live36ab-closed.json,cleanup-receipt36ab.json,native-final36ab.log.

Resume: read this entry plus COLLEGE-RULES-IMPLEMENTATION.md. Keep current native sources and build/college-research36ab.zip; Windows staged36ab DLL remains available with SHA10fbbc30b320cd00c35042f595fcd0d4c125405549319391742d4f040287fb49. Its compiled FT-goal tests passed144 cases, core1066/29guards and reset1928. Start a fresh uniquely named research run (existing36ab launch/cleanup paths intentionally reject reuse), recreate the local SSH forward and authenticated recorder without printing credentials, then verify actual lane placements and ordinary FT resumption. Do not treat pregame/attract samples as this proof.

Remaining scope: finish FT/lane integration and court artwork; unresolved backcourt offensive-rebound and same-team AP-after-rim reset causes; TV exception/automatic-return verification; OT/final-export regression; final packaging and truthful capability documentation. Fixed TV schedule is already implemented/tested:10-minute halves use under8/4, never scaled. Stable release35 remains untouched. No automation or new task was created. The user is restarting the Mac; wait for them to resume.

Research36ac — free-throw lineup verified at both baskets

After the Mac restart, the unchanged36ab DLL (SHA25610fbbc30b320cd00c35042f595fcd0d4c125405549319391742d4f040287fb49) completed a deliberately selected CPU Spurs–Heat fixture. Seven public API writes raised shooting-foul/contact frequencies and enabled FT routines; no score, clock, outcome or ball-position writes. Three natural FT sequences (home:2 at577.880920s, away:0 at496.915344s, home:2 at478.901276s) each completed two attempts and resumed running play. All five occupied lane players matched the college goals at both baskets: best simultaneous maximum position errors8.91/22.13/12.25cm;51/33/79 shooter-holding samples put all five within35cm, allowing animation. Shooter/outside-player goals remain unchanged. This validates FT lineup placement, not every lane violation or court artwork.

Evidence: analysis/college-rules/lane-live36ac.json, verify_lane_live36ac.py, lane-slider-fixture36ac.json, native-final36ac.log. Closed trace7998validJSON lines,3799schema-valid snapshots,3244validgame,0adapter errors/0capture faults;135546544bytes,SHA256b56fd07b532c66a648a5fc4209863ade46bfa7fb79125c470ffd06b3112b3750. No legitimate match binding/final export. Normal Quit/Exit at5:48firsthalf4–6. Cleanup14:33:38UTC restores stable35a, all95baseline save hashes, unchangedEXE,0gameprocesses/0APIlisteners. Initial broker launcher reported an early log-read race, but the subsequent process/token/authenticated HTTP check succeeded; retain that log and use bounded log readiness next launch.

Read-only f010 texture decoding identifies the white line mask as embedded DXT5 texture5 (128×64). Stride36 mesh vertices have two UV pairs; line alpha uses the second pair at+28, unlike the first pair at+20 used for wood. Geometry band width is not visible line width. Six decoded embedded textures and exact offsets/hashes saved in f010-textures36ac.json; no court asset modified. Targeted original ball-contact/rebound/control call chains saved under ghidra-rim-control36ac and control-callers36ac.json. Byte-scan callers are leads pending aligned validation; ball+184bit0x10 alone remains rejected as a rim-hit indicator.

Remaining: backcourt offensive-rebound and same-team AP-after-rim resets; court markings; TV exceptions/automatic return; broader OT/final-export regression; release packaging. Stable35 is unchanged.

Research36ad–ag — reset observer built; pre-window startup stalls isolated

Added optional ResetCauseProbe in research builds only. Three original call-site observations:6C6DFC exact existing rim-reset call (ESIball),7975E9 official-ball touch8BD5E0 (ECXactor/EDXball),796E38 offensive-rebound credit8BF610 (ECXactor). Independent aligned disassembly confirms ABI. The latter is inside existing API rebound-credit owner, whose entry detour remains untouched. Diagnostic wrappers preserve registers, flags and FPU/SIMD before tail-calling existing targets. Source delta36ab→36ad contains only rules.inc and new reset_probe.inc. No new reset behavior or public capability added.

MSVC19.51/W4/WX builds DLL7704f0d9c12dcf75f98f566b5d4132797c25bd7372a096ee9edd874563c72b86.1066core/31byte guards,1928deadball and12hostile-observer frame cases pass.12frame cases cover three wrappers/four stack alignments; observer is mocked and downstream handlers are not executed. Original8C2D00 disassembly starts inside an instruction, so its leading lines are not valid function ownership evidence; aligned8C2F73 collision dispatch remains a call-site lead.

36ad and36ae failed before a window/API sample.36af samebinary/probeoff also stalled;36ag unchanged previously live-verified36ab likewise stalled. All process identities and launch logs retained. Read-only noninvasive CDB36ad shows main thread waiting through originalE0BE06/DDBACF/DE8690, no claim of exact cause; system had~9GBfree RAM and no matching recent application error. No gameplay observations, no final export. HTTP36ad captures source_unavailable503, not a working game.

Each exact test PID was terminated after evidence retention and guard checks. All95 baseline saves/stable35a restored after each;36af initial cleanup failed because no broker had been started, before saves/DLL restoration, and36ag launch correctly refused. Corrected optional broker-state archive and newcleanup-retry completed; no failure overwritten. Final36ag restoration14:45:18UTC verifies0game/0listeners,unchangedEXE. Restarted dedicated Dell with saved baseline to recover the test environment; no SSH/security configuration changed. Post-reboot verification pending at this entry.

Research36ah–aj — live reset evidence and Miami court candidate

Dell reboot restored interactive startup and automatic console sign-in;36ah (game9696/broker14512) ran the unchanged36ad observer DLL. CPU Spurs–Heat exhibition ended normally at2:30 firsthalf,9–6. Four public rebound sliders changed at6:49 and ten shot-success sliders later to increase opportunities; no score/clock/ball-position or individual-outcome writes, no legitimate final binding/export. Eight native rim→defensive-control chains correlate with API rebound records and30-second recovery clocks. No offensive rebound occurred. Native actor x/z diagnostics incorrectly read direct actor fields and are invalid; public API poses are unaffected. Ball+1A0 remains nonzero through subsequent passes, so it is not a standalone rim-pending predicate. verify_reset_live36ah.py/reset-live36ah.json pin each observation. Initial verifier assumed seven records from an earlier live fetch; final closed trace contains eight, and all eight pass the per-record conditions.

Cleanup15:08:05UTC restored all95baseline saves/stable35a,unchangedEXE,0game/0listeners. HTTP trace12430validJSON lines,6144schema-valid snapshots,5464validgame,0adapter/capture faults,220940191bytes,SHA0b567ad6e33a4851db122440dcbec128596fe63ee246b8a781e7698bef0c931d.36ai corrects the diagnostic pose chain toactor+20→pose+30/+38; MSVC/W4/WX DLL6b2df603aba131d52ec7ff0aaa997270284b8ab89ce8096c095d5bacc9543409 passes1066core/31guards,1928deadball and12observer frame cases. No new reset behavior added.

build_court36aj.py creates an exact-source-hash-guarded Miami f010 candidate in analysis/college-rules/court36aj, never the original corpus.449 vertex changes narrow paint/outline, move the arc and straight-corner join, hide NBA lane marks and expose original below-floor narrow-lane marks. Original IFF resource metadata, segment0, textures and4322-bytefooter preserved; only explicitlylisted vertex positions differ in decodedsegment1. Initial no-footer assumption failed before writing output and was corrected to preserve the observed footer. Radius675.005cm/corner660.0825cm match engine constants;2-inch line width calibrated to decodedDXT5alpha128 edges. Original tessellation remains, so chord/antialias tolerances and hidden-mark spacing require live inspection. OutputSHAa6214a2d46eb4eaaf289ae0e07dbe259d80dc100cb2adf6bc0fde9c9fecc8dbb. No universal court conversion or visual-completion claim.

36aj launch with36aiDLL/court candidate again stalled before window/sample. CDB read-only evidence15:10:35UTC has main waiting throughE0BE06 and graphics worker atE0C5CA/Sleep; unwind warns inaccurate frames. This is not a court-render result or a proven asset cause. Restoring baseline before host recovery; follow-up receipt required. Remaining reset causes, rendered artwork, TV exceptions/return, broaderOT/export regression and release packaging are still open.

Research36aj correction — closed trace supersedes startup inference

The completed36aj recording contains643 snapshots,159 valid-game attract samples (last source425,phase4), despite earlier zero-window-handle observations. First frame timestamp1791990614.838 (15:10:14UTC). Therefore the earlier assertion of no frames/persistent stall is wrong: startup was delayed/backgrounded and progressed before process termination. CDB is a momentary stack observation, not proof of a permanent deadlock. The forced stop used an insufficient windowless-state inference; do not reuse that as a sole liveness criterion. Original court, stable35a,95saves,EXE and0game/listeners verified restored in cleanup-receipt36aj.json at15:12:00UTC. No deliberately selected match or visual court verification occurred.

Following recovery,36ak (same36aiDLL and36ajcourt;game12516/broker14204) reached startup video/menu after clicking its taskbar window through RustDesk. No further driver/SSH/security changes. Inspect authenticated sample sequence plus UI before declaring a startup failure or restarting again.36ak exhibition setup underway; not a court pass yet.

Research36ak–am — Miami visual verification and shared texture template

36ak ran two deliberately selected CPU Spurs–Heat exhibitions with36ai observerDLL. First36ajcourt showed duplicate lane outlines: moving geometry to negativeY did not hide it. Quit tohome at2–2/9:15 and installed36al with exact prior/candidate hash guards; original court backup retained. First transfer failed because staging directory did not exist, before any court change; retry succeeded15:24:21UTC.36al degenerates obsolete line quads rather than displacing them. New exhibition loaded the changed asset without process restart; saved court36al/live-render.png shows the shorter arc, narrow paint and single lane outline. Quit at3–0/8:56. No sliders/score/clock/position writes or final binding/export. This is Miami-only visual proof, not all-court coverage or pixel-perfect legal alignment. Native reset observer's corrected pose path still needs correlation; no new reset semantics claimed.

Normal application Exit completed; cleanup36ak15:31:14UTC confirms originalcourt, stable35a,95baseline saves restored, unchangedEXE,0game/0APIlisteners. Original corpus/stablepackage untouched. Local evidence includescleanup-receipt36ak.json,native-final36ak.log and closed HTTP validation. No host reboot needed.

User now requests all courts use a shared one-texture system,4K with8K if feasible, and a PNG showing the real college3pt boundary. assets/court-templates/college-v1 contains transparent4096/8192linework, neutral4Kcanvas, dimensionedpreview, exactarcSVG and geometry.json. Generated from compiled36ai constants/rdata:radius675.0050048828125cm,corner660.08251953125cm,basket1274.4449462890625cm,join1133.2967529296875cm. NewexplicitUVcontract100ftsquare: u=(z+1524)/3048,v=(1524-x)/3048. Not fitted to arbitrary legacyIFFUVs. Two-inchpaint lies inward of predicateboundary; raster/filter/compression tolerances stated. Other markings are drafting references and subsidiarymarks remain unfinished.

verify_template36am executes560 additional recovered89FF10 cases (bothbaskets/selectors,±1cm arc samples,corner equality,oneof4samples onboundary rejects3), in addition to1066existingcore/31guards.6DC460 fourpointprovider mocked; animation/release-time edge behavior not proved. Radius/piecewise scoring patch is team-independent; artwork is not automaticallychangedforallteams. Basket coordinate intentionallyretained,~1.905cmdifferentfromnominaldiagram. No claim everyAIgeometryconsumer wasupdated.

ArchivedJaoSming96133 documents4096one-texturemodel;exrxixxx93524 reports4096/6000×3000imports. Template artwork is original coordinate drafting, no copiedcourtart. MicrosoftD3DCAPS9 texturecaps documentation inspected;8K load stillunverified. Nextassetintegration: sharedUV-compatiblefloor, removeoldlineoverlays, check4Kand8Kloadedtexture, verifybothbasketsandmultiplearenas. Remainingcollege rules: rarebackcourtOR/same-teamAPafterrim resets;TVexceptions/automaticreturn;broaderOT/finalexportregression;releasepackaging. Do notcallcollegecomplete.

Mac Studio migration rollback — October 14, 2026

User clarified Windows-first ownership and requested undoing unnecessary Mac additions. All29 newly restored directories (Ghidra project and28 historical API-token folders) were removed after rechecking all37 source files on retained AIServer. Fresh Mac native-build output and ad hoc migration scripts/logs removed; exact previous seven binary hashes, native caches and build evidence restored. Original game corpus, source, research exports, SSH/RustDesk credentials/configuration and Dell unchanged. One small rollback receipt retained in analysis/migration/macstudio-20261014. Rosetta installation remains: package files are marked restricted with SIP enabled and softwareupdate exposes no supported removal option; no system protection changes attempted. Current AGENTS records Mac as editing/control host and Dell as game/build/debug/test host. No game feature work resumed.

Mac Studio Wine cleanup and court-marking clarification

User asked whether Wine was removed. It had predated the preceding rollback and remained. Under the existing lightweight-Mac cleanup request, removed only~/.local/share/openhoops/toolchains/wine-11.18 after comparing all4877 file/symlink entries with unchanged retained AIServer source.871377330logicalbytes; not a measured physical disk-space claim. Receipt:analysis/migration/macstudio-20261014/wine-removal.json. No Dell changes, game launches or working-copy/save removal. Rosetta protected component remains. College artwork clarification: main arc/lane modified; original narrow-lane hash geometry exposed in Miami. Complete subsidiary NCAA markings, baseline marks, lane-block spacing, restricted arc and dashed FT semicircle still require production artwork and alignment checks.

NCAA2026–27 measured court master — research36an–ap

User supplied official2026–27 PDF and clarified the FAU texture is illustrative, not paired to a project IFF. Used printed dimensions only, with archived BPDHoplite4Kfloor f028 guide for UVs.44vertex affine second-UV fit residual<0.015pixel at8K. Original packages/corpus intact. Built dimension-driven8192²white/black PNGs,18separate PNG layers, layeredSVG/OpenRaster and an explicit alternate8192×4096UVcontract. Full subsidiary marks included; optional rearFT and cyan guides hidden. PDF redundant corner-length label differs0.179802in from radius/offset/ring-derived join; exposed rather than distorting arc.

Shared court-definition revision2, generated native constants and college profile revision3. Both original all-outside89FF10 and previously missed mixed8A0010 predicates now use the same NCAA radius/corner/nominalbasket values through14guarded operand substitutions. Original shared basket constant and physical equipment unchanged. ABI14 appends read-only actual original four-point contact/boundary samples; public API never guesses legal events or calls an original constant a physical hoop measurement. Legacy reference±1274.444946 versus nominal±1272.54cm remains explicitly observable.

Dell36ap MSVC/W4/WX buildSHA4a9f1f360f461dcbdb78c95e2a8cf40ab09a7f92d9485ef864d9f4b9f724dc79 passes269APItests,1066core/31guards,144originalFTgoal,2468actual original foot/scoring/boundary fixtures and72compiled sampler cases. Helpers not mocked in2468+72, but bone matrices are synthetic.36an/ao retained as earlier separate candidates. No Mac dependency installed; Windows analysis wheels isolated/pinned. Live36ap bounded menu/attract observation launched with automatic save/adapter/INI restoration; final result/receipt pending at this milestone.

See COURT-STANDARD.md and analysis/court-standard. Exact live court agreement remains unfinished: material/UV transform,8KIFFloading, liveboth-basketedge shots, physicalhoop/collisiongeometry and relevantthrow-in/upstreamboundary consumers. No fullyfinished college claim. Stable35 remains reference.

Court research36aq — live sampler/schema pass; clean stop

36ap's initial broker started before mapping and failed; game reached title/demo,84connection errors only. Cleanup restored95saves/stable35/INI.36aq first attempt failedPowerShellparsing before mutation; corrected nested here-string and added actual mapping readiness/no-loopback-proxy. Unchanged36apDLL then completed6-minute bounded demo observation, two Enter UIinputs only; no APIgameplaywrites/managedbinding/finalexport. Trace48,720,567bytes,SHA4c95bb67c71dae71c29df004580de6617c1c15946b7ba083844b81e5e01abb92.2136responses:521initial503whileloading,1615snapshots/1280valid,579phase10,1128all-ten-player sets.11,402actual active-player contact observations,all10playerschange,0missingactivesamples,0adaptererrors; independent boundary projection error0. Court parameters/bounds match; originalbasketreference mismatch remains explicit. Initial verifier's10players-during-all-loading assumption corrected to record0/1/3/10availability, with failure retained.

Dell isolatedjsonschema verifies34definitions,4syntheticABI14snapshots and1615liveHTTPsnapshots. Asset checks pass224independent edge samples, exact18-layerORA composite/CRC, SVGgroups and27manifesthashes. Authoring ZIP3,918,679bytes contains PNG/SVG/ORA/definitions/instructions only. New API docs/court KB updated. Task-owned64MBSwiftPDFcache deleted; no Macinstallation.

Cleanup03:04:22UTC confirmsall95saves/stable35adapter/originalEXE/court/INI restored,0game/0APIlisteners. Stablepackage/originalcorpusunchanged. No new8Ktexture/IFF installed, no edge-shot orphysicalhoop proof; do not call this universal court conversion or full college completion. Next focused step: convert/calibrate an actual guide floor with these masks, prove8Kloading and both-basket line decisions, and resolve equipment/othergeometry consumers.

Final court checkpoint: all51current native/API implementation files match the tested36ap archive. Removed only the two completed manual court-test scheduled tasks after action-ownership checks;0game/APIlisteners reconfirmed03:11:14UTC. No recurring automation created. Template assets delivered as a measured authoring master, with final8KIFF/render/edge-shot/physical-equipment limits explicitly retained.

Court loading follow-up —36ar–av in progress

User authorized resolving actual texture loading and edge-shot checks, treating the~¾inbasket reference as potentially baked-in. Built exact-guide-hash-guarded4K/8KIFFcandidates with the measured neutral artwork, existingPillow11.3BC3encoder and observed mip floor8.4KSHA ddfd09f8afd29c87c808b4639b946d65c40d27328aab8f2c1e9f6e7cfc351ad1;8KSHA4c1b79d1463b8bc69df70951d3ee5139a828e4485044e521147d1c9970c13c9e/92,424,816bytes. Primary texture plus named dimensions/segment sizes only; meshes/materials/othertextures unchanged. No original corpus edits.

Temporary diagnostic36arSHA85fb9fafe7707aa80143fccf6259a887e7593a0a2d4149b63fab8809fb194dbd adds guarded originalD3DCreate9call/vtable observations. DellMSVC/W4/WX269API/1066core/144FT/2468geometry/72sampler cases pass.36as ran this DLL with8KIFFinstalledasMiami; actualdevice reportsMaxTexture16384x16384, but syntheticWindowsSendInput did not successfully selectMiami. No8Ktexturecreation/render proof yet. Closed via interactiveWM_CLOSE; initial automatic restoration stopped before copying files, exacterrorunlogged. Manualguardedretry03:34:31UTC confirms95saves/stable35/originalcourt/EXE/INI/0game/API. Newlaunch36au correctly refused before mutation while adapter was not restored. Preserve failures.

36atSHA6a16e8b3e7ed9b7941fe0d9f6f2956cc5957400e7c1e577f2d1af686371bcd9c adds private bounded DIkeyboard testIPC and exact8C7CBF shot-classification call observer, leaving the original shotflag writes/results untouched. SameWindows269/nativechecks pass.36au startup encountered a deliberate fail-closed diagnostic guard: gamecreatesmultipleANSI/UnicodeDIinput factories with differentmethodpointers, invalidating the one-original-pointer assumption. Error dialog captured; nokeyboardpolls/8Kproof.36av source now uses per-vtableDIregistries and adds on-demand GPUbackbuffer capture to avoid intermittentblack desktop copies. Staging/build pending. These are compile-time-only private diagnostics, not publicAPIfeatures or shippeddriverinstallation. Current36au stop/restoration pending at this entry.

Court follow-up36aw–ba — live floor, input control and recovered texture clamp

Diagnostic36av (SHAec96d573c08270e182c0e7faf969ddf428be37698b241a459d64204754a743fc) fixed per-vtableDI factories and added original GPU backbuffer captures.36aw reached an unselected demo;41ball-launch classification evaluations match the shared nominal NCAA definition, but these calls include passes/replays and are not41FGA.36ax (SHA393c687ef50cd0dbfaa5cd1f7d2c6e2cfc4d730b64d28f6514661daa0ef64705) adds bounded bufferedDI input alongside immediate poll observations. Both compile/test on Dell with269API/1066core31guards/144FT/2468geometry/72sampler checks.

Remote interactive scheduled helpers can minimize exclusive fullscreen, lose DI acquisition and pause the game. Console/input desktop was Default, physical keyboard/mouse present; not a hardware/lock failure. Restoring window and attaching input threads establishes focus. Private section_command.py subsequently opens the existing console-session test mapping from SSH viaNtOpenSection, allowing explicit bounded key/capture commands without creating another interactive desktop task. Successful original DI polling and exact candidate/process/mapping guards are required. No driver, OS lock change, Mac package or public input API added.

36ay deliberately selected Spurs–Heat/Miami and began play, but ended before a court gameplay capture.36az selected the same fixture and produced actual GPU gameplay images at both baskets, showing measured white markings on neutral tan/green floor.92,424,816byte8KIFF source installed, but actual observed creation was4096²/10mips. Saved VIDEOSETTING_MAXTEXTURESIZE4096 was changed to8192 withADJUST_VIDEO_SETTINGS0; game rewrote max back to4096. Hardware cap16384² alone does not establish8K loading. Screens/counter trace underanalysis/court-standard/live36az; interim66classification evaluations have0analytical mismatches,12actualFGA temporally correlate with matching2/3classification. This is not an exhaustive edge-shot test or unique causal shot ID. One actual3A nearest margin37.61cm; no live on-paint equality claim.

Recovered exact original6064F5..606536 config range clamp and606680 texture selector: upper limit4096, accepted selector sizes256/512/4096; originalDE6430/DE6440 store both renderer limit fields. Research-only36ba opt-in allows8192 at two guarded CMP operands, retains4096 fallback. DLLSHAd5ae90747ed4cc93ac8a20bac6a0b6e3ec3ae4efede197b34d2e78ce0277ae4b. Dell MSVC/W4/WX build,269APItests and existing native checks pass;52new cases execute original config validation/selection and BOTH actual original renderer setters, covering invalid flags/ranges and fallback. Initial texture verifier reused Unicorn translated blocks across instruction modifications, falsely retaining old clamp; explicit translation-cache invalidation fixes oracle lifecycle. Failure/retry logs preserved. Native patch callsFlushInstructionCache as usual.8Klive creation/render remains pending at this checkpoint;36bb stages this candidate separately.

36au/aw/ay/az are closed.36az receipt04:27:34UTC confirms95saves/stable35/originalcourt/EXE/INI,0game/0APIlisteners.36bb launch in progress after that receipt; all future mutations use separate working copies/backups. User accepts leaving physical basket/arena geometry unchanged; nominal paint/scoring basis agrees, legacy constant offset remains visible. Do not label real GPU textures8K untilGetLevelDesc proves it, or label predicate calls actualshots without counter correlation.

8K GPU loading proven —36bb; startup option36bc

36bb loaded the8KIFF in selected Spurs–Heat/Miami on Dell: at04:31:18UTC originalCreateTexture requested8192²/11levels; HRESULT0,GetLevelDesc8192²andGetLevelCount11. Config8192/ADJUST0 persists. Captured original GPU backbuffer shows the measured neutral white-line floor during actual play, not just a file or simulated renderer.33ball-launch evaluations analytically match;5actualFGA correlate with the correct2/3predicate. No live on-paint edge sweep claimed. Pausing and replay navigation are recorded; in-game pause key is DIK_NUMPADENTER0x9C, standardEnter is menu confirmation, not in-game pause.36bb closed04:40:37UTC;95saves/stable35/originalcourt/EXE/INI restored,0game/API.

Factored native/external-mode/graphics.inc from the temporary patch into explicitoptionalstartup configuration: openhoops/graphics.ini [Graphics] MaximumTextureSize8192. Default4096 leaves engine instructions untouched. Unsupported values fail closed. Same originalD3D9factory/defaultHAL caps checked before either patch; unsupported8Kcaps retain original limits. Two guardedCMPoperands permit8192, preserving stock4096fallback and saved-video-cap selection. No IFF conversion or runtime video-write API implied.36bc diagnostic buildSHA d80a7229e8ee99bc51ed0bc3cfb05e5f3d4c384d57f87f756a51799d79886e0c passes269API/1066core31guards/144FT/2468geometry72sampler/52texturecases on Dell.36bd is the bounded live configuration-path regression with separately tracked/restored graphicsINI;36be is preparing a build without keyboard/GPUcapture/shot diagnostic or college test-probe macros. Current game/API active only inside36bd's automatic restoration wrapper. Originals intact.

Court follow-up closed —36bd/36be/36bf

Actual configuration-path36bd selected CPUvsCPU Spurs–Heat/Miami, loaded/rendered8192²/11mipfloor.180original ball-launch evaluations match analytic geometry,22actualFGA credits have matching nearest same-actor evaluations with0unmatched:11two-pointnegativeZ,10two-point+1three-pointpositiveZ. Combined with previous36az/36bb15+5FGA, live checks cover2/3classification and both baskets. These are temporal associations, not new causal publicshotIDs; no actualon-paint or≤5.08cmoutside attempt occurred in36bd.2468exact original-code fixtures supply boundary/mixed/body/bounds coverage; exhaustive live edge matrix remains honestly unclaimed.

Attempt to speed/high3PTsliders was refused before lease acquisition/writes due wrongpaused/nonreplayphase10. CPUvsCPUspectator ignoredNumEnter; no clock/score/position/outcome writes. Retainfailure rather than bypassguard.36bd receipt05:01:28UTC confirms95saves/stable35/originalcourt/EXE/INI, optionalgraphicsINIremoved,0game/API. CurrentDellWin11Pro10.0.26300,IntelUHD770driver32.0.101.7088; observed8KrunpeakRSS859320320bytes/private1146470400bytes. This is not a multi-match or all-hardware performance/stability guarantee.

Non-diagnostic36be DLLSHA91d31f72a885f4455fe841cc46ff5459c10b1ec7e4dfdb7bc6ae59d01c4ea4a9 passes269API/1066core31guards/144FT/2468geometry72sampler/52texturecases;70native/APIimplementation files match stagearchive. No courtDI/GPUcapture/shotobserver orcollege-testprobe macros. ExplicitgraphicsINI/defaultHALcap check is independent ofcollegeprofile; default4096 leaves original instructions unchanged. Original4096fallback remains. Unpublished44membertool/sourcebundle257469bytes SHA993d502160f568629bfa64b84ab79aebad1aefebc776877ccaf85abc209b1871;CRC/hashesverify, nogameEXE/roster/IFF/runtimebundled. AuthoringZIP3919315bytesSHAa571c055b680efc95b1ec145e765a99f4bd6f6cdbe95a94d0259e73ad4e184e9, pixels/geometryunchanged;READMEexplains8Kproof/config. Earlier ZIP retained asbuild/openhoops-ncaa-2026-27-8k-template-36ap.zip.

36bf ran this exact non-diagnosticDLL150seconds, originalonboarding skip/startup/attract reached. Read-only actualprocess checks prove both guardedCMP8192operands, unchanged4096fallbackinstruction, and both original rendererlimitfields8192; no pretendGPUtextureclaimfrommenu-onlysmoke. This complements36bd actualGPUsceneproof for samegraphicsimplementation. Automaticcleanstop05:04:41UTC:95saves/stable35/originalcourt/EXE/INI restored, graphicsfixture removed,0game/API. Native/APIbooterrornone; sourcecorpusunchanged. FinalKB/search/evidence and duplicate-capture organization in progress at this entry. Physicalhoopassets intentionallyunchangedperuser. GeneralruntimeAPIvisualalignmentflagremainsconservativebecauseunknowncurrentlyloadedIFFsarenotfingerprinted.

Final storage/cleanup checkpoint: removed only eight completed manual court-test tasks after exactactionownership checks; no recurring automation created.49originalGPUcaptureBMPs hash-verified and moved into matchingDellrunlogs,49RGB-identicalPNGscopiesretainedlocally;406428246logicalredundantBMPbytesremovedfromMacafterarchiveverification. No Macpackages/toolchains installed. Currentcode/asset/evidencehashes, sourceattribution, failures, uncertainties and both ZIPs saved; originalNBA2K14-extracted untouched. Task ends with0game/APIlisteners and reference95saves/stable35/originalcourt/EXE/INIrestored. Newnon-diagnosticcandidateandcompatible8Kcourt are staged/unpublished, not silentlyinstalledoverthereferencecopy. Remainingverificationlimit: full livearc/cornerinside/on/outsideattemptmatrix; no on-painted-bandcasefabricated.

Court authoring delivery36bg — tested IFF and lossless DDS export

User requested the actual8K one-texture IFF as an authoring base and clarification of DDS import. Reverified the supplied IFF SHA2564c1b79d1463b8bc69df70951d3ee5139a828e4485044e521147d1c9970c13c9e unchanged. Exported its existing89,478,464byte BC3 mip payload with a standard128byte legacy DXT5 DDS header: analysis/court-standard/floor36ar/ncaa-floor-8192-dxt5.dds,89,478,592bytes,SHA2560159f3ac299e8de22f0385fe948ac92e57bf1d0252ef3b482a8bc7b2817797fc.8192square/11levels through8x8; header fields/caps/Pillow recognition and exact payload equality checked. No re-encoding, court mutation, game/API launch or package installation. Repro script and exact export receipt saved beside court research; IMPORTING.md explains guide attribution, UV preservation, actual8K settings and matching college profile. Third-party editor import round-trip remains untested. One main floor-art texture does not mean the whole IFF has only one texture/material. Existing live boundary-shot verification limits remain unchanged. Added export evidence to search index; original corpus untouched.

Artwork sharing36bh — public HTTPS download from Dell

User explicitly requested internet hosting for the trusted artwork team and approved dependency on their PC. Published only an allowlisted artwork kit/preview/instructions/checksums through an outbound Cloudflare Quick Tunnel on Dell; no game EXE, adapter, API, credentials or unrelated project files exposed. ZIP4,863,874bytesSHA256286cff794bb7d1e95b79581ffae79d9b244b19e785573d2ce3eef7ca5fa835c9 contains tested8KIFF, exact DXT5/BC3 DDS, layered templateZIP, README and selected asset checksums. Full public HTTPS download matches originals; ZIP CRC/member hashes/DDS header pass. Root404, traversal400(edge rejection), POST501. Exact URL/operations/process receipt/source attribution/failures in analysis/artwork-share36bh.

Portable official cloudflared2026.10.0 installed only in Dell deps; GitHub release SHA25686aee4017b26625cee8484c113558f48effa4cd47f7aa05fcf425604e5d2b23c and valid Cloudflare Authenticode signature checked before execution. Existing Python3.13.16 serves four exact allowlisted files on127.0.0.1:8787; metrics127.0.0.1:8788. Initial SSH-spawned children died at disconnect(public530); preserved failed launch receipts, then WMI detached launcher resolved job ownership.10:20:35UTC fresh SSH inspection confirms pythonPID9672/tunnelPID1628 still running, loopback-only listeners,0game. No Mac package/daemon, Windows service/task/autostart, router/firewall change or game/API launch. This is temporary hosting: keep Dell/network on, tunnel restart changes URL, no uptime guarantee. Ownership-guarded stop helper saved. Gameplay/editor-import/edge-shot verification limits remain unchanged.

Compact court36bi/bj/bk — requested UV remap and replacement artwork delivery

User requested removing excessive square-canvas OOB padding while retaining visible colored aprons/team-name space; subsequent8K question clarified width versus total pixel count. Built assets/court-templates/ncaa-2026-27-v3:8192×4096,128×64ft affine footprint at64pixels/ft,6016×3200playing rectangle(57.373%canvas),17ft behind each endline/7ft outside each sideline. Prior square playing rectangle was5619.907×2989.320(~25%canvas). Retained original Miami floor group0 spans115.52×61.46ft; guide plane extends under stands. The new footprint includes guard/apron room rather than claiming every pixel is visible in every arena/camera. Actual original floor/player/basket positions, indices, materials, other textures and all NCAA world measurements/polygons remain unchanged. Only44main-floor second-UV pairs, primary texture/dimension and segment-size fields change. Max storedUVrounding error0.000882pixel at8K. Independent224paint-band samples,18layerORAcomposition/SVG and26assetmanifest hashes pass; API/authoring revision3JSONbyte-identical. Native rule-profile3/ABI14 and scoring constants unchanged.269existingAPItests pass onDell with compact metadata(c0c8d401c1e84cb3d439c14dff0a6eebf1a6fbc993b380bce7ad7506bd6b991c). No new Mac dependency/build.

Exact compact IFF47,685,584bytesSHA1bb75e0ca95367ba677c33ae290b7d054a1a15c8be3f6c122222480f277ef207; DDS44,739,360bytesSHA9e26d2339a074fc5391efc949c4e8852cece901039ab2bcb264aebae33cff9c6. DXT5/BC3payload44,739,232bytes exactlyhalf previous square;11levels8192×4096through8×4. Source guide hash23e83e21bae2840306e691ea6099e93b6d728023d5ac120cf5db52e96628172f preserved. Builder exact-byte/position guards and payload equality pass. Original guide attribution/BPDHoplite/NLSC105264 and printed NCAA measurements retained; earlier square assets/packages preserved.

36bj reused unchanged diagnostic36bcDLLd80a7229e8ee99bc51ed0bc3cfb05e5f3d4c384d57f87f756a51799d79886e0c. Selected Spurs–Heat/Miami through original UI, P1home.10:50:47UTC actualGPUrequest/result8192×4096,11mips,HRESULT0. Gameplay shows newlines/aprons. Original camera menu Broadcast→Skybox withzoom1,height10,reverseangleOn verifies both-end views and baseline/sidelinelettering. NumEnter ignored in observed contexts; Escape opens pause atphase18, so no APIcamera lease/write attempted. Original menus used instead; profile-save prompt selectedNo. No score/clock/position/outcome writes or legitimate final binding/export. Recorded broker retained revision2texturemetadata during this render fixture; newrevision3metadata tested separately onWindows.7117HTTPresponses,524initial503/loading,5015validsnapshots,0adapter/eventcaptureerrors. Trace194,691,776bytes retained onDell withhash in live-verification.json. Recorder bound1200sec; interactivewatchdog remained1800sec despite launchreceipt1200label, explicitly recorded instead of rewriting history. Finishfile requested clean closure after~23minutes.

Cleanup11:07:16UTC confirmsall95saves/stable35/originalf010/EXE/collegeINIrestored,graphicsfixture removed,0game/0APIlisteners. Removed only completedownedOpenHoops-Court36bjtask after action ownership checks.19GPU BMP originals hash-verified/moved toDell logs/court-standard36bj-live/gpu;19RGB-identicalPNGslocallyretained,157,594,626logicalduplicateBMPbytesremovedfromMac. Full liveedge-shotmatrix and universalarena/otherUVclaims remain unfinished; physicalhoops unchanged.

AuthoringZIP3,526,221bytesSHA6f63382ab39cf678cdc6bcf1b551a2a9921c0217015bbb5faad82b34d05f8b58. Artworkkit4,350,171bytesSHA22575ebacc6c8dc4fbf9934e8d56e6af9f51caa2b6a55b11f249faa7d4fbb12c includes matchingIFF/DDS/templateZIP/instructions/checksums. Same HTTPSdownload/previewURL now serves this revision; four exact files replaced via same-volume atomic rename after old/new hash guards, originalpublicpackarchived onDell, no tunnel restart or additional public route. Full publicHTTPSdownload/ZIPCRC/memberhashes/DDSheader and deny-path/method checks pass. ExistingDellfilehost staysrunning independentlyofMac/SSH. See analysis/artwork-share36bk and compact36bi/live36bj for exactversions/hashes/failures/limits. Originalcorpus untouched. Nextprojectwork remains college shot-reset exceptions/TVreturn/combinedrules regression, not another texture-layout change.

College completion36bl–bq — active integrated regression and reset recovery candidate

User authorized all four remaining areas: reset causes, TV exceptions/return, live court/lane/boundary/throw-in checks, and combined regulation/OT/export regression plus packaging. Read current AGENTS and implementation/work-log evidence. Original corpus and stable35 package remain untouched. Artwork server/tunnel are intentionally preserved.

36bl runs the previously verified36bc diagnostic DLL(d80a7229e8ee99bc51ed0bc3cfb05e5f3d4c384d57f87f756a51799d79886e0c) with current revision3 API definition, compact8K court and four-mark TV format/ten-minute halves. Explicit original team-selector neutral assignment selects CPU Spurs–Heat. Managed binding at599.966552734375seconds,0–0; source event boundary44. Later7 public setting commands set both OR sliders100/DR0/shooting foul75 and FT routinesOn; outcomes, scores, clocks and positions are not overridden. An attempted Space presentation skip occurred after tip and opened the ordinary pause menu at583.510437; this was an input mistake, not an engine stall. Enter resumed after recording the settings fixture. Temporary focus guard was started before that pause was recognized; it is bounded and must be removed during closeout.

Native checkpoint has shooting-team rim→OR-credit→accepted-control chains at both baskets, with20-second clocks and corrected diagnostic actor pose chain. Two first-half scheduled media breaks occurred, the first at359.8042297seconds lasting60.398seconds with a frozen clock/no allowance charge and automatic FT resumption. Actual halftime reached raw3/600seconds, qualifying fouls reset and allowance1full+2short for each team. These are active-run observations, not a closed full-match/regression pass. Windows trace remains on Dell; final result not yet available at this entry.

36bm/bn/bq statically disassemble exact preserved runtime text(SHA5dafbec541c01a91459ec797af4a5d1cc52ed6250ba426ead3baa92b4c7b22ad), using existing Dell Capstone5.0.6. Old D62E70 injury lead is ordinary timeout input and cannot identify an injury refund. AI timeout reasons5/6/7 are tactical predicates, not proven injury enums; do not label7 as injury. Original881C80 jump table reveals NBA11ft baseline/28ft-from-center sideline locations, distinct from NCAA9ft baseline/28ft-from-endline spots. Original NCAA2025–27PDF pages84/85 rendered read-only through built-in PDFKit; no package/tool installed. Web reader cannot fetch this10.8MBPDF, retained exact archived PDF remains the source.

New private native pending-rim state is owned by exact6C6DFC contact and consumed only through original official-ball control/settled inbound boundaries.36bo compiled DLL955a0f48d6732fe412fdad02c0bdf69d8d7814f37929a3d7e3f92dfa98829961 passes1066core/33guards,144FT,1928prior dead-ball,106media and1192ordinary-timeout cases.36bp adds original accepted-control serial and backcourt ten-second rearming, DLL78e5b4a034b9f7c4bf2a714a71332280af8c6b117605a84b96013ef0c12bb446 passes those existing checks. Neither installed; tests do not yet verify new reset behavior. Current source narrows the settled-inbound hook to exact call8BC59C, leaving global8BC4C0 intact; that later change is not yet built. New-case verification and live candidate integration remain required before any release claim.

Remaining gates stay open. Continue this authorized task; do not call all four done.36bl watchdog3600seconds, event recorder/focus guard2700seconds; explicit finish/cleanup needed and receipt must verify95saves/stable adapter/original court/EXE/INI,0game/API. Artwork hosting is unrelated and must stay running.

College completion36bl closed;36bt/bu integration and schema repair

36bl completed a natural ten-minute-half Spurs–Heat game, Heat40–Spurs24 (halves21–11/19–13). Four scheduled media breaks lasted60.15–60.40seconds, froze the game clock, charged no allowance and automatically returned to original FT/inbound then running play without manual keys. Six actual rim→offensive-credit→accepted-control chains at both baskets reset20seconds. Final export reconciles additive player/team totals and two logical halves; two independent consumers receive identical immutable output and duplicate acknowledgment works. Source trace records seven public settings commands, not the launcher's hardcoded gameplayWrites=0. No score/clock/position/outcome overrides. No overtime in this run; bindings classify started_mid_match because bound at599.96655seconds, not falsely whole-match events.

Found published Snapshot schema hardcoded court definition_revision2 despite current compact revision3 metadata. Schema now explicitly accepts supported2/3 and a new cross-artifact test prevents recurrence.270WindowsAPItests pass. Closed36bl traces then verify20633schema-valid snapshots(18525bound),23585unique schema-valid events,0adapter/capture/event/cursor errors. HTTP767199294bytesSHAa311d327806f333afee0966676dfa9b12a70e85aa71c78ddfa47a1f973cf20a7 and events422542942bytesSHA946eb0a877f0fa94c5197575a9f684521ef28790a37063ccb932c6f7dfed4175 remain onDell. ResultSHA c2ecf9c7dba5f067c3c99f8c5a3e036c4bf51a86fd18f7c0300c61513679c7b4. Cleanup12:28:10UTC confirms95original saves/stable35 DLL/original court/EXE/INI/0game/API; owned completed36bltasks removed.13originalGPU BMPs hash-archived onDell,13losslessRGB PNGs locally, redundantBMPs removed only after verification.

New36btDLL add59e2568e539d242b52720af3c90f2ecd2506f21a771a26f983aaa41ab31cb passes1066core/36literalguards,144FT,1928prior reset,106media,1192timeout,2882new original-control/recovery,9408original881C80/designatedspot and1536originalAP/inbound/reset cases. Harness failures/retries retained: mapped x86SEH low page; mocked unrelated logging; respected original zero-clock rejection/violation disposition. NCAA FT-line extended separator verified in official2025–27changes proposal6, rather than guessing from diagram. Exact live-timeout/settled-inbound calls narrowed; global possessionflip and builder unchanged. Backcourt recovery re-arms original10s. Pending-rim state is owned by exact rim contact, never a general ballflag. Midcourt recovery uses actor center convention; not a proven anatomical foot/ball boundary.

36bu now runs this candidate in an explicitly unbound/disposable5minute-half fixture with media disabled and new private action mapping. First original872BD0 holder placement x0/z580 succeeded; this is synthetic placement, not natural gameplay. Private actions use actual original placement/held-ball administration, permit no scores/clocks/stats/outcomes, require macro+INI, never included in release. Actual edge shots/AP-after-rim/backcourt recovery live proof still required. Watchdog3600seconds; focusguard1800seconds; explicit close/restoration needed.

Portable Ghidra12.1.4/JDK21.0.12.1+1 installed only onDell from official retained/retrieved packages with exactSHA/validEclipseAuthenticode. No Mac package, systemPATH, service or Java association changed. Initial PowerShell java-version stderr NativeCommandError retained; Start-Process exit/status logs confirm successfulversion. Targeted injury/kick ABI static investigation still pending; no numeric reason guessed as injury and no kind16 publicly labeled kick. Full college completion/package/OT gates remain open. Artwork hosting unchanged.

College36bu closed; kick identity/reset and timeout ownership/refund36cc–cf

36bu unbound5minute-half integration fixture completed Spurs42–Heat4 with36bt candidate and recorded private original872BD0 placements/DI inputs. Two initial and nine later home-shot input fixtures; nine later observations include actual2A/3A credits at negative basket, but one corner input had noFGA and center-outside placement did not guarantee foot samples outside after animation. Do not call it a completed edge matrix or legitimate final export. Space from the SSH-section helper reliably performs inbound passing in this run; the earlier Space/pause correlation involved focus-stealing scheduled helpers and is not a verified gameplay key binding. Original5s inbound violations were genuinely triggered by unattended user-side play. A private backcourt recovery request timed out; native actual_z in its timeout receipt retained the previous action's coordinate, now fixed to zero on actor0. No successful backcourt recovery fixture claimed. Closed13:20:49UTC:95saves/stable35/originalcourt/EXE/INI/0game/API, no forcedGameStop field. Focus guard ended; temporary completed tasks require ownership-checked removal. Artwork host remains live.

Targeted Dell Ghidra12.1.4 transient overlays recovered411F40 permission jump table: index16 directly reads1E85BD4, the exact Kick Ball field previously isolated in originalUI.79D9B0 queries index16 then emits original category12kind16 through940690, retains offense and schedules8CBEA0 at79DB10. This supplies a static permission→handler→record meaning bridge; no natural physical kick is claimed. New callback wrapper scopes only that scheduled continuation. Its backcourt call8CBF5D uses the original frontcourt minimum20 block when no pending rim; unrelated8CBEA0 users remain full30 in backcourt. After rim, owned recovery policy is20front/30back.36ccDLL e28043ca5e1a5159e5ec3adc785cde1c41b26ae96296ebbc8c287d72d2f11032 passes1066core/38guards,144FT,1928priorreset,106media,1192timeout and2688new conditionalcallback/kick cases. Native renderer/presentation/physics are not mocked into a live claim.

Recovered actual injury state initialization6B28B0/707D90:7430active,7434actor,7438roster node; original7A8E60 resumption clears these and can enter phase17 without calling charged-timeout8C7EF0. Old scheduler's phase17+kind≤1 inference could wrongly label that charged. Added exact4caller wrappers around original8C7EF0; require an actual one-allowance deduction before treating it as a team timeout. Cross-check active injury actor/node/team; refund only exact still-matching pre/post counts under5-14.12b, never an ordinary call simply30seconds before mark. Track first30s call separately from firstteam call. Explicit injury_timeout provenance is rule-profile revision4, same byte-layoutABI14; older profiles cannot declare new reason3 and refunded reason3 cannot declare a charge. Original engine record remains initial charge observation, current adapter allowances/active-break metadata declare the refund; no fictional source-record retraction. Native injury UI/blood simulation/physics not claimed.

36cfDLL ba4123b9690f622015ccd3d4c09aee9e97f601257326dfd90903b12a22237dab passes1066core/42guards/144FT/1928reset/106media/1192timeout and9000new original6B28B0+8C7EF0/compiled ownership/refund cases. Injury UI/type-assignment, eligibility, event recorder and dispatch are mocked; actual injury flags and original deduction execute. All271APItests pass after preserving a failed schema cross-reference assertion and fixing its traversal; canonical contract now includes profile4/injury reason. A subsequent local positive-clock guard is not yet in thisDLL and needs the next exact-source build.

Private research-only kind3 launch-contact placement added: original6DC460 real transformed samples determine a tiny geometric displacement through original872BD0 immediately before unchanged89FF10 scorer. Allows controlled inside/on-painted-band/just-outside tests without changing predicate or creditedstat/outcome. No live kind3 execution yet. It is macro+INI gated, phase10/nonreplay only and excluded release. New caller/shot-kind provenance inspection remains pending; evaluations alone are notFGA. Allfour completion gates remain active: latest live exception/geometry integration, natural-clock OT export, final regression and installable package. No newMac toolchain.

36cg combined pass;36ch/cj input oracle repair and selected fixture

Exact36cg d2355f66894594576a405f10d616d93db59c49ce3bb8b820c9d9a4b1b9a5a622 passes all named native checks, including10800ownership/refund cases with positive-clock rejection.271APItests pass. Initial aggregate reused an imported Unicorn VM and failedAP on an already-mappedSEH low page; retained failure, then each independent check ran in a fresh subprocess and passed.

36bu closed verification:12919HTTPresponses/529initial503/12390schemaSnapshots,0adapter/capture errors, lastphase19.10000retained durable events validate but are explicitly a suffix, not continuous whole-run coverage.12original GPU BMPs hash-archived onDell; local duplicates removed only after matching receipt, PNGs retained.

36ch did not establish selected gameplay: title/attract observations are not court validation. Cleanup14:03:23UTC restores95saves/stableDLL/originalcourt/EXE/INI,0game/API. Investigated private input helper instead of fabricating a completed edge matrix. Immediate polling could mark command3 before buffered key-up, and one static pulse was shared across two keyboard objects.36ci tracks pending releases per original keyboard object, even after immediate completion/cancel/new command and failed input/reacquisition. DLL748ed6e1465ab0dd8b59a3b88bb36b4067eba0a15f7b2b47ba356961ac2f7aa8 passes existing base checks +120compiled input schedules. Older36cg reproduces missing buffered key-up with one object and missing down with two objects; exact negative logs retained. Production hook source is unchanged from36cg; the fix is excluded from release builds.

36cj PID13532 began14:08:20UTC. Some early captures/valid snapshots are an unselected MIN–NY demo; no binding or legitimate export. During that demo a private fixture client was started, then ownership-guarded stopped before explicit UI selection; its incomplete evidence is not an edge pass. GPU backbuffer during transitions can lag the displayed scene: actualWindows screen-300.png proved Demo Mode and prevented treating it as selected court work. ActualSpace at title later reached Spurs–Heat/Miami team-selector with P1home (capture9); Enter100ms selected match (capture10 transitional). Fresh selected edge client has a separate output file and independent stop sentinel. It targets physical original4-point transforms at release through original872BD0 then unchanged scorer; no scored values or outcomes supplied. Keep early demo and selected run segments separate. No successful edge cases claimed at this checkpoint. Watchdog3600s/focusguard1800s; explicitclose and receipts required.

Optional committee skill was read with paseo prerequisite; no list_profiles/create_agent tool exposed and CLI lacks profiles. No committee agents created, no review claimed, no Paseo configuration/packages changed. Continue local/Dell work; no external messaging or source-chat access.

36cj final-release geometry;36ck non-diagnostic candidate

All9 positive-basket arc/rightcorner/leftcorner tests now match actual individual-playerFGA/3A credits: inside−10cm and onpaint−2.54cm are2A; outside+1cm is3A. Margin errors below0.000062cm. Original gather caller7D1FF6 is not finalrelease; proofs require7D3315/7D331C and original89FF10 decision after real6DC460 transformed contacts and872BD0 placement. Original scorer/stats/outcomes not overridden. Unproven gather-only attempts retained. Opposite-basket finalrelease matrix in progress. Disposable/unbound fixture includes explicit300s clock extensions and firsthalf0boundary; no natural-match/export claim.

Removed unconditional MediaEntryProbe code/INIread from release: now TEST_PROBES-only along with other synthetic actions. Production scheduler entry remains.36ck compiles with COLLEGE_RESEARCH/API/ENGINE_EVENTS only, no TEST_PROBES/COURT_RENDER_PROBE. Core1066/42guards pass; first FTspot harness failed missing script import path, corrected childsys.path and rerunning all independent checks. Do not claim release complete yet.

36cj closed18-case edge matrix;36ck release tests and36cl/cn boot

All18 actual final-release cases pass: arc/bothcorners × inside/onpaint/outside × bothbaskets. IndividualFGA+1 and3A0/1 agree with original predicate and independent margins; all real transformed contacts within court. edge-matrix-verification.json pins each case/caller. Failed gather-only/no-FGA attempts remain. Closed36cj16780schemaSnapshots/27971unique schemaEvents,0adapter/capturefaults/cursorgaps. Initial closed verifier used id instead of event_id and failed; corrected without changing traces. Explicit synthetic placements and clock extensions/half0boundary mean no legitimate result export.15:08:17UTC restoration95saves/stableDLL/originalcourt/EXE/INI/0game/API.

Non-diagnostic36ck61683231d2b425f2531e6cc8d21c29ad2a0a2799e84c28bd453b74f649cf175b passes all named original/compiled checks including10800timeout/injury-state cases; synthetic entry/input/action/award/arrow/lane/shot probe symbols absent. API test runner initially imported an older installed API (94tests/127failures/28errors); preserved log. Explicit stagedapi on sys.path passes all271tests. This was test runner import setup, not hidden production passes.36cl boots exact releaseDLL/API but WindowsSendInput scan-only andVK+scan do notadvanceTitle; closed/restored originals. New bounded SendInput helper uses user32 only, no driver/dependency.36cm same36ck source with COURT_RENDER_PROBE only (noTEST_PROBES) builds b59693afa918c53871bc7d8a4203ecaa63e9ca2aa2591e5c01c531d99734806a; input/render observation allowed for live regression, excluded package.36cn boot underway, no selected match/OT claimed yet.

College installer36ckc milestone complete; live acceptance remains open

User asked to finish installer checks/report before deciding next steps after the headless-input discussion. Exact productionDLL61683231d2b425f2531e6cc8d21c29ad2a0a2799e84c28bd453b74f649cf175b retains all compiled/native and271API passes. All8 isolated Windows installer/rollback cases now pass: unsupportedEXE, unknownloader, customINI, tamperedpackage, freshinstall/rollback, stable35upgrade/idempotence/rollback preserving95save hashes, lockedactivationDLL automaticrollback, editedinstalledfile rollbackrefusal. Package source/native105runtime-code files match exact36ck sourcearchive. Final candidate build/openhoops-college-dev36ckc-candidate.zip568684bytes SHA4666069ee094bd612010fc8652b8b2e3d29938f1658bd4a6c8cc7c5a79a5aef9 has159members; allmemberhashes/CRC pass. Copied toDell, unpublished, not installed overreferencegame. README/VERIFICATION include tested limits and explicit incomplete acceptance.

Failures retained: first harness blocked by existing PowerShell executionpolicy (its negativecases are not validpasses); later child invocations use perprocess ExecutionPolicyBypass, no persistentpolicy change. Installer pathguard initially rejected the legitimate My Profile.USR space; fixed. WinPS5 $null-string coercion broke File.Replace thirdargument; fixed with owned atomicpreimage path. Test harness initially failed tocachechild processhandle and treated unavailableExitCode asfailure despite actualactivation; fixedharness explicitlyrequiresrealexitstatus. No failures erased.

Closed36cn15:35:21UTC restores95saves/stableDLL/originalcourt/EXE/INI,0game/API. Input-observed run never established selectedgameplay, no binding/OT/export. Watchdog forcedprocessstop is recorded, not normalexit. WindowsSendInput(scan andVK), privateDI and combinedWindowsmessage/DI failedTitle; do notrepeatblindnavigation. Brief CDB observed16originalbufferedcalls(flags0,nonnulloutput,capacity16) fromDD66BB/DE5483: peek hypothesis not supported, no speculativeinputcodechange made. Its final breakpointbranch had syntaxerror, stdinEOF exited with -pd; debuggercleanstate checked separately. SSHsession0 cannotinspectsession1HWND, so one dualinputattempt refusedbeforewrites. Interactive version resolvedtarget butinputstillfailed. Allownedcompleted36bu/ch/cj/cl/cn/focustasks removed afteractionownershipchecks; artworkpython9672/cloudflared1628 intentionallyremain. OriginalBMPs hasharchivedDell;25redundantMacBMPs207361350bytes removed onlyafterarchivereceipt andpixel-identicalPNGverification. No Mac dependencyinstalled.

Fullfour-item signoff is stillpending: latest natural-clock collegeOT/carryover/export and rare injury/refund/AP-after-rim/backcourt liveacceptance. Compiler/original-instruction evidence isstrong butnot naturalphysicsproof. Closed18edgecases include6actualmade shots withcorrect2/3pointcredits. Nextsession: establishnormalinteractiveinput inRustDesk/physicalkeyboard, then boundedacceptancerun using currentAPI/source; preservestable35/originals andartworkhost. Currenttools do notdriveMacRustDeskwindowdirectly; SSH/screencapture/privateDI areavailable. Do notclaim naturalOT/gameplay basedonTitle/demo frames.

36cr input comparison and natural collegeOT entry;36cs/ct repeat

User confirmed ordinary Enter in RustDesk advancesTitle; Macapp uses existingSSHloopbackroute, no new install. AutomatedDI works afterTitle: HomeSpace→Spurs/Heatselector, Left→CPU neutral, Enter→actualexhibition. Readonlyinputregistry/scanmap/modifier capture stored; physicalHIDkeyboard/mouse present. Titleautomationrootcause stillunproven; no speculativepeekfix.

36cr selectedzero-score bound exhibition uses46public slider/option commands tozero shooting/foul chances/rebound settings; originaloutcomes/clocks run. Two60s halves tie0–0 and nativeOT raw5 begins59.9365349s with30s shotclock/10s backcourt. No scores/clocks/poses were written. AtOT restore, fixtureclient erroneously sent50.0 JSONfloat instead ofrequiredinteger; HTTP400rejects it. Client fails with gamepaused, lease released. Watchdog closedbeforefinalexport; attemptedresumeguard refusedafterDLL restoration.16:16:12UTC95saves/stable35/originalcourt/EXE/INI/0game/APIrestored. No fullOTexportpass claimed. Corrected fixtureclient casts onlyoriginalintegral sliderpercentages toint.

36cs same frozen36ck rule source compiled with private TEST_PROBES/COURT_RENDER_PROBE, DLL94bd34edd755a4a4bb95446811e405fd237573fdbedc6de7a23f5adbdc3bda7d.1066core/42guards+120private input schedules pass.36ct PID13156 uses thisobserver and current36ckAPI, 1800sbound, half1/media4. Actionmappingenabledbutnoactionrequestspermittedduringmanagedlegitimate match; separateunboundfixture onlyafterresult delivery. User requestedone normalEnter atfreshTitle. Exactproductionpackage remainsunchanged/unpublishedcandidate. TargetedDellGhidraA2CC90/707D90/93FBA0 inspection forremaininginjuryintegration, no execution ofuninspectedinstaller or extraMacdependencies.

36ct latest natural college overtime and immutable final delivery passed

User advanced freshTitle with ordinaryRustDeskEnter; controlledDI then selected Spurs–Heat/neutralCPU. Frozen36ck production rule source with privateobserver36cs94bd34… runs two60s halves naturally tied0–0 and startsOT59.9662094s/shot29.9662113s/backcourt9.9662113s.46temporary documented publicslider/options commands and their46restorations recorded; no scores/clocks/poses/outcomes written. Corrected integer sliderrestore succeeds. NaturalOT ends Miami4–Spurs0. CurrentResultschema, alladditiveplayer/teamtotals, exacttwohalves+OT, reconciledissue-freeledger, twoindependentconsumers, duplicateackidempotence andimmutability pass. ResultSHA0941ccb920fb49ce0d7ee8714010d9d107987eea604e61d85707f387f0642f22. Readonlyprivateactionmappingatfinal state0/completed0 proves no syntheticfixtureactionexecuted duringmanagedmatch. Priorpremature120s exportpoll expiredbeforefinish, retained separately; successfulrepeatusedunchangedgate. Whole-match eventcoverage remains separatelydeclared, notassumed.

ActualoriginalinjuryABI6B28B0 verified frominstructions: ECXactor/EDXtype/stackduration, ret4; passesoriginalnodeECX/typeEDX/duration+option0 toA2CC90 thenactor/type to93FBA0. Threealignedoriginalcallerssupplytype50/duration4. Seedname injury_context_message wasprovisional: A2CC90 modifiesrosterinjurydata, notjustUI. No liveinjurycharge/refund/automaticreturn claimfromstaticinspection. Evidence36cv/injury-abi-evidence.json.

36ct stillactive underoriginal1800s watchdog. Legitimatefinalsavedbeforeanyrarefixtureaction; anynextmatchmustbeseparate/unbound. Productioncandidateunchanged/unpublished. RemainingrareAP-after-rim/backcourtrecovery, injury/refund andnonzerofoul/timeoutcarryover gates areopen.

36ct closed; priority correction on rare reset reproductions

User correctly challenged repetition of backcourt/held-ball tests and described rim-plus-backcourt recovery and rim-plus-held-ball scenarios as exceptionally niche. Explained retained possession means the shooting team gets the AP throw-in, while arrow still flips on legal inbound touch/accepted violation; intended20front/30back reset is separate from arrow consumption. Defer chasing these live reproductions; existing compiled/original-instruction tests stand. Do not call deferred cases live-verified and do not hold practical college-feature delivery on exhaustive rare-event reproduction.

36ct legitimateOT/result success was saved before a separate unboundRematch. First rare client refused nonzero start with no writes. Its replacement waited for raw1 after halftime; ownedPID7344 stopped before action. Second-half client applied one explicit unboundclockextension to300, then API slider command was rejected with precondition_failed_or_clock_not_frozen. Failure retained; underlying rejection cause unresolved and no privateactions issued (mappingstate0/completed0 atdefer). Do not infer a successful rare fixture, or classify this as a proven API implementation bug. Earlier normalOT settings46apply/46restore allpassed.

Finishsentinel closed ownedrun.16:44:34.7459045UTC receipt verifies95originalsavehashes,stable35DLL,originalEXE/court/collegeINI,graphicsfixture removed,0game/0APIlisteners. Productionpackage/artworkhost untouched. Initial closureassertion scanned entireappend-only native log and hit historicalSYNTHETIC lines; currentprocess segment must start at lastinitialization marker and agrees with actionmapping0. Preserve failedassertion forprovenance; no additional gameplayrun needed.

API documentation/metadata closeout — October15,2026

User deferred extra uninstrumented full-game watching and declined public release packaging; requested allAPI docs updated completely. Updated currentcontract/schema/examples/nativebuildnotes and relatedKBentrypoints; old build/test logs and immutable packages are explicitly historical. Currentversions:0.2.0.dev36,HTTPv1,snapshotABI14,eventABI4,collegeprofile4,courtdefinition3. Pythonpyproject and existingeditablemetadatacache now match implementationversiondev36; no dependencyinstalled. New verificationledger andchangelog separate implementation/scenarioevidence/deferredchecks. New GET/settings entry makes guidecoverall17canonicalroutes.

Runtime descriptivecapabilitymetadata now records latestnatural36ctOT/export,earlier36blfourautomaticTVreturns and18both-endcontrolledreleases. Newlydecodedprofile4final_exports_verified=true describesreferenceexportscenarioevidence; oldprofiles1–3remainfalse/coarsehistoricalincompletelabels. Currentprofile4labelslistprecise rare-live/exhaustive-boundary/production-smoke limits instead ofdeclaringwholeTV/court/exportfeaturesmissing. Full_rulebook_verified/collegecomplete stayfalse; arbitrarycurrenttexturealignmentstayfalse. Existingresultcompleteness.rule_profile_verified followsfinal_exports_verified; its name doesnotmeanfullrulebookcertification. No historical result or fixture rewritten. Metadataonly: no native/gameplay/layout/command/routechange.

Exactsource transferred toisolatedDellapi-docs36cw (69sourcefilesverified, archiveSHA796a6bd79f74cae6c317fbf7363369caa91643d67870b424cb1f23a06e6a1c1c).272/272WindowsPython3.13.16tests pass;34canonicalschemas valid; fourcurrent/legacyprofilecases,35retainedreal36ctsnapshots andoldimmutableOTresult validate. HistoricalresultSHA0941ccb920fb49ce0d7ee8714010d9d107987eea604e61d85707f387f0642f22 unchanged. FailedfirsthashcheckwasWindowsCRLFformatting; normalizedtext/JSON unchanged. Failedsecondtestmisreadresultverificationfield andmaskedassertionviaunclosedSQLite; correctedcontractinterpretation andfinallycleanup, notgameplaycode. Failuresretained.

Read-onlyfinalDellcheck:0game/0productionAPIlistener,stable35DLLunchanged,95saves,artworkserver/tunnelalive. ExistingcandidateZIP4666069… unchanged/unpublished. Documentationlinks/fences/routecoverage and currentruntimehashparity checked. Fullreceiptanalysis/api-docs/current-verification.json; searchindexrefreshed. No new game/APIservice, DLLbuild/install, Macdependency or publicpackage. Nextproductwork remains externalroster/teamintake/directmatchlaunch whenrequested.

Internal documentation follow-up — October15,2026

User asked whether allinternaldocs were current after theAPIpass. Audited51firstpartyworkingdocs plusfrozen authoringREADMEevidence. MainAPI/projectdocs were already updated; found older startup, MacGhidra andWindowsdesktop notes stillsoundingcurrent. Markedthosemilestoneshistorical, correctedcurrentWindowsoriginalx86/x64brokerroles andaddedCURRENT-STATE.md asoneoperationalhandoff. UpdatedAGENTScheckpoint/currentplanstatus, feasibilityassessmentcontext andcurrentcourt-authoringparentguide. OldMacpaths/CUAbindings areexplicitlyhistorical; useDelltoolchains/existingSSH/RustDesk andstagecurrentAPIexplicitlyinsteadofimportingoldinstalledsource. Extra productionwatching/rareeventhunting/publicpackagingremain deferred/notrequired.

Historicalworklogs, originalsourcearchives, signed-offmanifests andversionedtemplate/packagepayloadsretaincapturetimecontents; companioncurrentguides make that distinctionexplicit. No API/gameplay/codechange, game/APIlaunch, new tests/build/install or Macdependency inthisfollow-up. Prior272Windows/34schemapassesremainexactcurrentcodeevidence. InternalMarkdownlocal-links/fenceschecked; Elan main.py:line targets validatedasfile+line references ratherthanmistakenfilenames. Searchindexrefreshed. Receiptanalysis/api-docs/internal-documentation-verification.json.

Roster capacity research and background desktop control — October15,2026

User authorized expanding ROS capacity toward800+teams/four+uniforms each and unique players. Found separate original0x28c800primary backing/import limit and64000-byte editableUTF16BE arenaA. Reported365teams/8000players/850jerseys are not proven independent row caps. Static Sigil1.6.3 inspection only; no editor modules/community installers executed. Preserved original corpus/reference-game/95saves/stable35. Current investigation records scope and evidence; no unlimited/editor-compatible/live800-team feature claim.

Opt-in macro+INI research allocates independent16MiBprimary backing without shifting inline settings/controller objects; exact guarded capacity/metadata patches retain original codecs. Import CRC uses padded destination instead of overreading small stockIFF input. Failed37gCRC instruction assembly and subsequent correction retained. Named fixtureCapacity800 SHAa645736… contains12800players/800teams/3359uniformrecords,65535charA capacity/60543used. Independent audit preserves original populated sections, verifies695addedteams each15globallydistinctassignedplayers/fouruniformrecords and teamlabels beyondstock32000char range; artwork templates are reused. Short synthetic names do not prove practical full-name capacity.

Early global serialized-capacity change blocked ordinary roster/exhibition selection. Revised37r uses adaptive capacity plus standaloneROS size admission;67compiled/nativechecks pass. Isolated37s live successfully loadedstockRoster1 butCapacity800receivedcorruptiondialog andcountsremainedstock. ResetRoster alias attempt retainedstockcounts; archivedJaoSming source describes reloadingroster.iff. All settings inthissetup areexe-local.37jPID520 exited18:52:29UTC afterdebuggerobservation;causeunresolved/no confirmedWindowscrashevent.37sPID8804closedbyowned30minwatchdog19:33:52UTC,explicitforcedstopreceipt retained. No reference files restoredfromresearch or overwritten.

Capturedprotectedoriginal217b000validator viaread-onlyRPM;schemaarrayCRC501551ae matchesfixture. NineDellofflinechecks executeoriginalheader/schema-selectioncontrolflow withnamedimportedbyteswap/zlibCRC mocks:stock/expandedacceptfullbytecount;shortbounds/alteredCRC/schema reject. Nofile-I/O/deserializationclaim. FailedGhidraoverlaybeyondmappedPEtail retained. New37zreadonlyheaderargumentobserver preservesGPR/flags/FPU/XMM andoriginalcallframe;72compiledchecks pass, DLL6309acc02cbe82be9b1f3aeff827b6b298eb8c3761c44c099511423b61ac0cb6. Internal133file sourcearchivef3fff939… isexactcurrentnative/API source, notpublicrelease. API272tests passedearlier37g,currentPythonAPIunchanged. Freshisolated37aaPID8924started19:42:13UTC/watchdog5728/deadline20:12:13UTC;actualloadobservationpending,userEnterrequestedattitle.95referencesavehashes/stable35DLLverifiedatstaging. Artworkhostingunmodified.

User askedforfasterRustDeskcontrolandabilitytoworkinotherMacwindows. CurrenttoolscontainPaseobrowserbutnodirectdesktopMCP;Paseohelp/pluginsearchfoundnosuitableRustDeskcontroller. macOSscreenrecordingpermissionenabledbyuser;freshhelperworkswithoutrestartingPaseo(otherusertasksremainactive). Builtinwindowcaptureonly~0.12–0.23s,verifiedwhileMessages/SafariownedMacfocus. WindowsguardedSendInputhelperwith--no-captureavoidsPNGtransferanddoesnotselectMacRustDesk;Dell-sidecapturefallbackavailable. Macforegroundinputrequires--foregroundandkeyboarddeliveryremainunverified. Titleautomationstillunresolved;donotrepeatblindinputorclaimitfixed. NoMacdependenciesinstalled,credentialsprinted,Paseorestartorotherchat/agentoperation.

Roster loading allocation trace and unattended title route — October15,2026

User was away and requested automated title advancement. Existing single console-free Enter route37aa was not repeatable on fullscreen37ap; Mac CG/SystemEvents and mouse attempts did not establish a reliable route. No Paseo restart, installation or other-task interruption. Isolated Config.cfg backed up under live-ax and changed only to1280x720 windowed; reference-game settings unchanged. Guarded console-free helper now supports exactly two Enter pulses two seconds apart,220ms each, with fresh focus checks before each. Fresh37ax and37bq reached Home without human input or changing Mac foreground. Paired input evidence preserves scope; timing versus window mode and universal fullscreen reliability remain unresolved. Current desktop notes use that observed route, single100ms menu keys and background RustDesk capture.

37ao actual-file-size listing fix is live effective: Capacity800 outer16777240 versus stock2672664. Windowed37ax PID10532 successfully loaded stock Roster1 at20:34:12UTC, but expanded selection had no UI/header effect. Read-only CDB captured entry into native loader4e8300 and size gate kind5/EAX1000018; later timed breakpoint attempts produced no admission/allocation result. Failed observers and execution-policy refusal retained; no policy changes. All attached CDB processes detached,game continued;37ax watchdog closed20:54:37UTC. Prior37ap explicit owned stop20:23:44UTC.

Read-only native boundary observer37bp DLL8518bb78ae26a6e49aca8a519b95a7b5a4d10a2ae1d9657e6a6f9667a4ac7129 passed99 compiled checks. Fresh37bq PID13892 read-back confirmed intended installed jumps at boot,afterTitle and after attempt.21:07:25UTC log proves expanded size admitted(value1), then original temporary read allocation returns0, with no header decode and stock runtime counts. Observation distinguishes this null-buffer failure from earlier confirmed truncated read. Exact allocator cause/threshold remains unproven. Owned explicit stop21:10:43UTC; closure.95reference save hashes and stable35DLL verified at staging; no original asset writes or release packaging.

Follow-up37bs source candidate provides VirtualAlloc only for failed native allocation of kind5/exact16MiB+24 outer payload, retaining native read/CRC/schema/decode. Both original cleanup calls check private ownership before VirtualFree and otherwise forward to native free with original ABI. Build eb2c8c30f888e9b43bcd06d0595115b2c09d7a86968b44f24ad3efc217bb2fc1 compiled; verification/live acceptance pending at this entry. Internal133source snapshot eb0e44d06d50d2a70e768e4e78a82d3bc3748de56facc06e4df8d85d53234373 is evidence, not public release. No800team/editor-compatible/unlimited capability claim.

Native expanded roster load/save/reload passed — October15,2026

37bs read fallback passed126compiled checks; fresh37bt PID6212 loaded Capacity800, full16777248byte nativeheaderCRC e9dc98d9 matched. Load acknowledgment completes original decoding; pre-ACK counts remainstock. PostACK native12800players/800teams/3359jerseys,A65535capacity/60543used,B63944. Native private buffer released21:19:58UTC. Roster UI reaches finalteam799 OH TeamM7 and distinctOH P9BT etc names beyondstocktext capacity. FirstnativeSave attempt removed isolateddestination withoutreplacement; exactpre-savebackup retained, nooriginal/referencewrites.37bt explicitownedstop recorded.

37bu DLLd00b91e5e10180360cf10836f1e4cc97ad6adaac89fed25a7c55aa09f3cbcaf2 passed152checks; separateexact-sizeprivateSave buffer andthirdcleanupcall added.133sourcearchive612b50d273653b436f4ecc9b3c40a54b623e1619341db76cdf70eb453731f85a. Fresh37bv PID8396/start21:32:23UTC/deadline22:02:23UTC deliberatelystaged fromcurrentcandidate after95referencehashes/stable35verified; removedisolatedfixture restored fromhashcheckedbackup. TitleEnterpairautomatedfourthfreshwindowedstart.

LiveSave trace21:38:45UTC proves nativebuffer0/size16777248;privatefallbackallocated. Successfullysavedpopup,physical16777248bytefilewritten;privateSavebufferreleased21:39:25UTC. Independentgame-save audit passes alloriginalpopulatedsectionsbit-preserved,800teams/12800players/3359jerseys,695appendedteams each15distinctassignedplayers/fourjerseys,121086editabletextbytes includingall695teamnames beyondstock32000chars. GamesaveSHAf674ab364de8a14ebd19c9a43d8f5120b31d53a54ecb3cc6033473b38522e77f,sourcefixturea645736… unchanged infixture-h andpre-savebackups. Saved evidence copiedonDell tolive-bv/Capacity800-game-saved.ROS. StockreloadthenACK proves105/1665/579; subsequentdiskgamesavereloadCRC e5b0fb2e matches. ACK21:43:42UTC restores800/12800/3359/A65535used60543,privatebufferreleased. This is actualnativeexpandedload/save/reload evidence, noteditorcompatibility/full-name/gameplay certification.

Consolefreeinput nowallowsbounded1–8navigationsteps only, checkingfocusbeforeeach; committingEnter/Space remain single exceptexplicitTitlepair. VerifiedtwoUpMainMenu→Options andthreeDownOptions→Load/Save/filelistnavigation. Macfocus unchanged. Next scopes:uniformselection/gameplay and realisticfull-namecapacity; currentfixture names remain shortsynthetic/reusedart. CurrentpublicAPI versions unchanged, no release package.

Full-name capacity target and unattended startup verified — October 15, 2026

The opt-in roster prototype now passes native load/save and fresh-process reload with905teams/13665players/3779jerseys. College800 preserves105originalteams and adds800teams with15globallydistinctassignedplayers and4uniformrecords each;12000appended full-length synthetic names survive the independent game-written-file audit. A uses178592UTF16characters/357184bytes in a262144character/512KiBcapacity, across three64Kcharacterchunks. Original arenaB remains63944characters. Finite primary backing16MiB; configured Amaximum2MiB has compiled boundary evidence only. Reported365/8000/850 ceilings were not independently proven hard row caps.

37bx extends A handles through unused primary stamps0131–013f while retaining012f/0130 native behavior. Both pointer/handle entryframes are guarded, preserveGPR/flags/FXstate and retain original fallbacks. DLLc93fa3ff7ba4ccd955f8f30435e560ef3e11d9826a29d17477e9c52fb8c4c08d passes196compiled/original-instruction checks, with namedWin32/CRC/sizing sinks and documented limits. All134currentnative/API sourcefiles hash-match sourcearchive707decc9c427a71e944c5ebb497e2115477b4800d62a4379194423efb8289dbb. CurrentpublicAPI unchanged; earlier272WindowsAPIpasses remain applicable, not rerun merely for docs/input changes. PublicAPI version0.2.0.dev36/ABI14/eventABI4 unchanged; no public roster endpoint/capability.

Fresh37bz PID9016 loaded CapacityFull800totalteams and College800905totalteams with intact original/appended names. Native menu save succeeded and private savebuffer released22:13:40UTC. Game-saved College800SHAec011bc2889a853075ba80b0b1d0603c518a107df0ab34dc598f2c47c8964516 independently preserves alloriginalpopulatedsections,12000assignednames/players and4uniformspernewteam. OriginalfixtureSHAcb0789c6a6bd2406eb2fe402feca1f0b10d2994d50b14c1154e2f54c098cea62 and pre-save copy remain. An earlier runtime diagnostic used serialized-header offsets in decoded native records, mislabeling firstnames; corrected native offsets0/4 produce correct names. Failed diagnostic retained; no sourcecodec change needed.

Fresh37ca PID12048/start22:15:35UTC loaded the game-written file with originalheaderCRC2d84be8b matching. PostACK905/13665/3779 and names throughEmmanuelMontgomeryAJK pass. QuickGame reaches finalteam904 OpenHoopsUniversityP4. Helpnormal6 shows literalcomma/period jersey controls; arrows did not switchuniforms. Period pulses produce red/white/white/white/red, consistent with four positions fromfourretainedstocktexture recordsuh100/ua100/uh000/ua000; selectedindex was not directly read. Reduniform carries into match presentation. QuickGame preview retains templateplayernames, while in-match presentation/nativeframe show distinctassignedfullnames. ReadonlyABI14frame atclock334.2813seconds/Spurs2–OpenHoops0 observes12distinctaddedteamactiveplayers,5oncourt;15storedplayers separatelyaudited. No universal12playercap inferred. Preparationidentity unavailable;zeroIDs/emptyteamnames are notidentityevidence. This is shortstartup/play evidence, notfullgameorassetcertification. Reusedart has visiblecrowdtextureissue.

TitleEnterpair works on sixfreshwindowed starts37ax/bq/bt/bv/bz/ca with nohumaninput/Macfocuschange. Windowed1280x720 and timing changedtogether; fullscreen/rootcause remainsunproven. Currentconsolefreehelper supports guarded1–8navigationsteps and singlecommits, plus observed normal6/comma/period. HelperSHA6aa71e1d1c64dd3b5b5085bfa71c660bf0d55dbc8e2dcc979307a4e7e6c88009. Macwindowcapture remains~0.13–0.2seconds without selectingRustDesk; noPaseorestart/dependencyinstall. A firstmappingread viaSSHsession0 could notsee session1Localmapping; existingpythonw interactive readonly task succeeds, noHTTPbrokerlaunch.

37bvshort-namegameplay and37bz/37ca were explicitlyownedstopped, notcrashes.37ca close22:33:12UTC;22:33:25UTC preservation verifies95originalsavehashes/stable35DLL/originalEXE,0game/0CDB/0productionAPIlistener, artPython9672/tunnel1628alive, fixture/pre-save/native-saved/configbackup hashesunchanged. Completedresearchtasks removed onlyafter idle/actionownership checks; historical37jexitcause remainsunresolved evenafter removing itsidle tasks. Isolatedroster-game37j retains currentprivatecandidate/windowedconfig; stablegame notupgraded. Noasset/hardlinkwrite or publicreleasepackage. Combined receipt and current scope/limits are handoff entrypoints. Remainingintegration:actualaffectedroster/REDMC-Sigil editing/customart andcareer-exhibitiontransitions, notrarecollegerulehunting.

Independent deep roster editor and combined native acceptance — October 16, 2026 UTC

The user authorized continuing capacity work and building an editor as needed, with the depth of RED MC rather than a minimal player/team grid. Independent Windows editor 0.1.0.dev5 is staged on the Dell at C:\Users\brent\OpenHoops\roster-editor40k\OpenHoopsRoster.exe. The complete named RED MC NBA 2K14 roster-column inventory is represented across39 tables, including356 Player columns with ID. This is inventory coverage, not certification of every field meaning or full RED MC workflow/file-format parity. See usage, verification ledger and combined receipt.

Implemented authoring includes original field groups/descriptions, field/name/ID filters, full-table sorting before pagination, CSV import/export, clipboard paste, global set/add/multiply, reference navigation,30 transactional undo/redo states, bounded TURK declarations/expressions/loops/conditionals/assignments, team/row cloning, guarded reference-aware moves/deletion, and cross-roster team import. Import copies assigned players and all uniforms plus linked staff, arena, actual/default playbooks, colleges, headshapes, stats, records, awards and boosts. It re-interns text and allocates identities; unresolved external identity matches refuse the whole transaction. Physical team/playbook row changes and the free-agent singleton remain protected. Common player dropdowns use22 explicit original enum associations across five tables; unknown codes remain raw-editable. RGB color edits preserve separately stored alpha. CSV exports numeric enum codes and accepts supported labels on input.

Layout work retained supplied RED MC/Sigil attribution, hashes, licenses and original packages. Bounded Dell emulation of original encoders/serializers supported packed reference/scalar layouts; installer and DLL initialization were not executed. Corrected mappings include full-width headshape/appearance references, signed boosts/magnitude, split minutes/trades, ratings and independent team identifiers. Typed reference slots include unnamed sections. The writer preserves opaque bits and source data, checks framing/schema/CRC/bounds, refuses stale sources/existing destinations, and saves a new uppercase.ROS copy. No public HTTP service or native attachment is required by the editor.

Current40k source manifest archiveSHA256 e4a0c49d3b53a25f61b63a3cfa87675ef3fe6f199ed98dd2f9011e7070e257e8; compiledEXE SHA256 7ef31b42420b4bb9dc58c643f08f27c9f588a53c53a5c7d35b42215c646996c0. 76 Windows tests pass with preserved stock/expanded fixture hashes. All68 non-README manifest entries match current source; current README differs only for final documentation. Native/API134 files still hash-match37bx; no API version change or rerun of the existing272 API/34schema acceptance was needed.

The combined corrected40b specimen contains906 teams,13,680 players and3,790 uniforms:105 originals,800 clones with15 separate assigned player records/four uniforms each, and one imported team with15 players/all11 uniforms. The import adds159 linked records, including paired actual/default playbooks. A player move updates40,005 references; an unused clone deletion leaves counts unchanged. All13,680 ASAs are unique;12,000 new full-length synthetic name pairs are distinct. Editable text uses743,714 bytes across six64K-character chunks within a1MiB A capacity. Stock artwork/attributes are templates, not801 finished community teams.

Native37ch completed load acknowledgment with all13,680 name pairs and27,360 ASA/ID2 values independently verified in game memory, then saved successfully. Every named editor-table record remained unchanged; native save additionally normalized derived boostpool46 to1,995 entries. Game-writtenAllFixed SHA256 73140bbb51ae160f3d24b73269c0da253426adc5aa1860c3baa65f27ce886b28 passed fresh-process37ci reload/read-back. Both games were explicitly stopped as owned research runs. Dev4 then maintained pool46 directly and generatedAllReady SHA256 74d23e93f55141aba719b2939c56c63fa855c09c33d7a506d11f5b874891ca48, matching every meaningful native-saved bit; CRC/unused padding differ because the editor retains opaque tail data and native save clears it. Dev5 adds field presentation and labeled input and retains current writer test coverage. No separate liveAllReady filename or combined full-match certification is claimed. Older37ca last-team gameplay/uniform evidence remains separate.

The first combined39w specimen failed after the load-success acknowledgment in37cf. Debug retry37cg captured privileged-instruction exceptionc0000096 without a useful complete stack, then was explicitly stopped. The failed specimen/logs remain. Two concrete defects were corrected: cumulative logical-end rounding during non-byte-aligned append/delete and unpaired imported actual/default playbooks. The corrected specimen passed, without isolating one fix as the sole failure cause. Additional regressions cover derived2,000-slot boost-list maintenance, raw free-agent edits before text-arena growth, and unused ASA allocation reserving dormant boosts/awards/trades.

Final GUI40l ran the exact40k client at05:07–05:23UTC. Original field groups, position dropdown0→1, and the nativeRGB dialogEBEBEB→12AB34 passed rendered checks; undo restored zero pending operations and source hash unchanged. One earlier canceled same-value edit generated a no-op transaction, so the position check required two undos; retained receipts distinguish that from two actual value changes. Restored GUI and normal closure are current evidence. GUI40l did not save; earlier39d independently supplies real GUI edit/save/read-back and39x field-filter evidence. Alpha preservation is a writer-test check.

Finite limits remain16MiB primary backing/twoMiB maximum A text,16-bit row handles,14-bit transaction-compatible automaticASA allocation,20 stored team roster slots,1,000 free-agent slots and2,000 verified boost handles. Live text evidence is743,714 bytes, not the maximum twoMiB. Base ratings do not consume boost slots. No separate365/8000/850 hard row caps were established. Full RED MC UI/workflow parity, career/association/playoff/draft-class containers, IFF editing, undocumented enum labels, unrestricted team/playbook rearrangement, arbitrary unmatched identity merges and actual affected-community-roster/custom-art acceptance remain open. Standalone import does not add automatic public in-game intake/selection/launch.

Final preservation40p at05:26:55UTC verifies all95 original saves, stable35 adapter and originalEXE unchanged,0 game/CDB/editor workers/no productionAPI listener, artworkPython9672/tunnel1628 alive and original frozen fixtures/settings backup unchanged. Thirteen completed owned tasks were removed cumulatively after closure/action checks (twelve40h plusGUI40l in40p); no unrelated tasks were removed. Stable reference-game remains35 and isolatedroster-game37j retains37bx. Mac activity was editing/storage/SSH/RustDesk control; builds/tests/game/debugging stayed on Dell. No new public release package, API endpoint, extra Mac dependency, agent delegation or deferred rare college testing.

Modern roster workspace, diagnostics and extension metadata — October16,2026

The user authorized useful additions while away, a friendlier UI retaining the general tables/layout, and asked about fields for later hook/presentation features. Independent editor0.1.0.dev6 is now staged at Dell roster-editor41f\OpenHoopsRoster.exe, SHA2567c7b44a677e1709bbff48e251914ebacc7ad1da0ce4bb6a289feff226a70fac4. Source41f manifest archive04f316949418f40015b74b71f2bf300184c7bfebab779cd81adf636697cbfb6d identifies72 current files. Native/API134 files still match37bx. No game, DLL build, productionAPI or public release was added in this pass.

The rendered workspace keeps all39 tables and original field groups, adding common table tabs, grouped File/Edit/Roster/Tools menus, a shorter primary toolbar, clearer grid styles and a field inspector. Original deep editing/TURK/import/reference operations remain available. Report-header clipping found visually was corrected in final41f. Same-value edits no longer create empty undo transactions. GUI CSV export uses all matching rows and visible columns, including ID; CLI export remains full-table by default.

Health checks inspect verified typed links and packed indices, text decoding, duplicate ASA identities, stored roster membership and selected capacities without automatic repairs. Stock/combined scan reports0 errors/warnings across140,456/625,304 checked references,0.157/0.833seconds. These are specific editor checks, not complete native game-mode or NCAA certification. Change review compares the current document with an immutable opened state; comparison with another roster is also available. Named before/after values, row additions/deletions, metadata and unmapped-bit changes are reported by physical row ID. It does not guess entity matches. Details are bounded to2000 changes/1000 health findings while complete counts remain; reports can be exported as JSON and findings opened at their current record.

Extra-field format1 stores optional namespaced text/number/boolean/null values in a .ROS.openhoops.json companion, bound to the exact roster SHA256/size. Metadata-only changes consume no native text and leave ROS bytes identical. Edits share undo/redo; row moves remap metadata and deletion/undo removes/restores it. Clones/imports start without source metadata to avoid copying external identities. Save checks both sources for staleness, refuses existing outputs, publishes the companion before ROS and reads back both. Handled failures remove only outputs owned by that operation; power-loss atomicity and native-save reconciliation remain explicit limits. Current native hook and public API do not consume these fields. This is a future-reader authoring foundation, not custom in-game presentation or arbitrary callbacks.

101 Windows tests pass on exact41c writer/reference/test source. Final41f only adjusts C# header sizing and current README; acceptance proof verifies the other70 files against the accepted stage and identifies its separate compilation. Prior41a had a local-variable compile conflict;41b had one incorrect test assumption that edited arenaA while the stock name lived in arenaB. Both failed snapshots/logs remain;41c corrects them. No serializer defect was concealed or game test implied.

GUI41d verified metadata edit/review and undo to zero changes, then normal closure. Exact final41f GUI41g rendered health and a real extra-field edit/review, then saved/read back GuiMeta. Independent read-back proves exactly org.openhoops.ui.display_name changed from Presentation test to Modern display name, roster-level theme unchanged, native ROS SHA74d23e93f55141aba719b2939c56c63fa855c09c33d7a506d11f5b874891ca48 byte-identical, and the source pair unchanged. New companion SHA5b86c22acc6260bc4a237cafee08a1bddfcee3d178e9f2c8f9f8d3131e6d5bd1. Final save popup needed guarded physical Enter after posted native clicks failed; the saved-revision caption and normal close then passed. UI helper failures, source-hash guard rejection of a malformed generated launcher and earlier temporary attempts are retained. Mac focus was not changed by captures.

Final09:58:35UTC preservation verifies95 original saves/stable35/originalEXE,0 game/debugger/editor workers/no productionAPI listener, retained frozen fixtures/settings backup and artworkPython9672/tunnel1628 alive. Both owned editor runs closed normally and their two completed guarded tasks were removed; cumulative15 completed research-run tasks removed including prior13. Existing source/candidate archives remain historical evidence. No agents, recurring automation or extra Mac dependencies were created. All builds/tests/UI execution ran on Dell; Mac work was editing/storage/control. Combined dev6 receipt is the new handoff. Earlier906-team native load/save/reload remains scoped to37ch/37ci; this pass does not claim a fresh native game run or full RED MC parity.

Hosted roster editor and combined Windows hook preview — October16,2026

The user requested a hosted copy for roster editors, a complete current hook with college rules and an install guide, choosing temporary Dell preview links. That instruction supersedes the earlier packaging deferral; prior candidate archives/manifests retain their original bytes. Distribution handoff records the public page, two immutable ZIP hashes, install/editor/SDK guides and bounded operations. Public editor0.1.0.dev7 prefers its bundled runtime; the API remains0.2.0.dev36/HTTPv1/snapshotABI14/eventABI4, collegeprofile4/courtdefinition3.

Exact-source stage42a on Dell freshly compiled the x86 combined hook without private college-test/court-render probes and the x64 atomic helper. DLL SHA c44cefa04d491032cd5800ab5daf18691bb0d9cd02aa787b880930f9295cc1f9; editor EXE ec9499d897ed29fb9be4fe9cdc39a3cfc13f4f0773b964152b2e4a6d45207bbe. 101 editor tests use the actual public catalog/worker/interpreter; 272 API tests use the shipped SDK/runtime/helper; 196 compiled checks retain their explicit mock-sink limits. 11 installer cases cover unsupported/unknown/tampered inputs, custom configuration refusal, upgrade/idempotence/rollback, locked activation recovery, paths with spaces and verified new-folder save import preserving both copies.

Both archives include the official embedded Python license, offline HTML guide, file inventory and scoped verification. No game executable/assets/roster/profile/credentials or supplied RED MC/Sigil parts are redistributed. The independent public catalog retains all39 tables/356 Players columns with factual layouts/common dropdowns and OpenHoops-authored help. Long nickname labels remain editable stored codes. Full RED MC workflow/container parity remains open. Relocated GUI outside the project tree uses its bundled Python and no reference folder; rendered health found0 errors/warnings across625,304 references. It closed normally. Previous41g supplies actual metadata edit/save/pair read-back separately. Companion fields still have no native consumer.

Fresh acceptance42g installed the published hook ZIP into new isolated distribution-game42d, preserving the working game. Native loading of Preview906 reached906 teams/13,680 players/3,790 jerseys. Normal menu input started San Antonio–Miami; rendered early gameplay and the shipped API broker agree on a running first half. Authenticated read-only HTTP at isolated loopback27615 reports24 players, ABI14/profile4,1200-second halves/300-second OT/fullshot30 seconds, and game clock1151.86. No API commands/private synthetic gameplay actions were sent. This is short combined startup/coexistence evidence, not another full-match, rare-rule, maximum-size, custom-art or every-mode certification. Prior capacity native save/fresh reload and natural college OT/export retain their original scope.

Initial detached hosting failed before starting a service because script-block invocation lacked PSScriptRoot; corrected42g invokes the actual file. Initial game staging stopped before installation because windowed Config.cfg belongs in saves; the continuation verified original/copied saves before using the correct path. A first mapping launcher referenced an old helper and produced no new proof; boot2 used the explicitly packaged layout. API runner focus blocked two input attempts safely; its verified owned console was minimized and guarded game input resumed. A first GUI-close attempt did not dismiss the health dialog; its Close button then normal main-window closure succeeded. Failed scripts/logs remain, with no failed attempt presented as a pass.

HTTPS verification downloaded both ZIPs and matched SHA256/CRC, checked206 range responses and rejected private paths. Native Paseo rendered the public page and install guide. The random-route allowlist on8790 has its own quick tunnel/metrics8791; the local game API and project directories are not exposed. Publication-time ZIP verification stays unchanged; the later hosted page/details add42g acceptance. Only the new download Python server was refreshed with no active transfers; tunnel11780 and URLs stayed unchanged. Final Python1336 is a dated identity; runtime.json is authoritative. Existing artwork Python9672/tunnel1628 and8787/8788/URL were preserved.

Final12:03:20UTC preservation42h verifies all95 original saves/stable35/originalEXE, unchanged frozen roster fixture, zero game/debugger/API listeners and normal editor closure. The finite owned game/API watchdogs explicitly stopped after the successful smoke, not a crash; three completed owned run tasks were removed after action checks. Preview downloads remain running. No agents, recurring automation, extra Mac dependencies or deferred rare-rule testing were added. Builds/tests/game/UI execution ran on Dell; Mac activity was editing/storage/SSH/RustDesk control. The private42a source archive is not hosted and does not claim to include later SDK/hosting helpers.

Ultrawide preview2 completed — October16,2026, documentation closeout

The user-authorized native21:9/32:9 work is published in immutable preview2. Ultrawide ledger replaces its provisional18:02 checkpoint with accepted paired perspective/GUI correction and narrow ortho eligibility. Nominal focal restoration, fixed-target exclusions and full physical viewport remain. Broad ortho squeeze/square-target regression and physical-viewport stale strips are retained as rejected experiments. Frozen43u source SHA4f2690fcdcf6e6ba94390e35969d04d96c38ec6ff4057012ecf1f50ff95e4849; DLL7d60ea2ef598dc2e663c712a5e2aa1f1f62c55e58c5a763aa8cb84fe115c1cc6; ZIPcc70cb767a1acfc9d07671b45daa97e9573634932ee2c9d0cc8332b81a528198.127 compiled ultrawide/196 native/11 installer cases pass;272 API tests reused only for byte-identical shipped SDK/runtime. Editor dev7 unchanged. Actual3440×1440/5120×1440 GPU targets have scoped menus/Lineup/Defensive Settings/pointer/scroll/HUD/pause evidence. Physical monitor remains1920×1080; no physical ultrawide/fullscreen/refresh/device-reset certification.16 captured cameras exclude rejected Coach View.

Final ZIP acceptance43w passes actual installation/hash verification and original-rules/college early gameplay, bundled API ABI14/profile4/zero errors/advancing clocks. HTTPS43z passes full ZIP/hash/range/private-path checks. Publication refreshed only preview Python4976, retaining tunnel11780/URLs and old ZIPs/artwork. Native Paseo rendered the updated share page. Roll back verified preview1 installation before preview2; preserve custom INIs separately. No new full-match claim. This entry closes stale working documentation; it does not rewrite old evidence or republish packages.

External match preparation implemented — October16,2026

The user authorized research/development before direct launch, including all Game Options entries, custom participants/uniforms/venue and lineup/rotation preparation. They confirmed no community roster is available. Stock/generated fixtures are sufficient; real affected-roster/custom-art acceptance is a limit, not a blocker. Current preparation ledger, API guide, writer format, combined receipt44f.

Source API0.2.0.dev37/HTTPv1 appends snapshotABI15 (Shared65416bytes), retaining eventABI4/profile4/court3. Thirteen runtime controls cover all nine Game Options entries plus both teams/uniforms.64-row catalog pages expose loaded rows/graphics compatibility without enlarging per-frame catalogs. IDs are physical loaded rows, not permanent external identities; legacy team.id graphics IDs/raw game_style_code remain deprecated compatibility fields. Original Game Style9A5E50 transition applies both slider banks with refresh/side state preserved. Team setters resolve native default uniforms; SDK order is style→teams→uniforms→original settings. Public client exports strict versioned plans, preflights every requested choice before lease/writes, checks run/catalog throughout, waits for readback and preserves failure receipts. Sequential success can remain after later failure; no atomic rollback/persistence/loader/launch claim.

Separate source-only writer prepares a new hash-bound ROS and authoring receipt with unchanged membership, requested roster order/five situational starters and native MinsAsg preferences0–48. Overriding rotation-table entries/shared participants/invalid permutations/stale sources/existing outputs refuse. Native preferences do not guarantee substitution schedules. Published editor GUI/dev7 ZIP is unchanged; companion extra fields still have no native consumer.

Frozen44c source ZIP710d8e8462a3162b80cca500042fdba8c363058b7870aacf7e552f9daa236592/124files; non-probe MSVC19.51 DLL07d6e527c53dc4fd0adefe758088fc7c6091b7c3dee30f949f9ce0d682ea0f3e.307 exact-source Windows API tests,30 compiled preparation/catalog cases,116 Windows writer tests (101existing+15new),35 schemas including immutable historical-result compatibility pass. Writer44d source ZIP2d87c4ee2c20c3fb71727a71156adaf4bf5fd0129c3cdb1e1538e4348b5a55dd/36files excludes separately retained private reference inputs. Compiled harness mocks UTF conversion/default-uniform search/preset banks; live integration separately proves game-thread use/rendering/startup. Implementation files still hash-match frozen accepted inputs; final Markdown documentation differs explicitly.

Live44c independent HTTP client applied all13 controls:76ers–Bucks, uniforms62/82, New Orleans, Simulation, All-Star, speed51, quarter4, fatigue/injuries off, Pelicans/Suns books. Native preset read matches all126 bank values. Original menu options/books match; one research Enter starts a game on requested court/in requested alternates, with clock238.716→179.474seconds. Quick Game3D uniform previews can retain default art; actual match uniform selection passed. This limitation remains documented, not silently patched.

Live44e manually loaded generated Prepared905 SHA971c764f4aa49b43751538b5f8b5bb0e0b01dda6d04f8dfd3392be130811ee72:905teams/13665players/3779uniforms. Public catalog selection of final teams903/904 and uniforms3771/3776 passed. After manual Start, every roster slot, four32/10-minute preferences and both requested five-player on-court name sets match native/API reads. Match-start presentation reports ABI15/zero errors/college half180,OT60,shot30 despite generic quarter5. HalfMinutes still comes from exe-local college INI; no new HTTP duration writer. This is startup evidence, not a full match, actual rotation schedule, arbitrary assets or another export/rare-rule certification.

Rejected44b attempts remain: embedded Python ignores PYTHONPATH and initially imported installed-old modules; explicit sys.path/path/version assertions corrected this. Compiled team verification exposed wrong player stride238, corrected to native1E4 before candidate game use. Legacy ingestion fixture reused sample1 and was correctly ignored, corrected tosample2. First schema validator named nonexistent CommandReceipt; accepted run uses Receipt. Closeout manifest paths for roster source are relative to roster-editor, corrected before receipt creation. Failures are retained/not counted as passes. Original programs/community installers were not executed.

Owned44a/44c/44e games/API were intentionally stopped, not crashes. 20:52UTC final preservation44f verifies95 original saves/stable35/originalEXE, retained/generated fixture hashes, zero game/debugger/API listeners, independent artwork9672/1628 and preview4976/11780 alive. Six completed preparation tasks removed after idle/action identity checks; older ultrawide tasks remain idle/untouched. Source37/ABI15 stays private/isolated; public preview2 remains36/ABI14 and stable35 is not upgraded. No new ZIP publication, agents, recurring automation, Mac dependencies/builds/tests or deferred rare-rule hunting. Mac work was editing/storage/SSH/RustDesk control; all game/build/test execution used Dell. Next: automatic roster intake/startup, college startup configuration, pre-tip binding and direct launch through the same public architecture; loading/Start currently remain manual.

API roster intake/loading and direct exhibition Start — October16,2026

The user explicitly authorized completing the external-tool flow, supplying the roster through the API and making Start jump into native loading while skipping team-selection navigation. Launch ledger records API0.2.0.dev38/HTTPv1/snapshotABI16, unchanged eventABI4/profile4/court3, and the independent public SDK. ROS upload/local import creates a hash-bound private copy without changing its source; original native decoder/reset/selection handlers load it on the game thread. Native ordinary-exhibition factory/GUI loading transition implement Start from Home or Quick. Exact leases/run/catalog/revisions/loaded SHA, native rechecks, journaled command IDs and indeterminate outcomes remain explicit. There is no first-party-only runner dependency.

Frozen45r implementation archive099433229d7ec4d9f8b8524e396599bbe2bcd63262a86e6e50e223fc17637a46 identifies130 files. Non-probe native45m DLL6260d5df577082adb233dc3a7c652c413c1f15a9b3f692fc239a29980e035d7e compiles with MSVC19.51 warnings-as-errors; every native input matches45r. API imports/tests assert exact45r paths/version.345 Windows API tests/39 schemas pass, including actual command bodies, live launch/intake/preparation/snapshot/receipts and immutable historical-result compatibility. Later documentation changes are separate from frozen implementation inputs; no historical archive is overwritten.

Stock45g public upload/load from Home verifies105teams/1665players/579uniforms and exact file SHA. Thirteen controls apply, then native Start directly reaches presentation/live phase10, four-minute clock240→129.4605, requested alternates and Hawes/Ridnour starters, zero errors. Identical load/Start retries return original receipts. Fresh45r uses public --launch-game and launch_match without manual input/research key tasks: guarded intro/title acknowledgement, then Prepared905 upload/load (905/13665/3779), final rows903/904, uniforms3771/3776, arena18/books18/23 and all original options. First phase4 snapshot matches ten starters; native memory verifies every roster slot/four32/10-minute preferences. College half180/OT60/shot30 coexist with generic quarter5. Rendered early gameplay passes. Existing phase10 managed identity/result delivery remains; pre-tip binding is not newly claimed.

The startup helper is opt-in, same signed-in Windows session, supported-executable checked and bounded. It uses Windows input only for exact intro/title states; load/Start call native handlers. Opening movies do not pump the API publisher, so a private read-only owned-process screen observation guards startup while native mutation freshness remains enforced. Normal API attachment sends no keys. Source45p reached Home unaided after its short deadline;45r allows240seconds for bootstrap/300seconds for SDK readiness and passes with two acknowledgements. No general fullscreen/other-PC startup guarantee is claimed.

Rejected45f payload offset/table counts, pre-Home45g refusals,45h unread-body HTTP reset,45k intro omission and45m stale-movie gate remain recorded. The corrected decoder stream starts at file24 and uniforms are section26.45k research watchdog initially used Get-Process name instead of Id; ownership-checked explicit recovery closed it, and later watchdogs use -Id. A generated-team crowd-material defect is visible in45r and the earlier manually started44e screenshot; it predates direct Start. Matching custom art remains unavailable. No safe asset hot-swap, arbitrary callbacks, authoritative legal ball state, full-game/export/rare-rule recertification or native companion-field consumer is added.

Private development integration remains separate from public preview2/API36/ABI14, editor dev7 and stable35. Original95 saves, supplied materials, backups and both hosts are preserved; no new public package, agents or recurring automation. Mac work was editing/storage/SSH/RustDesk; all compilation/tests/game/debugging ran on Dell. Final preservation and combined acceptance record closure and scoped evidence.

Native Quick startup and managed loading — October17,2026

The user requested neutral app-customizable loading, native intro/title skipping and normal EXE startup directly into Quick Game. Development39/ABI17 implements those separate visible paths without generated startup/menu input. Guarded native patches retain required asset/profile/controller initialization, bypass the opening wait and complete title confirmation after profile initialization returns. Normal launch exposes Quick; managed launch prepares at Home under the native D3D9 loading cover and reveals only a match requested through accepted Start. Present renders/observes; GUI transitions stay on the original update thread, with one seqlock publisher. Original EXE files remain unchanged.

Final134-input archive46z SHA3542ba7b6c6c507c6e19340e097c2c6a3e51a30f4d466171692551347996a254 and non-probe DLLc14d0579869fe7d50ffbaad9f3c608b5407380299e28795a830127a3eadc274f compile with MSVC19.51 warnings-as-errors.355 exact-source Windows API tests/41 schemas pass, including actual15-command live launch records, branding and immutable historical-result compatibility. Normal46zb reaches Quick without input; a later guarded picker-control check changes Miami to Utah. Branded46za loads905teams/13665players/3779uniforms, all13 settings and requested final teams/starters, with correct SHA/college clocks, zero errors and acknowledgements0. Native-startup ledger contains screenshots, manifests and limits.

Earlier title callbacks before profile completion lost their confirmation when native profile UI reset state. Asset-drain mode1 also retained an opening/input wait; mode0 preserves asset readiness while bypassing that wait. Early native callbacks from the render thread were discarded. Branded46v/46w decoded the expanded roster successfully at Quick but exited afterward; CDB observed native null readCBC651. Current broker/native guards reject roster.load from Quick; managed startup stays at covered Home before preview UI creation. This bounds the unsafe context without claiming all UI ownership internals are recovered. Earlier successful stock46s/normal46q remain earlier-binary evidence, not final46z certification. A missing backup-helper stage refused before mutation; a previous disk-full stage and mistakenly launched older DLL are explicitly excluded. Immutable session46 backup hardlink dedup preserved every retained content hash and did not link mutable game saves.

Version1 app branding freezes title/subtitle, colors and local image copies in private state before creating the child. GDI+ BMP logo/background live rendering passes; other permitted image encodings are not all certified. ABI17 appends startup flags to ABI16; HTTPv1/eventABI4/profile4/court3 remain. Public preview2/API36, editor dev7, stable35, original95 saves and independent artwork/download hosting remain separate. No public package is published. Fullscreen/device resets, other-PC first-run profiles, pre-tip binding, external college-half configuration and custom in-game presentation remain open. Earlier college/ultrawide/full-match evidence is retained; no extra rare-rule testing is required.

Final neutral46zc repeats stock105-team loading on exact46z broker/DLL from covered Home, with all13 controls, ten starters, correct SHA/college clocks, zero errors and acknowledgements0. Normal46zb and custom905-team46za acceptance use that same exact DLL. The final neutral flow is inputless; the46zb bracket input occurred only after independent normal-start acceptance to check the native team picker.

Final46zd at14:12:03UTC verifies all95 original reference hashes, stable35 and original EXE; archives the last isolated saves and restores all95 original files there. Game/broker/debugger/API listeners are closed;19 completed owned session46 tasks were removed after exact-action/idle/closure guards. Both artwork/download hosts and all published ZIP hashes are unchanged. The accepted46z DLL remains isolated; restored original Config does not constitute fullscreen acceptance. Acceptance, preservation. No further game run or public promotion is pending.

External launch expansion authorized — October17,2026

The user authorized broad feature expansion while away. Active expansion ledger records development40/ABI18, exact47a native source/DLL,363-test pass and live college10/original2-minute launch configuration with unchanged original INI. Source47d adds phase4 managed identity/metadata handling and passes372 Windows tests; current47e adds guarded broker-owned cancellation/completion controls and awaits validation. Public previews/stable35 are unchanged. Both first live runs are closed; no final expansion closeout is claimed while work continues.

External match expansion accepted — October17,2026

The user authorized broad expansion while away. App-owned requests now cover per-child original/college configuration, optional shared roster query/edit/order/minute preparation and verified export,13 preparation controls,264 startup options/sliders/controller preferences, exhibition camera/descriptor selection, explicit primary home/away or CPU participation, phase4 external identities/finite metadata and broker-owned cancellation. The broker executes the same public HTTP SDK used by any third-party client; product startup generates no input and uses the native loading path under neutral/app branding. No first-party dynasty database is embedded. Source files, original INIs and app images remain inputs; outputs are private immutable copies/receipts.

Current API0.2.0.dev46/HTTPv1/snapshotABI21 (67752bytes), unchanged eventABI4/collegeprofile4/courtdefinition3. Frozen source47zzp archive7c6d87fbf946a536499f2dcc22a4f824e91f745eb6f2a44dee94f5266e461c60 identifies167 inputs. Non-probe native47zze DLL2721b166874e71e036d09c0980176bf53df5c794121ed055fee5a5a54823d046 compiles on Dell MSVC19.51 /W4 /WX;55 native code/resource inputs match (Markdown excluded). Final146-file runtime integrity passes. 441 exact-source Windows API tests pass, including optional shared writer, old adapters, request/lifecycle semantics and concurrent export destination preservation. 61 schemas validate12 live scenarios/188 actual command bodies/receipts, seven request documents plus no-op shapes and unchanged historical results. Schema reads disposable SQLite copies and verifies all36 original DB/WAL/SHM hashes; later canonical schema only aligns empty optional roster_edits with already accepted runtime validation. Working docs/index updates are separate from the frozen runtime archive.

Combined47zzq passes a single independently owned request:905-team source ROS, three named field edits, both starting orders/minute preferences, prepared4409 SHA, all13 settings, college10/media4 (600-second half/180-second scaled OT/30-second shot declaration), all264 startup values,2k six controls, CPU participation and phase4 identities. It binds24 actual players and reports six uninstantiated plan entries; no invented stats/inactive status. Natural phase10 clock598.8780, zero errors; exact16MiB authored export/no-overwrite, immutable command/request receipts and owned cancellation pass. Rendered capture shows the requested2k view and Independent Dynasty window title/icon. Existing synthetic-fixture pink crowd/floor material defects and original watermark/HUD/quarter labels persist; no custom asset/presentation certification. All264 readbacks are setter/storage evidence, not perceptual certification of every control.

Home47zzf and away47zzi pass on the same exact native DLL, with matching current/saved control roles and nonzero matching input records for the primary player, phase4 IDs and natural gameplay. Away has a rendered native marker on Milwaukee and stock ROS export/no-overwrite evidence. The home capture missed the observer hold/cancellation and refused its missing owned process; it is not visual proof. Captures only activate the exact owned window after SDK acceptance; no keys/mouse/probes enter product startup. Separate bounded Quick research used original menu inputs/read-only memory to establish home2/CPU1/away3 and recover54DE90/54EE70 plus original current/saved control copies. Those keys are research evidence, not launch automation. Some earlier protected pseudocode and guessed function starts were invalid and did not support patches. The final native implementation calls recovered original handlers, with code/availability/context/readback guards.

Intermediate47g corrected strict30-plan-versus24-native mapping; uninstantiated entries are explicit.47i/j preset staging first refused a mistyped DLL hash before launch. Other logged disk-headroom/prelaunch/capture failures remain evidence and did not relax guards. An unstaged47zzi observer/capture was mistakenly started after the stage refused; exact no-launch/action guards stopped it, and no game was created. Metadata-only47zzm first caught a changed native README in its comparison; code comparison correctly excludes Markdown, and source47zzm was not accepted as a runtime.47zzp is the accepted source. No installer, agents, recurring automation, Mac research dependency/build/test or deferred niche-rule hunt was added.

Disk pressure retained the3GiB game-start guard. Exact-path hardlink dedup and NTFS compression of closed immutable evidence preserve file hashes/paths; retained WAL/SHM stayed grouped and no SQLite records were rewritten. Three large historical JSONL capture streams kept identical byte hashes and recovered915628032bytes; no assets/packages/history were deleted and no OS compression policy changed. Final preservation47zzs,19:29:55UTC, archives final isolated saves and restores all95 original files there; original EXE/stable35/INI/fixtures/three public ZIPs and all four hosting process identities match.18 owned runs are closed;20 exact-body/idle session47 tasks removed; no game/debugger/API listener remains. Exit1 after owned cancellation and forced research watchdog stops are intentional, not crash evidence. Free space3691204608bytes. The2721 candidate stays only in match-game44a, with original fullscreen Config restored; this is not new fullscreen acceptance. Existing preview2/API36/editor dev7/stable35/hosts are unchanged, and no public package is promoted.

Acceptance47zzs and active ledger identify the final scoped outcome. Device choice/multiple humans, key remapping, coaching, disk persistence, arbitrary rule callbacks, legal ball state/universal event meanings, checkpoint/asset hot-swap and native extra-field/presentation consumers remain unavailable. Existing reference regulation/OT/rules/court/ultrawide evidence and rare live/full-game deferrals retain their original scope. No additional game run or release is a prerequisite for the next client integration. Future work must deliberately stage the current source, optional component and matching hook rather than importing older installed/public APIs. All game/build/debug/test execution used Dell; Mac work was editing, storage and SSH/desktop control.

2026-10-17 — Per-team startup coaching, development47 / ABI22

The user clarified that the launch SDK scripts already serve as external test clients, no new dynasty/test GUI is needed as a prerequisite, coaching is the next accepted work, presentation stays deferred and roster artwork belongs to the roster team. No lifecycle/client GUI or asset project was started. Coaching guide documents nine settings independently for home/away: timeouts, substitutions, fatigue/rotation substitution method, PlayVision/display/messages, offense/defense playcalling and late-game fouling. Managed settings.coaching adds18 entries to the264 startup values (maximum282), with availability checks and complete native readback before reveal. Current snapshots/settings/deltas expose the native coaching arrays; unknown values are null. This does not add direct substitution requests, exact rotation schedules, defensive matchups or AI-effect certification.

Original menu descriptors and localized formatters establish fields/choices. The adapter invokes complete original handler suffixes after their controller-side prefix, passing an explicit validated side, with96-byte guards for each full handler. It does not change input ownership or substitute raw field stores. The first48p native fixture caught the reversed numeric direction of the two three-choice options before a game launch. Corrected48u compiles on Dell MSVC19.51 /W4 /WX, DLL0ce3673f4ab3a847fa498c8d8cf728093d0606ae91b60387f561487b8a32f520.244 compiled-wrapper/original-handler instruction cases cover every valid numeric transition, native edge wrapping, both sides, invalid values and neighbor preservation. These are synthetic-memory cases, not full-engine behavior. Initial static cursor/optional-path failures remain evidence; all owned inspection workers closed.

Live48w passes stock ROS/college10/media4/all282/2k/CPU, phase4 IDs and natural phase10 clock598.8500. Live48x passes stock ROS/original2/18 reversed side values/broadcast/primary-away, phase4 IDs and phase10 clock118.9168. All18 coaching values remain exact during play; zero adapter errors and zero generated startup input. Both opening observations are phase4. SDK observers use public HTTP only before owned cancellation; no new app GUI or menu automation was built. The two short checks exercise the new coaching state, not a repeat regulation/rare-rule/asset/renderer campaign.

Final private source API0.2.0.dev47/HTTPv1, snapshotABI22 (67828bytes;76 appended), eventABI4/profile4/court3. Frozen48za archiveac020a51ad81914c72a0c8679adc8ccd8102471759acd686e4986aa4d23a20c1 identifies171 inputs.57 native inputs match compiled48u exactly; final API-only changes gate the startup coaching catalog/maximum on the attached ABI. 452 exact-source Windows API tests pass, including older-adapter catalog gating and append-only compatibility; older hooks refuse coaching startup before child creation. 64 schemas validate14 live scenarios and unchanged historical result0941ccb9, preserving42 original DB/WAL/SHM byte hashes using disposable read-only copies. Native application code/binary is identical between live48u and final48za. Current Mac editing metadata matches163 frozen non-Markdown inputs.

Final48zc,20:54:10UTC, verifies all95 original saves in reference/isolated copies, stable35/originalEXE/INI/source ROS fixtures/three public ZIPs and all four hosting process identities. Both game/broker runs are closed, two exact-loader/idle tasks removed and no game/debugger/API listener remains. All98 pre-research isolated files are restored after separately archiving each run's current saves. The0ce3 candidate remains only isolated, with original fullscreen Config restored; live checks used windowed mode, so no fullscreen/hardware claim. Free3522142208bytes. Exact closed historical JSONL and closed48w DB/WAL/SHM files were NTFS-compressed with unchanged byte hashes/paths to preserve the existing3GiB start guard; no history was deleted or SQLite records rewritten. Historical packages/hosts and the95 originals remain unchanged. No public release, community installer, delegation, Mac dependency/build/test or deferred niche-rule hunt occurred. Working guides/current-state/plans/API/native metadata now point to coaching47 while retaining earlier acceptance history.

2026-10-18 UTC / October17 local — Shared Dell storage recovery

The user interrupted defensive/matchup research49 to request permanent safe space recovery while MVP baseball also works on the Dell. Storage ledger records one256GB NVMe /254.43GB C: with roughly106MB free. Allocation-aware inventory found94.52GiB in the active MVP test tree and54.71GiB in OpenHoops historical logs. MVP was read-only inventory only; no message, file/process/task change or cleanup was sent to that project or the previous chat. Paseo workspace discovery was read-only; no agents or automation were created.

Exact-path NTFS compression of eight old logs passes all before/after SHA-256 checks and recovers1,150,533,632bytes at that checkpoint. The first narrow50c cache plan identified just one duplicate; the broader historical-cache50d plan fully hashes10,000 old single-link files, identifying145 duplicate groups /6,625 redundant copies /24,496,841,880logical bytes. Plan SHA1dc951218dc3c40d1eae916d3c7136d52e1b81d7c3af7d22256f866be2d79c92 is pinned before mutation. Dedup50e passes in101.7seconds, retaining every original historical pathname and content hash with full readback checks, rollback-capable per-file replacement and6,625 matching prepared/committed journal entries. Canonicals and targets are closed historical copies only; there are no live-game, original-save, database, package, source or MVP link targets. Original per-path metadata is preserved separately because hardlinks share filesystem metadata. No interrupted transaction backups remain.

Final50f at00:50:56UTC passes all95 original hashes in both reference/isolated games, ten protected runtime/source/fixture/public-package hashes, eight compressed logs and all four unchanged hosting process identities. Free25,439,432,704bytes (25.44GB /23.69GiB); concurrent shared-machine activity explains differences between gross recovered allocation and net free space. Stable35, private47/ABI22/native0ce3, original packages and published ZIPs stay unchanged. No game/build/test/service/install, OS policy change, bulk Mac offload, agent or recurring automation. Future captures reuse hash-matched immutable archives and keep restores independent; retain the3GiB start guard. Current-state/AGENTS now link the storage rules. Research49 static/menu evidence is preserved; no new defense, matchup, live coaching or substitution capability is claimed.

2026-10-18 UTC / October17 local — Live coaching/defensive controls

The user resumed coaching after storage recovery. Development49 adds public paused coaching for all nine settings on either team, six defensive fields per instantiated opponent and expiring API-owned pause/resume without input. Explicit side/opponent/defender ownership, lease/run/period, revision/value preimages and frozen-clock guards remain. Preferred defenders are own on-court players; configuration does not establish physical guarding. Native menu/getter/AI paths show12 defensive rows per team, on-ball choices0–3 and direct field stores followed by widget refresh. The adapter preserves that transition with bounds/guards/readback; coaching retains original handler suffixes. ABI23 appends652 bytes, ABI24 adds16, total68496. HTTPv1/eventABI4/profile4/court3 remain unchanged.

Counter-only prototype49v launches/binds/reaches play, then fails pause acceptance: players/game/shot clocks continue while pause depth is positive. No coaching mutation follows. Diagnostic49w reads disposable database copies and preserves original DB/WAL/SHM hashes. Static49x establishes9F2640 as rendering and9F1D20 as simulation dispatch. Current hook suspends that complete dispatch only while adapter-owned, replays the exact prologue on passthrough and keeps application/API ticks active for resume/expiry. Original counter functions retain their side effects; no timer values fake a freeze. Availability2/PE simulation version2 exclude counter-only revision1. Failed49q mocked a getter's stack cleanup incorrectly; corrected49s retains original instructions. Malformed/interior disassembly windows do not support patches or calls.

Runtime source49z archive820f60c78c581df826727ca07180e7c81a5075f4c2d1f10718ceebf721ab8049 identifies179 inputs. Non-probe DLL0a99df4af3d5864a1e2bbc0c5cfc08b94921bca59c0264a72ac43b6106eaa961 compiles Dell MSVC19.51 /W4 /WX.471 Windows API tests,1,104 defensive/coaching instruction cases,27 pause cases and71 schemas/37 fixtures plus unchanged historical results pass. Public-SDK live49zf passes stock/college10/18 startup coaching values/phase4 identities and42 distinct live settings across both teams.89 commands verify post-resume persistence, full API restoration, duplicate receipts, stale/running refusal, pause expiry and owned cancellation. All three clocks and reported player positions remain identical during owned pause. Errors0/input0.190 schema checks validate actual commands/receipts/snapshots/settings/request/lifecycle responses.

Final documentation source49zm archivea97f838c3a8532253633a1eb271d159289e570d9e086308ac359ee4228ed5fbf changes Markdown only; all171 runtime inputs, including61 native inputs, match49z. Final49zn,01:42:11UTC, verifies179 frozen inputs,95 originals in both games, exact98-file restoration, original EXE/INI/stable35/fixtures/three public ZIPs and all four hosting identities. Both49 runs close, two exact-body idle tasks are removed and no owned game/API remains. Free24,042,680,320bytes. Acceptance separates passed49zf from failed49v. MVP files/processes/tasks and shared desktop input are untouched. Mac work is editing/storage/SSH; compilation/API/native tests/game work used Dell. No agents, dependencies, recurring automation, public package or deferred niche/full-match campaign.

Direct substitutions/startup defense remain unfinished. Static49zg–49zk recover original queue/cancel helpers6C0EF0/6C0F40 and request flag6C0FA0, distinct from defensive mapping9AFCB0; eligibility, processing lifecycle and natural stoppage completion need verification before a public command. Queue acceptance must not be labeled completed substitution. Nested-menu preservation is compiled counter evidence, not exhaustive live UI certification. Exact rotation schedules/presentation/artwork remain separate. Central docs identify49/ABI24 while historical evidence retains its original scope.

2026-10-18 UTC — External game-flow completion50

The user authorized integrating substitutions and finishing the external game flow. Private API0.2.0.dev50/HTTPv1/snapshotABI25 (68680bytes) adds native queue/cancel, separately durable observed-entry status/events, optional startup defense and portable result inbox/explicit owned finish. Snapshot extensions are append-only128+56bytes; eventABI4/profile4/court3 stay unchanged. Startup presets accept up to426 values (282 prior plus144 defensive fields), scoped to actual instantiated participants with canonical side/opponent/defender ownership and full readback before reveal. No first-party client/league database is built into the adapter.

Original guarded6C0EF0/6C0F40/6C0FA0 configure pending nodes, not physical swaps. First native51c/DLL7442 and source51j pass492 API tests/93 new native cases/76 schemas, but live51k queues are replaced at its first foul stoppage without entry. It remains failed substitution evidence; natural Milwaukee4–Philadelphia2 result/inbox/independent ACK/owned finished closure pass separately. Disposable closed51s SQLite copies preserve original DB/WAL/SHM hashes and correct the early halftime diagnosis: source1366 precedes10→18 at12.8759seconds in half1. Static51p–51t expose the automatic lineup calculation9ABFB0 and normal entrance handling. Corrected source51u gates only exact API-owned still-pending/outgoing/eligible/current-period requests against automatic replacement, preserving native stoppage/entrance processing and complete prologue passthrough. Cancellation/context/eligibility changes release ownership. Flags/GPR/x87-control/SSE/stack are preserved. Availability2/PE substitution version2 exclude the failed prototype. Broker observation now waits for the first published pending sample before declaring removal, avoiding a stale-publication false event.

Runtime51u archivea7cbf6e344690e55fa01de748d0e41ca2ba6f087c534b76842e37dfec9ab8680/187 inputs builds non-probe DLL4f897924002508d689ebb18915f7d2eb0cd49517ad086aba1fb8703eca216f47 on Dell MSVC19.51 /W4 /WX.493 exact-source Windows API tests,1,104 prior native cases,111 new queue/cancel/refusal/ownership/startup/thunk cases,27 pause/dispatch cases and76 schemas/48 fixtures/unchanged historical results pass.51e's inefficient symbol lookup was stopped by exact process identity;51f/g fixture/instruction-limit errors and51v's missing embedded-Python sibling path remain preserved harness failures.51h/x correct the harnesses without weakening expectations.

Live51w uses only public HTTP/SDK calls, no generated input, and verifies156 startup values (18 coaching plus138 defensive fields across23 instantiated players), phase4 external IDs, both-team queue/cancel/immutable duplicate receipts and two actual entries. At a natural foul/free-throw stoppage with45.8941seconds left in half1, Michael Carter-Williams replaces Spencer Hawes and John Henson replaces Luke Ridnour: native positions, incoming on-court and outgoing off-court agree. Later play retains the positions. Philadelphia wins5–4 after two60-second college halves; reconciled23-player results are committed to the app inbox before ACK, independent consumers receive identical content, repeated ACK passes and finished stop closes only the matching owned run/match. Adapter errors0/input0.33 actual response-schema checks plus14 closed-state checks pass, including12 substitution events with no false removal, four durable requests and two independent ACK rows. Closed original DB hashes remain unchanged.

Both51 runs close and archive current saves, restoring all98 isolated baseline files. Preservation51z,11:26:57UTC, verifies95 originals in both games, original EXE/INI/stable35/fixtures/three public ZIPs and all four hosting identities; removes two exact-body idle owned tasks; no NBA/API process/listener remains. Free21,305,008,128bytes. MVP files/processes/tasks and shared desktop input remain untouched. Current4f DLL is isolated in match-game44a. No public release, GUI, presentation/artwork work, Mac dependency/build/game/test, agent or extra rare-rule campaign.

Final documentation source51za SHA3300c47bfd4d022d0a4acc487eb050b89d5d2c620fb1d549a8a8f7cb065da78b retains187 inputs; all179 non-Markdown inputs including63 native inputs match tested/live51u. Acceptance51ze verifies the frozen source and exact binary/import paths without repeating game/tests for prose-only changes. Client guide, current API/plan/AGENTS, examples and search metadata are refreshed. Exact-minute schedules, direct timeout calls, physical guarding/legal ball state/universal events, arbitrary callbacks, physical devices/multiple humans, native extra-field presentation and safe asset hot-swap remain separate. Existing deferred rule/hardware/presentation scope stands.

2026-10-18 UTC — Remaining match controls51

The user authorized the three remaining match-control features and later confirmed no gamepad is available. Development51/HTTPv1/ABI26 (74648bytes) implements logical-period/game-clock rotation intent, native timeout calls and connected native input/team assignment. Native/live source52zd archiveab93214f3321ce54dce0de822de4f3330aca7363525b40eebc8b283d65966b50/195 inputs builds non-probe DLL4a4f0aff with MSVC19.51 /W4 /WX. Final API52zh adds typed durable-plan schemas and read-only handling of unsupported native input types, retaining all67 native inputs.510 Windows API tests,84 schemas/44 real-closed-history checks,52 new original-instruction/compiled control cases plus1104 prior coaching/defense,111 substitutions and27 pause cases pass.

The first observer52p aborted before timeout submission on its own argument collision.52q exposed false plan retirement at normal pre-tip phase3 and an eligibility change across its pause. Timeout calls now run unpaused through the original predicate/entry and college charge tracker; no synthetic whistle/allowance rewrite.52v then made four entries/two API timeouts and finished naturally4–3 with reconciled inbox delivery, but review caught future half2 being marked due at the previous half zero-clock intermission. Rotation availability3/PE match-controls3 excludes that prototype. Both sampled and builder-boundary paths exclude intermission; quarter/half/OT regression cases pass. Missing observations retain intent; verified inactive teardown retires it without implicit later reuse. Keep all failed/scoped evidence.

Live52za confirms all four55-second marks: half1 due54.8926/entry29.0131, half2 due54.9858/entry1.3126 for both teams. Future entries remain scheduled at phase12/raw3/clock0, with no due timestamp. Native opportunities determine actual entry, and lateness remains explicit. Home short and away full timeout deductions/returns pass, zero errors/input. The focused run cancels after verification; another full-match campaign is not a prerequisite.52w uses public discovery/selection to refuse a missing gamepad, select/clear/reselect the actual keyboard and commit away current/saved native records before reveal.52x passes original one-minute-quarter plan replace/cancel, durable cancelled history, pause/resume and full timeout6→5/native return. Physical two-controller play remains synthetic evidence only; process-local slots are not persistent hardware identities.

All six runs close;98 isolated baseline files restore; six exact-body idle launch tasks are removed. Preservation52zm at2026-10-18T14:13:11.9874908Z verifies95 originals in both OpenHoops copies, EXE/INI/stable35/fixtures/three public ZIPs/four hosts, no game/API listener and17705725952 free bytes. Isolated DLL restores development50; current51 stays frozen. MVP/source assets/SSH/shared input are untouched. No public package, GUI, dependencies, agent, recurring automation or deferred rare-rule work. Current guide fixes the milestone scope; broader presentation/modding semantics remain separate.

Final source52zq corrects the stale pyproject package label50→51. Native inputs and runtime code remain identical to the tested sources; only packaging metadata and current prose change. The final verifier checks imported and declared package versions, exact hashes and ABI before acceptance. No repeat game or full test campaign is needed for that metadata correction.

October18,2026 UTC — College metadata standard and private editor dev8

The user requested a shared college vocabulary and editor entry tools, then specified no redshirt fields, separate high-school/previous-college context, NCAA D1/D2/D3 plus NAIA, and investigation of90+ native conferences. Creator guide and checkpoint define91 optional typed fields with recommended entry, Not set/Unknown states, rankings/source/date, institution/conference identity, player background, staff, venue and uniform context. Custom fields remain preserved. No rule/presentation/asset behavior is implied.

Private source53b passes148 Windows writer/preparation/college tests,32 overlapping cases on the independently assembled factual-catalog component, and16 exact-EXE form/collection/worker/save/fresh-open checks. Source53d updates only README/EXTENSIONS/COLLEGE-FIELDS Markdown, with75 identical non-Markdown inputs and the accepted compiled EXE0934c97b. Its source archive SHA256 is e4690eee66c1567b81cf2b13ee62e0b9815c511b9a905930680951b9780dc9fa. GUI53b hidden-window captures were blank and are explicitly superseded; corrected53c renders only in isolated service session0, with player/team controls visually inspected and no shared input/focus. Combined acceptance.

Metadata CSV has native labels and a required ROS revision hash; wrong/stale files and any invalid row refuse the complete import, preserving native bytes and custom values.90 declared conference identities pass as metadata with native Division unchanged. Conference investigation executes49 original-instruction cases:4-bit stored Division and a fixed category lookup with invalid dispatch for IDs10–15. A simple larger field value cannot provide90 native conferences. Stable namespace/conference IDs support authoring now; native standings/scheduling/playoffs and hook/API intake remain separate work.

172 non-Markdown API/native inputs still match final52zq. API51/ABI26/event4/profile4/court3 and all native binaries stay unchanged.95 original saves in both OpenHoops copies,98 isolated baseline files, stable35/restored50, public ZIPs and four host identities pass preservation; no owned worker remains. No game/API/DLL build, new dependencies, agents, recurring automation, MVP modification or public release. Presentation and actual mod/custom-art acceptance remain deferred; mid-game save/resume is deprioritized. The hosted editor remains dev7; dev8 is isolated development source/build.

October18,2026 UTC — Collaborative browser editor54 and Cloudflare hosting

The user replaced desktop/editor OS-build work with a collaborative web tool, selected private owner/edit/view links, registered openhoops.io and authorized Cloudflare hosting. Phone device authorization succeeded on the third attempt after two unused codes expired. The active zone is in Lane Holding Group LLC; existing Workers/buckets/hosts were inspected and preserved. A private R2 bucket, SQLite Durable Objects, isolated Python processor and Worker assets now host the editor without a Dell production dependency. No billing plan changed. Private OAuth/setup/owner credentials are outside source/public assets.

Source54h passes170 Windows writer/preparation/college/grid cases.28 real local collaboration checks use the independently unpacked exact production writer, with scope-safe cell merge/conflicts, atomic rejection, repeated-command receipts, role/revocation, collaborative undo/restore, comments, comparisons and validated pair export.905teams/13665players/3779uniforms pass upload, highest-index metadata, all-player bulk and fresh export parsing. The bulk scope-check optimization changes17.9seconds to1.2seconds on the Dell, without a production latency promise. A process restart preserves head/data/receipt. Native Division10–15 refuses from prior unsupported-dispatch evidence;90+ college conference groups remain metadata, not native standings/scheduling expansion.

Original54h deploymentfc2d55dd passes28 actual Cloudflare cases, including managed Python cold startup, two WebSockets and private ROS export. The user then reserved the homepage and requested /rostereditor. Final runtime54k (archive0323990ff20e6e4acfc39b1e978825cbc51fd2d83f645f251b465580d195af93), deployed versiona0638bae-9089-43ce-bd46-583cb30410c3, serves the editor/API/assets/new share links below that prefix and a root placeholder. Its Python payload remains byte-identical0b5a9ac26df28485b2290d30e098f9c59aedbe40577e0c6a1145e4784ee549fb.28 production cases pass again through the prefix;12 route/access cases pass. Existing /p invitations redirect, original owner access/project is preserved and old /api endpoints remain compatible.54j's internal index.html lookup caused a307 redirect;54k uses the folder asset lookup. Preserve failed and corrected evidence.

Paseo native browser creation/upload/table entry/paste/global edit/roster controls pass functionally. The live legacy owner invite reaches the new prefix, removes its secret fragment, reads owner access and shows Saved r0 over the new socket. Pixel screenshots return screenshot_no_frame; strict CSP blocks string evaluation by the tool, so no pixel or physical cross-browser certification is claimed. Existing desktop binaries/packages remain historical, and API51/ABI26/event4/profile4/court3, stable35/restored50, artwork/download hosts and original saves remain protected. No game/API/DLL run or MVP/shared desktop interaction was part of this editor work. Current guide.

Final documentation/configuration packet54l (bf43f455d1a21b6965646f443b3ff76d2e809b137c7d4342cbd807db5f36ffb1) changes four Markdown files and the default Wrangler target configuration, with all other inputs identical to live54k and the configuration structurally equal to its deployed settings. Ten current documents/138 local links pass; source writer/schema inputs match170-test54h. Preservation54b confirms95 originals in both games,98 isolated baseline files, protected EXE/DLL/public ZIPs/four host identities, no owned Dell web worker and14.48GB free.54b corrects54's cloud-change metadata flag; underlying protected hashes agree. Owned loopback services/SSH forward and the temporary Mac ROS fixture are removed. Cloudflare production remains running as authorized.

2026-10-18 UTC — Collaborative editor completion55

The user authorized finishing the web editor while away. Final web0.2.0.dev2/source55u archivef8b16ac906bf067ba73b960b3538f1bd407b12e10c8720b40e1df17beb73d830 deploys Worker7b74986a-2e32-4e8f-a608-be02c50f6bff to https://openhoops.io/rostereditor. The root homepage and original private empty workspace/access remain preserved. The exact accepted55t writer payloadcf05198c passes186 Windows tests; frontend55u passes28 behavior cases;40 actual Cloudflare collaboration and12 routing/access cases pass. Final live905teams/13665players/3779uniforms verifies highest-index metadata, all-player bulk, export/ZIP reimport and independently unpacked exact-writer readback for stock and expanded pairs. Source55v is Markdown-only relative to55u.

Persistent command/draft recovery retains original command IDs/actors/preimages/revisions across interrupted responses, reload and new tab identity; storage failure blocks sending and conflicts remain reviewable. Sequential Undo/Redo, live comments without composer loss, paged history/change details, historical/original downloads, safe direct ZIP intake, named donor inspection, navigable reports/references, Find row/Fill down, raw enums, literal-marker safety and loading-state guards are implemented. Mixed CSV carries ROS_SHA256 and EXTRAS_SHA256 so metadata-only collaborator changes invalidate stale sheets. Text filters preserve leading zeros and typed custom CSV/arithmetic avoid silent conversions. The in-app guide and operations/API/college docs describe exact scope.

The managed processor now keeps a foreground hash-bound Python HTTP interpreter, replacing repeated CLI startup.55k exposed Windows early-response unread-body TCP reset;55l–55p retain Linux startup/guarded-fallback failures.55q isolates Python HTTP reverse-DNS binding's overlong internal-host IDNA failure and fixes it without weakening CSP.55r adopts custom1CPU/3072MiB/2000MB resources to avoid the tiny shared-CPU delay, still sleeping after five idle minutes. Six final-Worker lifecycle simulations and seven local injected R2/SQL failure/retry/reconstruction checks pass;36 local real Worker/SQLite/R2/WebSocket checks include >100 history revisions. Provider chaos testing is not claimed. Final55u samples:7.99s cold,186ms warm,479ms after20seconds idle,2.46s all-player bulk and1.34s export. Published memory/disk rates imply about$0.0275 per running hour before allowances, with CPU/other services separate; no billing plan changed.

Native Paseo production field edit/Tab save/reload/Undo/Redo/Undo pass, with revision17→18→19→20 and Team0 restored to76ers. Viewer access and noninteractive write controls are observed. Screenshot still returns screenshot_no_frame and CSP blocks tool string evaluation; no pixel/physical cross-browser certification or substitute browser is claimed. Full RED MC semantics/career/IFF, actual supplied-mod/custom-art acceptance and hook/API companion consumption remain separate. Recovery covers cell typing/submitted commands, not every unsent modal form/offline editing. ZIP protects a ROS/companion version, not full project grants/comments/history. No pruning or formal full-project disaster-recovery certification is claimed.

Acceptance, current guide and preservation record exact scope/identities. Builds/tests used isolated Dell stages; Mac editing/storage/existing CLI login/SSH/native Paseo only. No game/API/native/public ZIP/MVP/shared desktop input changes, agents or recurring automation. Original saves, stable/restored adapters, historical packages and four hosting identities remain protected; owned loopback QA and temporary forwarding are closed. Deferred presentation/rare-rule campaigns remain deferred.

2026-10-18 UTC — Public email accounts and workspace recovery56

The user authorized the public Google Docs style account/workspace layer, chose email-based sign-in over username/password and approved fresh Cloudflare device authorization. Live web0.3.0.dev1/source56d archivea3e9bbf5595731623848e335139f51e026ecbe190a6332104f6353f11c9ad164 deploys Worker9861efef-0ee1-452f-a01d-c40828f1dad0 to https://openhoops.io/rostereditor. Dedicated signin@accounts.openhoops.io sender setup succeeds with bounce MX/SPF, DKIM and DMARC; no apex MX/Email Routing or billing-plan change. Controlled Mail.tm QA inboxes receive actual sign-in and invitation messages; no personal recipients. Codes/cookies/OAuth/recovery keys stay private and the local mailbox simulator is absent from production.

Email OTP accounts verify control before signup, use HttpOnly/Secure/SameSite cookie sessions/CSRF, support offline recovery with key rotation/session revocation and signout this/all devices. Synced My workspaces adds idempotent self-service creation, search/sort/folders/favorites, named invitations before/after signup, owner/editor/viewer role changes and archive/reopen. Existing private links remain valid; explicit library adoption preserves editor/viewer source-link revocation and the last owner guard. Named author ownership is stored separately from client IDs; impersonation by copied IDs refuses and own changes can be undone from another device/recovered workspace.

Complete .ohworkspace.gz backup captures frozen SQLite rows plus immutable R2 originals/revisions/patches, receipts, comments, memberships/invitations and link hashes. Per-object/checksum-chain verification, bounded multipart batches, retry-safe checkpoints and atomic final head/history publication protect restore into a separate empty workspace. Private copy is the default; access restoration is explicit and uses a new URL. Lost final responses/reloads recognize completion. Share plaintext secrets/global account sessions/recovery keys are excluded. Ordinary ZIP still exports a selected ROS/companion pair. No automatic staging retention/pruning or global service disaster-recovery certification is claimed.

46 local and46 actual Cloudflare account/backup cases pass;40 production legacy collaboration/41 local legacy cases,12 injected storage/recovery failures,28 frontend DOM cases and16 routing/access checks pass. Exact55t Python payloadcf05198c and18 writer/runtime-builder inputs remain identical with186 prior Windows passes; earlier905-team authoring/export evidence retains its scope. Generated-binding types and final dry-run pass on Dell.56d fixes completed-restore reopening after lost response.56b/c account-attribution/body-drain fixes and scoped failed harness/staging observations remain preserved. The first cloud harness erroneously sent synthetic CF-Connecting-IP and received edge HTML before any assertion; the corrected harness uses real provider IP and passes. Cloudflare's injected analytics beacon changes HTML bytes, so exact identity is asserted for JS/CSS plus HTML controls, without weakening CSP.

Native Paseo local signup/recovery notice/create/invite/cancel/restore/rename/folder/archive/reopen and restart persistence pass. The live browser verifies actual email-code sign-in, synced library, self-service owner/r0 creation, named invitation send/cancel, complete backup file-input restore and the recovered105-team/1665-player/579-uniform r2 workspace. QA signout-all restores guest login; original user owner workspace is still empty/Saved r0 and has not been adopted into QA. Screenshot returns screenshot_no_frame; no pixel/physical cross-browser certification or substitute browser. Full RED MC semantics/career/IFF, real supplied-mod/custom-art acceptance, native/API companion consumption and native90+ conferences remain outside scope; presentation stays deferred.

Documentation source56e archivec40efe10eedadb970af2047abf09035f7b5445d39129c835a2fe073df31b5fc6 changes only four Markdown files relative to live56d, with111 unchanged inputs. Acceptance, current guide and preservation record scope. Six owned cloud-account QA workspaces are archived with history retained; owned Dell QA trees and the exact Mac SSH forward are stopped, temporary backup fixtures removed and only task-created tabs closed. Temporary inboxes are deleted separately.95 originals in both copies,98 isolated files, EXE/stable35/restored50/public ZIPs/four hosts pass;12.69GB free. No game/API/native/public package/MVP/shared input, agents or recurring automation. Production remains running as authorized.

2026-10-18 UTC — Native Paseo screenshot workaround57

The user requested fixing screenshot capture. Desktop/daemon0.11.2 agree and installed signature verifies;0.11.4 has no browser-source changes. A simple external control and OpenHoops both fail ordinary viewport capture. The Mac was initially locked, but the same failure persists after a verified unlocked control, so lock alone is not the cause. Waking the display, foreground activation and recreation do not repair viewport capture. Native full-page capture does return images, but large targets repeat/clamp strips; those images are not accepted as visual proof. Bounded full-page capture passes image inspection on the live dashboard1100×1200 and original empty owner workspace1100×800. Use native fullPage:true and inspect results; no alternative browser or CSP change.

Diagnostic receipt and image hashes retain scoped evidence. This is a usable capture workaround, not an underlying Paseo viewport-engine patch or full-editor/physical cross-browser certification. No Paseo restart/update/install/configuration change, agents/automations, game/API/Dell test/service, app deployment or original-workspace data change. The original owner tab's1280×800 preference is restored and diagnostic tabs closed. The earlier request to manually expose the browser tab is no longer required for this workaround.

2026-10-18 UTC — Four private roster starters58

The user requested base/expanded and blank/default choices and explicitly retained sensible gameplay defaults. Live web0.3.0.dev2/source58c now offers all four during account creation and in any existing empty editable workspace; manual import remains. Base105teams/1665players/579uniforms; expanded905/13665/3779, with800 new teams,15 distinct assigned players/four uniforms each. Blank replaces team/player labels and clears player nicknames, preserving625,497 base and5,103,097 expanded non-label values. Uniform Name is an asset identifier and is preserved. Every starter has zero health errors/warnings. No finished college roster or new artwork is implied.

Historical37 failed strict distinct ASA identity checking, so new assets were generated with the accepted55t writer from untouched stock. Early58 checks caught native uniform Name encoding and stock orphan uniform-GID collisions; corrected58c asset generation allocates unused GIDs and distinct ASA/ID2 values. These isolated failures and originals remain preserved; no failed file was installed/published. Private, content-addressed R2 ZIPs are size/hash checked before ordinary checked-writer import, with atomic head/history/receipt commits. Account reservations persist template choice, reject incompatible retries and recover missing assets/save/outbox interruption without duplicate imports. Loaded rosters cannot be overwritten.

29 actual project/account SQLite/writer cases including injected failures pass;25 local account-owned HTTP and25 production template HTTP cases,46 account regressions and28 frontend cases pass. Four direct writer exports reload byte-identically; all eight local/cloud exports match every prepared native byte. Generated binding types/dry-run pass. Source58c archivec4c846f5214d9823d5b1734edc3680bf98969d99693748674f4c1ef43da88da5 differs only in dashboard dialog spacing from58b, with118 unchanged inputs. Worker2bb99237-86cb-4722-891d-4dc8810f5090 is live; five updated JS/CSS assets and version match exactly. Python payloadcf05198c remains unchanged; no API/native/public Windows package change or new native game run.

Native Paseo verifies local account creation selecting Expanded Blank and the905/13665/3779 editor. Live empty-workspace picker renders and initializes a separate private QA workspace. Bounded native full-page screenshot workaround57 remains in use. March Madness Legacy's bare URL redirects to sign-in; no access was bypassed, workspace seeded or original owner workspace changed. The user can choose a starter in their existing empty project. Starter guide/evidence records exact scope. All generation/builds/tests ran Dell; preserved saves/binaries/packages/hosts, no game/API/MVP/shared desktop input, agents or automation.

October18,2026 UTC — roster metadata connection59 and editor feedback60

Roster feedback60, live web0.3.0.dev3/source60k/Workerc4824824-5169-40ef-933e-69adca43a88e, fixes exported unset-rank reimports and selected-cell recovery refresh, adds All rows with windowed rendering, spreadsheet TSV/delimiter detection and editable/retryable preserved CSV drafts.148 Windows writer cases,47 exact-payload grid/server cases,35 frontend cases,10 local/13 production HTTP cases and actual live browser recovery/readback pass. Existing user projects/drafts remain protected;50,000 changed cells per edit/500,000 loaded cells are explicit bounds. Presentation and full RED MC semantic/career/IFF/physical-device coverage remain separate.

Roster metadata52 connects the editor companion to authenticated API intake/query, per-match overrides, checked opening-scene identity binding and durable results. Private API0.2.0.dev52/HTTPv1 keeps ABI26/event4/profile4/court3 and all67 native inputs unchanged.539 Windows API tests/98 schemas pass, including an actual hosted905-team ZIP round trip and a public HTTP flow with a simulated adapter. No new native-game acceptance, DLL, public Windows package or presentation feature is claimed.

The reported rank error was the exported @unset marker entering integer parsing, not a need to populate optional college fields. Native equal-value CSV cells now preserve handles; untouched cells do not consume the changed-cell budget. Definite422 recovery supports correction/new IDs; unknown saves keep their original receipt identity. Live browser evidence uses owned QA only, including preserved corrected draft recovery from another existing tab and exactly one revision7 save. Automatic browser refresh was canceled by beforeunload; full-page captures can still repeat a clipped strip. No user draft/project was discarded or imported into. Final handoff records identity-checked owned QA shutdown,95 original saves/98 isolated files/protected binary and public package hashes/four hosting identities, with no game/API listener/MVP/shared desktop input/native build/public Windows package. Earlier dated failures remain separate evidence.

2026-10-19 UTC — Native metadata and future scorebug data61

The user requested OpenHoops foundation verification and custom-field loading for future scorebugs, with presentation still deferred. Private API0.2.0.dev52/HTTPv1 keeps ABI26/event4/profile4/court3 and all67 native inputs unchanged. Its539-test/98-schema source now has real native61a acceptance: the last two teams of the hosted905-team export bind24 players at phase4, retain six metadata-only entries, expose standard/custom fields and overrides to an independent live scorebug consumer, and finish naturally4–3 with identical frozen context in reconciled independent deliveries. Reopening the persisted real-game database retains context/ACKs and delivers to a third consumer. The broker reads companions; the DLL does not parse or render them. No new DLL or public Windows package.

Source61a archive514069830276cf1df24d611a8225f1fa8ac0389e1ec7f4e96eaf7e36f28a5029 deliberately stages the current API52; all106 API/schema/test and67 native inputs match tested59d. The unchanged52zd non-probe DLL4a4f0aff runs only in isolated match-game44a. A copied actual hosted editor905-team ROS retains every native byte while the checked editor writer creates representative standard/custom fields. Team904/903, uniform3777/3774 and arena11 bind24 actual players; six planned entries remain metadata only. Independent live HTTP reads combine changing clocks/scores with matching context/IDs and rank, labels/logo keys, player biographies, overrides/unset/provenance and null/false/zero/leading-zero text. Two60-second halves finish4–3 with reconciled totals and two independent immutable result consumers/repeated ACK. The original input ZIP is preserved under a withheld filename after intake. Reopening the actual persisted database after native closure retains context and prior ACKs and serves a third consumer without generating/ingesting any snapshot.

Acceptance and metadata guide distinguish broker/API data availability from future native presentation/in-process lookup. No API/native implementation change or repeated539-test campaign was needed because the exact inputs remain identical. No web deployment, public Windows package, new app GUI, shared desktop input, MVP modification or deferred rare-rule/mod-art campaign. All owned game/broker/task resources close;98 baseline files/restored50,95 originals in both games/public ZIPs/four hosts pass preservation. Historical evidence remains intact.

Private API0.2.0.dev53/HTTPv1 keeps mainABI26/eventABI4/profile4/court3 and adds a separate draft1 rule transport. Accepted native transitions supply validity-qualified control/live/attempt/restart/FT state; ten record names have scoped roles. The trusted C SDK supports frozen full/minimum shot clocks, foul threshold5/6 and nineteen mapped per-step permissions, with college ownership, required suspension/owned stop and optional degraded provenance.561 Windows API tests/110 schemas,1,018 SDK checks,313 production-adapter checks plus six fault processes,606 boundary cases and128 original-handler cases pass. Final non-probe DLLcd992875 passes original baseline and an independent module’s natural college0–2 result with two consumers/repeated ACK. Persisted third-consumer delivery and optional/required/init-failure scenarios also pass within their recorded DLL scopes.

This is an experimental supported subset, not a frozen ABI/full rulebook or universal event certification. Unknown transitions remain unknown; FT-count/classification/arbitrary bonus/backcourt/period/OT/separate-rim callbacks remain unavailable. No public package or stable installation is promoted. All owned game/broker/task resources close;98 isolated files/DLL50,95 originals in both games, original INI/EXE/stable35/public ZIPs/four hosts pass preservation. No shared input, MVP modification, new agent or deferred rare-rule campaign. Builds/tests/game stay Dell.

Native source adapter62final2/archive48eb706d3c9835e9ac370bb5c3639a0674a8f1fc5883d86f2c08142ea1af312f, DLLcd992875d5f55b6d3a759e512386445043e9fa5486b6791af035d87367a16f2c. Final live62finala/62finalb use exact API62zzr; source comparison verifies122 API/data/test inputs,81 native implementation inputs,15 SDK inputs and89 helper inputs. Full module62zzb/persisted readback62zzb, optional-fault62zzo, required-fault62zzt and typed init-refusal62zzu retain their exact earlier DLL scopes. Later FT/restart/AP and gap-recovery corrections have final original-instruction/production-adapter checks and exact-final live acceptance. Tests run Dell; Mac only edits/stores/orchestrates.

Preserved failures include62zu MSVC early-return classification (required stop worked),62zza observer startup timeout and62zzg repeated disabled-owner fault receipts. They remain failed/incomplete evidence, separately linked from the rule-state ledger. Aggregate acceptance and preservation close the handoff. No enum-only callback, universal attribution, native presentation, gamepad actuation or full NCAA certification is advertised.

Work63 — extension platform implemented; headless acceptance, live checks pending — October19,2026 UTC

The user authorized all three milestones and later instructed continued headless work until they explicitly say the Dell is safe; do not launch a game before that reply. API54 keeps HTTPv1/mainABI26/event4/profile4/court3, adds rule transport/interpreter2 with C ABI1 layout compatibility and separate platform1/metadata C ABI1. Scope: frozen period/OT/backcourt/reset/foul/college-bonus configuration, accepted FT-count and two-/three-point classification transactions, connected FT disposal/progress/settlement evidence, copied native metadata before reveal and immutable selected IFF overlays. See active ledger, SDK and platform guide. Presentation, hot swap, original arbitrary bonus, late bonus and full rulebook certification remain unavailable.

API63f passes595 Windows tests/122 schemas. Native63f builds /W4 /WX, source069f73c04c0aa5c788a637c3a744eeb8890dad7ea55caf53e2d5ab004cdcb67c, DLLbf86361119be08066a880dc97f0e90201af686b23114f1d4c5911c2819d33d9c. Rules63e retains matching production inputs and passes1,261 SDK cases,353 original/college helper cases each, plus six FT publication-fault processes; timing/scoring consumer63b passes63 cases. Platform63i verifies the real WindowsSource/native mapping, concurrent status reads/publication, copied independent C reads, commit/reveal holds, read-only handles and typed refusal processes. The earlier2,954 parser/12 C checks retain their exact scope. Assets63b admits two real stock IFF containers without loading a game. Fixes include matching run-nonce encoding, consistent broker lock order, sealed-handle reopening and final asset-counter freezing so postgame opens cannot delay/revise results. Historical failures and immutable stages are preserved.

Two upcoming original/college requests are preflighted against exact source/DLL/module hashes and separate frozen intake state. Their scripts require a user-safe receipt before installing/launching and still recheck MVP/process identities. No game, game/API service, shared desktop input, installed-DLL change, public package, Cloudflare/host change or new agent occurred. Exact-DLL live metadata/asset/gameplay/result acceptance and final preservation remain pending; this is not a fully completed work63 claim.

Work63 final headless correction/checkpoint

Native63h/DLLe4d45e53107694b4596e67eff8a1eb79af6021ff68501285676b54d0b77ed31f supersedes the prior uninstalled63f prototype. The actual release caller classifies before detaching the ball into flight, so a physical-flight guard could miss real shots. The final adapter guards/uses the native registration→detach caller;383 checks per original/college fixture include that captured call sequence and foul→continuous-motion answer reuse. Applied classification receipts follow native flag/count readback. The FT publisher records its native count before any count override, supporting independent classification/count consumers. Six actual-publication failure processes and1,261 SDK checks pass. Platform63j adds an explicit native read-access allowlist and eight write/execute/delete/maximum-access refusals; real cross-process publication with300 concurrent status reads passes.63 consumer cases and earlier parser evidence retain their scope.

Source comparison verifies106 API/data/test inputs match595-test/zero-skip api63f,16 rule/SDK inputs match rules63h and six platform/protocol/header inputs match platform63j. Final pending fixtures63livec/d use this DLL/module/package set; earlier63livea/b remain unstarted superseded evidence. Sixteen generated PowerShell scripts parse without execution. The user-safe gate remains pending; no game/install/task/native-results/render acceptance is claimed. Active ledger.

Work63 missing-context guard and final pending fixture identity

Native63i/DLL56e66f24891bfe744e373e68a2798abaa608a92c394d7ecf27a310b2f7983935 supersedes uninstalled63h. An eligible classification boundary with an unmapped actor/official-ball identity now explicitly degrades optional policy or suspends required policy, instead of silently skipping it. Two captured-call processes verify native baseline preservation and both outcomes. Rules63i retains1,261 registry checks,383 per original/college fixture and six FT publication-fault processes; no API code changed after595-test/122-schema api63f. Native/platform inputs match platform63j. Final pending runs are63livee/f; all prior63livea/b/c/d plans remain unstarted superseded evidence. User’s explicit Dell-safe reply is still required before game installation or launch.

Work63 headless closeout and resource-safe handoff

The final workspace's194 runtime inputs match native63i exactly. Dell source comparison verifies106 API/data/test inputs,16 rule/SDK inputs and six platform/protocol/header inputs against their tested stages;595 API tests have zero skips. Original/college63livee/f preflight receipts pin native63i and rules63i C-moduleSHAa9b7d47da6fcbe813a7830ef8b45b763c2760111a3c162fb21e3ff6cbff7e788 without starting a game. Native metadata/platform exports resolve undecorated. Current documentation audit passes14 documents/386 local links.

Headless preservation at2026-10-19T13:37:33Z verifies95 original saves in both games,98 isolated baseline files, original executable/college INI, stable35/restored50 DLLs, published package hashes and all four hosting identities. No owned work63 worker, scheduled task, game or API listener remains;6,330,191,872bytes are free. Pending launch wrappers now check the explicit user-safe receipt before task registration, in addition to the existing install/process-start gates. Only syntax/source inspection runs; launch scripts remain unexecuted. No public package, cloud change, shared desktop input or MVP modification occurred. Exact-DLL live original/college acceptance and subsequent restoration remain pending until the user says the Dell is safe; headless completion is not full feature acceptance.

2026-10-19 UTC — Developer integration tools64

The user authorized all three headless developer additions. Private broker0.2.0.dev55/HTTPv1 implements read-only compatibility reports through CLI/HTTP, a strict generated TypeScript SDK and eight deterministic game-free integration scenarios. MainABI26/event4/profile4/court3 and native63i/DLL56e66f24 are unchanged. Work63's exact-DLL original/college acceptance remains pending the user's explicit Dell-safe reply. No game, hook installation, game task or desktop input occurred.

Final runtime source devkit64f/archive95adee1517752258ee23f73e9034f3260bd264b14419cfd5649ffe0e4228fd84 passes628 Windows API tests with zero skips and125 canonical schemas/50 operations. All88 native inputs and eight native/request protocol inputs match native63i. TypeScript7.0.2 strict compilation/eight negative type cases/25 runtime cases pass on64c/Windows Node24.22.0; all six compilation inputs and runtime/integration tests match64f. The independent actual Node client passes eight HTTP scenarios/63 checks/18 schema responses against production persistence, SQLite result inboxes, SSE cancellation, uploads and deliberate lost command/ACK responses. Game inputs and selected command outcomes are explicitly simulated; no native engine evidence is inferred.

Compatibility checks reserve no request IDs, register no content and preserve real state/input/game files; temporary scratch intake/writer checks clean up. Static passes retain live_readiness:not_established. Source roster membership does not establish native instantiation order, and ambiguous names remain unknown unless explicit row associations resolve them. The SDK never automatically retries mutations, preserves uncertain Start, commits durable results before ACK and retains independent consumer identities. Scenario-only controls are absent from production; resume refuses unrelated state directories.

Earlier64a binding/signature failures,64c incomplete synthetic clock parameters and64d raw launch-code schema failures remain preserved. Corrected64e HTTP/schema acceptance and final64f conservative identity cases have separate receipts. Developer guide, ledger and aggregate acceptance record exact identities and limits. No npm/public Windows package, web deployment, Cloudflare change, new GUI, presentation, agent or recurring automation was introduced.

Shared disk space twice fell below the3GiB test floor. Five bounded Windows per-file compression passes preserve all1,425 distinct old OpenHoops capture paths/content hashes and timestamp journals, excluding live games, original saves, databases, public packages, existing shared cache links and MVP. No file was deleted or newly linked. Preservation64,17:47:55UTC, verifies those captures,95 originals in both games,98 isolated files, protected EXE/INI/stable35/restored50/public ZIPs and all four hosting identities. It records6,062,755,840bytes free; shared concurrent activity means net free-space changes are not compression savings alone. No owned worker/task/game-connected API remains. Builds/tests used the Dell; the Mac edited/stored/indexed documentation. Storage details.

2026-10-19 UTC — Native presentation inventory65

The user opened presentation work and prioritized suppressing native scoreboard/watermark/replay-wipe graphics and a replacement manifest before network styling. Native presentation plan, readable inventory and JSON planning manifest now record53 logical components across16 groups,18 attributed evidence/source files and97 candidate original assets. All174,141,039 asset bytes match preserved baseline hashes; no original was edited/copied/published. Three archived gameplay/pause/presentation-option captures were visually inspected. Eight entries retain existing option domains with historical readback/restoration evidence; disabling replay scheduling is explicitly separate from hiding replay graphics.

The manifest records requested ownership, unresolved native draw owners/gates, candidate assets, evidence, coupled behavior and verification requirements. It includes scoreboard children, game/sponsor watermarks, replay/team/player/studio/sponsor/mode wipes, stat/biography/foul/FT/substitution cards, lineups, breaks and postgame; menus, gameplay indicators, audio and world art are tracked separately. Shared font/GUI/global files and _wm team wordmarks must not be blanket-hidden. Asset names and prior file-open counters do not prove visual ownership. No exhaustive-discovery, native suppression or renderer implementation is claimed.

The agreed implementation order is inventory → guarded per-layer suppression and scoped clean gameplay with operational controls/timing/completion/results preserved → shared compositor and network packages. Existing neutral startup cover remains scoped startup evidence. Required unsupported ownership must refuse before reveal; fallback/restoration needs explicit verification. API55/HTTPv1/mainABI26/event4/profile4/court3/native63i and work63's pending exact-DLL acceptance are unchanged.

This turn used local editorial/source-literal/hash inspection and indexing only, with no application build/test, dependency installation, Dell connection, game, service, native patch, task registration, deployment, public package, agent or shared input. The user's explicit Dell-safe reply remains absent. Closeout records current runtime identity and document/manifest checks; it is not a new Dell preservation or native acceptance receipt. Earlier64 preservation retains its dated scope.

2026-10-19 UTC — Presentation replacement boundaries66

The user asked which graphics can be built independently versus requiring native replacement, and whether that decision needs the Dell. Replacement plan and JSON sidecar classify all53 work65 components without altering that original manifest.20 components primarily use own 2D graphics; eight combine own graphics with native replay/camera/3D sequence integration; three hide native branding. Four retain native interactive UI initially, seven reuse existing settings, six preserve shared/gameplay dependencies, and the remaining five cover audio, world assets/surfaces, existing startup and other modes. This is an architectural recommendation, not a claim that native suppression/trigger ownership is recovered.

Own packages can define layouts, fonts, logos, animations, data formatting and fixture-driven previews now. The native adapter remains responsible for integration into actual game frames, original visual suppression, coherent copied state and verified entry/exit cues. Exact foul/FT/replay/substitution timing is separate from drawing a card; external historical records must be supplied explicitly. Native metadata C reads keep work63's pending live acceptance. Interactive menus require focus/input/modal behavior, world surfaces require asset/material/render integration, and audio routing is separate. Neither a standalone preview nor an asset-open count establishes replacement inside the game.

The current API55/native63i remains unchanged; no renderer, suppression gate, game, Dell connection, application build/test, service, installation, new dependency, public deployment/package, agent or shared input. Local source/schema reading, planning data and documentation checks only. Closeout66 records classification completeness, original manifest identity, current runtime comparison and local links. No fresh Dell preservation is claimed. The explicit user-safe reply remains required for native mapping and game validation.

2026-10-19 UTC — Independent ESPN CBB composition foundation67

The user approved OpenHoops owning the broadcast graphics/watermarks/wipes while retaining native menus, gameplay, cameras/replay playback,3D/world/audio systems. They chose ESPN CBB first and will supply resources; reference gathering stopped. Foundation guide and package scaffold record the pending design. No exact season/font/layout/network artwork has been verified or incorporated.

Portable C++17 core emits bounded rectangle/text/image commands from explicitly copied typed data, identities, freshness and manual layer cues. Uniform projection/anchors preserve equal-height21:9/32:9 geometry; solid wipe fills can separately cover the full target. Source clocks never advance with animation time. Duplicate/old sequences, new-match layer resets, unknown/missing data, resource readiness, interrupted animation and stale/disconnected/incoherent inputs have explicit handling. No heap allocation, OS/GPU/I/O calls, game pointers, native cue inference or HTTP-to-state adapter exists in this core. Frame.ready does not grant native ownership.

The draft authoring compiler validates bounded package fields/resources/layers/nodes and generates deterministic C++ fixture initialization with byte-escaped literals. The ESPN CBB scaffold contains15 neutral nodes/four layers, declares no production readiness/native ownership, and awaits the user's real resources. This is not a frozen ABI, runtime arbitrary-package loader, font/image backend, renderer install or live broadcast package.

Final exact code presentation67b/archive6510d499be7974bf055616c2a16cb7016814a5f546be75f91a28ac8f6a926593 passes eight Windows authoring tests, private fixture generation, MSVC x86 /W4 /WX and97 composition checks. Resource availability is an explicit stub; no GPU/desktop/game is tested. Earlier67a83-check acceptance retains its exact scope;67b adds full-surface wipe filling at1920×1080,3440×1440 and5120×1440 plus text-stretch refusal. Both snapshots are preserved. Existing API55/mainABI26/event4/profile4/court3/native63i are unchanged, so no unrelated full API test campaign is repeated.

All builds/tests use the isolated existing Dell toolchain headlessly; Mac work is editing/storage/orchestration. No game/install/game-task/native adapter build/shared desktop input, service, dependency install, public package/deployment, agent or MVP change occurred. Preservation67 verifies original saves/baseline/protected binaries/public packages/hosts and resource closure. Closeout67 binds accepted code, receipts and documentation. Work63 live acceptance and all new native graphics suppression/GPU/cue integration still await the explicit Dell-safe reply.

2026-10-19 UTC — External event/round presentation context68

The user requested passing Maui Invitational Championship, NCAA Tournament Sweet16 and American Conference Tournament Semifinal context from an external client into scorebugs. Match-context guide, version1 schema and standalone producer/consumer helper now standardize optional identity.metadata["org.openhoops.presentation"]: event/round names, optional IDs/short names, complete/compact caption overrides and subtitle. Arbitrary app-provided round names are supported; nothing depends on a first-party dynasty, changes roster data or creates native tournament/rule behavior. Existing broker match metadata transport remains generic; the helper validates this namespace before submission/drawing. No new HTTP endpoint/API version is introduced.

Five named text bindings and independent State.presentation_sha256 extend the draft composition core. Context identity includes presence, version, IDs and values separately from the roster hash; switching it clears prior layer visibility. Missing context hides the optional caption; explicit null remains distinct. UTF-8 byte limits, finite typed values, controls, wrong scope/identity/version and unknown fields have guarded behavior. ESPN CBB gains a16th neutral optional event/round node; actual fonts/layout fidelity remain pending the user's resources. The live adapter/GPU/native suppression bridge is still unimplemented.

Exact presentation68b/archive1957845491c450ac03f89bcc43df2187928c266ce542e716d65df0645d7de60f passes17 Windows authoring/context/actual-HTTP tests, context schema validation, MSVC x86 /W4 /WX and112 composition checks. The actual broker test binds the namespaced metadata, preserves final results across independent consumers/repeated ACK and persisted reopen, using explicitly simulated game input.126 API inputs match devkit64f byte-for-byte. No unrelated full API regression is repeated. Initial68a source preflight found omitted C examples before tests; its frozen archive and failure receipt remain preserved and the corrected archive includes all API inputs.

Preservation68 and closeout68 record protected saves/installed binaries/public packages/hosts and exact checked source. Tests/builds use isolated Dell headless stages; no game/install/task/shared desktop input/native DLL build/public package/deployment/dependency/agent or MVP modification. Temporary HTTP scenario resources close. API55/mainABI26/event4/profile4/court3/native63i and work63 pending live acceptance remain unchanged; the user's explicit Dell-safe reply is still absent.

2026-10-19 UTC — Presentation renderer, public-data bridge and exact ESPN target69

The user authorized renderer/preview and live-data/cue work plus deep reference research, then explicitly required1:1 accuracy and selected the established2024–25/2025–26 ESPN CBB package. Earlier reference-gathering deferral is superseded. Renderer checkpoint, data/cue contract and accuracy ledger distinguish delivered infrastructure from unfinished ESPN visual/motion acceptance.

The private C++17 composer now supports alignment/weight/minimum text size, slide offsets, conditional nodes and typed background/text colors. Windows Direct2D/DirectWrite/WIC software rendering uses supplied hash-checked private fonts/images, shaped/fitted/clipped text, alpha, image containment, owned offscreen resizing and transparent PNG output. A loopback Canvas preview consumes the same composition commands and offers synthetic scenarios, independent animation/game-clock controls, captions, player cards and disconnect behavior. No font install, desktop window, game/GPU device or arbitrary runtime package/resource loader is delivered.

The independent read-only consumer uses existing public snapshot/match HTTP routes, guarded run/match/fingerprint/context identities, fresh source revisions and frozen roster fields. It maps copied scores/clocks, declared half/quarter/OT labels, optional ranks/records and independent app-provided swatches/event captions. A stale duplicate cannot extend freshness. Reconnect/context changes create a new cue epoch and clear pending state. Explicit player-card requests consume current public totals, accept a recently displayed revision within a bounded window and expire at a fixed deadline. Preview wipes are synthetic only; native replay/award/completion authority remains unavailable. Physical attachment is not relabeled as possession or an arrow.

Exact presentation69e/archive24162542b7706eb097a7e00bad771f71eb0026c9174c7a09b5eaa4f080c611dd passes45 Windows Python cases,112 portable-core regressions and22 actual x86 software-pixel checks with AMD64/x86 MSVC warnings-as-errors builds. Authenticated production HTTP→read-only bridge→composer→PNG is exercised using simulated engine input and zero API commands.126 API implementation inputs match devkit64f; API55/HTTPv1/mainABI26/event4/profile4/court3/native63i remain unchanged. Earlier69a/b private-font lookup failures, corrected69c and69d incomplete-color fixture failure remain preserved; final69e supplies explicit required fixture colors.

Research retains dated ESPN/NCAA stills, official design/video leads and public operator guides with source hashes. Barlow Condensed and the logo card are provisional rendering fixtures. Original typeface, textures, exact swatches/geometry/state variants and frame-accurate score/card/wipe motion are unresolved. Original-resolution comparison uses explicit regions, no reference resampling and zero hidden tolerance:32,466 of32,480 selected ACCN pixels differ, so exact_pixel_match and package_accepted remain false. That specific network variant is not promoted into a universal ESPN template. Infrastructure passes do not complete the selected package.

Paseo interaction verifies player-card requests, American Semifinal context, disconnect/reconnect and21:9/32:9/16:9 transitions. Full-page captures contained repeated strips and ordinary screenshots returned no frame; clean full-page visual proof is not claimed. Windows PNGs were inspected separately. CSP was preserved. The temporary headless preview/workers/tab/SSH forward are closed. Preservation69,19:38:00UTC, passes95 originals in both games,98 isolated files, protected binaries/INI/public packages and four host identities with5,446,123,520bytes free. Closeout69 binds current source/docs/receipts. No game/install/game task/shared input/MVP change/public release/deployment/new dependency/agent. Native game drawing, visual suppression, exact native cue synchronization and pending work63 game acceptance still require the user's explicit Dell-safe reply, which has not arrived.

2026-10-19 UTC — Koch detail research and tunnel/scoreboard/table refit r5

The user requested more reference research and specifically rejected the fidelity of the existing tunnels, Jumbotron and tables. The new attributed library contains 25 useful arena views, including 20 February 2020 section photographs and the March 2026 empty-arena view. The structural audit and comparison sheet record actual defects, photo-space ratios, fitted dimensions and unresolved current details. North/SE pitched canopies, recessed mid-bowl passages, nearly rectangular scoreboard faces/smaller connected lower cylinder/closed underside, thin tables/LED fronts/folding chairs and second bench-side centre row replace the generic geometry. Painted logos interpolate backing-surface irradiance; direct native comparison changes only COLOR0 in two draws. Court artwork remains the user's.

Final structure-r5 IFF f64fb217e1404eab574d21c49c11317a6f1bf44115fecdd7ae3335c4027ad2b7 has 1,533,164 authored vertices in 41 draws/24 original native models, 10,705 bowl plus 38 courtside anchors and 1,689 far rows. Fresh official Blender 5.2.2 reopen/export is byte-identical; authored UVs/normals/colors, five DDS replacements, native tint, original shader programs, 24 resources and 161 auxiliary draws pass. Parsed chair centres remain 34 circles, maximum radius spread 0.000862 cm; all full-size court corners clear the complete circular apron by 232.39 cm. Closeout, verification and pending acceptance inputs bind current files. Generic negative exporter checks retain prior r2 scope.

Preservation rechecks all 37 archived r3 files, 62 archived r4 files, original s070 and add-on 0.4.0 ZIP. No original game/installed add-on/Dell/game launch/public hosting was changed. Exact dimensions, mixed chair/benchback products, banner inventory/portraits, current tunnel faces, equipment counts and original-runtime illumination/crowds/LOD/accessories/clock/performance remain open. Completed file checks do not establish faithful finished architecture or in-game acceptance.

2026-10-19 UTC — Koch finishing r6 and native display routing r7 (Mac only)

The requested detail pass now has baseline-only front cable guards/open sideline fronts, supported stair rails/returns, full chair-width access clearance, donor-guide chairback/benchback regions, shared arms, dark folding frames, curved floor rows and section plates 101–126. Verified r6 is archived with 61 hashes; accepted r5 remains archived with 83. See the finishing audit and final review sheet.

The user's added native-screen request produced r7: four video faces, two LED rings, sixteen portal panels and sixteen table panels retain original video/ribbon/table-ad materials in ten native draws. All 260 numeric glyph quads retain exact source UV/selectors/color bytes beneath the video. Three old table-body draws are empty; 151 other auxiliary draws remain unchanged. Four static DDS atlases supply printed art/materials; painted scores/clocks/holding ads are removed. Offline screens are explicitly black; labelled UV views are diagnostic Blender renders, not game playback. Initial unsigned-property overflow, eight-repeat ribbon UVs and missing runtime preview context are preserved in logs/history and corrected.

Final IFF SHA256 1614832a25dcd8dafca92c25836d43e973d15f2f4d2c618e1a542a6fc644d0a5 has 1,493,487 authored vertices, 53 draws/28 original models, 10,007 near anchors and 1,600 far rows. Fresh Blender 5.2.2 re-export is byte-identical; 15 verification groups pass, including exact native display parameters/shaders/number attributes, circular geometry, clearances and crowd templates. Private ZIP 6488b4f0d6d99a889bd45715b480a177fc486e424c369a74fb12b4f90539b31b passes all 68 payload hashes plus its receipt. Closeout, native binding evidence, pending acceptance. All 243 archived r3/r4/r5/r6 files and eight protected local inputs pass preservation. Add-on 0.4.0 is unchanged.

No Dell ownership/access, game launch, install, ROS edit, public promotion or court artwork. Native playback/score updates, exact current screen skin and Wichita animation pack, illumination, LOD, accessories/crowds and performance still require further work or the held game check. Architecture remains a photo fit. The original game-launch hold and later Dell custody/free-space gates remain in force.

2026-10-19 UTC — Shared Dell custody, storage recovery and platform opening fixes70

Brent explicitly authorized coordination with MVP agentaf5e06f5-ae15-4e36-9a45-aa77dda3d635. Contractv1 uses an atomic shared GPU lease, own-only status records and exact process identities; private-desktop games also require custody. No automatic stale takeover or simultaneous-game performance claim. Existing3GiB floor stays. Compression of2,500 old single-link OpenHoops cache IFFs recovered4,920,942,560 allocated bytes in253.83seconds with zero refusals; all paths/content hashes remain and the journal retains metadata. No MVP/current game/saves/source/package/database/host path was a cleanup target.

Three distinct native attempts remain preserved.63livee/native63i blocked phase1 loading before phase4 metadata binding.70livea/native70a fixed that hold but exposed waiting metadata status before the simulation was blocked. Native70b reports inactive during loading, arms hold/deadline at phase4 and keeps the hold through commit until reveal. Its full warnings-as-errors build/eight platform modes pass, including actual native loading bytes decoded by Python,300 concurrent reads and independent C checks. The phase1 regression deliberately fails old63i.70livec/native70b reached bound phase4, then correctly failed validation because the schema omitted expanded frozen-rule settings. Each attempt closed owned processes/tasks, restored98 isolated files/DLL50/original college INI and released custody before MVP's next run. No generated input or stable/public promotion.

API70b remains0.2.0.dev55/HTTPv1/mainABI26/event4/profile4/court3 with unchanged runtime logic. Canonical FrozenRuleValues is shared by runtime/results and preserves old empty/three-field contexts.629 Windows API tests pass in API70a; all126 API inputs match finalAPI70b byte for byte. Regenerated TypeScript strict/build/nine negative cases/25 runtime tests pass. Fresh70livee(original)/70livef(college) deliberately use API70b, native70b/DLL426be30a and unchanged independent rules63i module. Focused native metadata/asset/result acceptance is still pending MVP's next explicit release and fresh custody; headless passes do not establish it. Earlier prototypes remain superseded and must not be relaunched.

2026-10-19 UTC — Koch seating profile r8 (Mac only)

The user's two photographs prompted a gentler bowl: modeled rise 39→34 cm, rake 31.7472→28.3434 degrees, and top deck 1323→1158 cm. Tiers, steps, rails, accessible landings, portals and all crowd anchors follow the new elevations; tunnel rear canopies and upper bowl/roof-edge interfaces were refitted. Full-size chairs, circular plan, user court containment, floor anchors and r7 scoreboard/table native-display geometry remain. The profile audit explicitly records unresolved real row depth/physical numbering; the newly found architect interview conflicts with the model's provisional 63.03 cm spacing. This is a visual correction, not surveyed fidelity. Identical-camera comparison.

All 17 verification groups pass, including fresh Blender 5.2.2 reopen/byte-identical IFF, recovered native rake/levels, 34 circles, 10,007 anchors/1,600 far rows and exact native screen material/glyph preservation. IFF59834988b212875e2742bacebd4666724227c4b2e4c2f7b10ea882cd7d6d99df; private ZIPfe78e9782453b7d2dd67390906889b72028f15633f2773395961ec0521f79704 passes 78 payload hashes plus receipt. Exact r7 is archived with 79 hashes; 322 earlier archived files/eight protected originals/add-on match. Initial wrong-end comparison camera and early stale-manifest refusal remain separately recorded. Closeout, pending acceptance. No Dell access/ownership, game, install, court art, public release or shared-platform edits. Native playback and complete illumination remain unverified; arena launch hold persists.

2026-10-19 UTC — Work70c native release, arena identity and short-path corrections

Original70liveg completed12–8 but failed its classifier/read assertions. Its independent C metadata/timing evidence remains separate from the failed feature acceptance; no final two-consumer delivery was accepted.70livek captured423 same-thread registration/classification records.70livel captured53 bounded records and two actual field-goal attempts: canceled preparation can proceed to passes, while ordinary shot callers82AFE4/84286D enter the existing detach hook with matching official ball/shooter and prospective state3. Classification now belongs to that actual detach, before its consumers, with shooting-foul continuation reuse and native preparation/pass/FT fallback.

Native70c archivea86bce47ba22c814e11023031b0636dec7702ad8373999b705f3643848f5491c/DLLe476e624ebaef93493922448b3ac32acb58bef09299341da50a684cb387cb9da builds with warnings-as-errors. All88 native inputs match tested rules70a:1,261 registry checks,468 cases per original/college fixture and eight fault processes pass. Old classification code fails the new captured ordinary-release case at268. The selected-IFF matcher now expands8.3 parent aliases; eight platform modes pass while old alias code fails the different-byte read case.70livel actually opens f011/s011 through OPENHO~1/MATCH-~2. No diagnostic instrumentation exists in the final production sources.

API70c archive5a59fe9e2a076730a8111ad47fa403f4d277fbe4091c7b8d66e8b4767668e4d4 remains API55/HTTPv1/mainABI26/event4/profile4/court3.631 Windows API tests/126 schemas pass. Native arena IDs are HCParamsID, not physical section9 rows: all102 actual catalog entries match, and nativearena11 resolves row10/New Orleans/f011/s011. The original file selection was correct; earlier metadata had supplied row11. Corrected context SHAde872b327a205de8a82408420b36756211de459bab7b5816a8b3b76c119649b3 reaches the native reader. TypeScript's six compilation inputs and negative-case source match compiledAPI70b (25 runtime checks); this is inherited evidence, not another SDK compilation.

70livel closes/restores98 baseline files/DLL50/originalINI, removes its task and releases custody23:31:25UTC. MVP117 takes the next slot; OpenHoops remains headless/released. A second own historical compression batch retains500 files and recovers459,009,768 allocated bytes in34seconds with zero refusals. Both batches total3,000 files/5,379,952,328 bytes; latest free4,254,380,032. Final original70livem/college70liven production-DLL and stricter C-module fixtures are prepared but unstarted. Native metadata/selected reads, forced-two-point player/team totals, natural reconciled results, independent consumers/repeated ACK and final preservation still need acceptance. No public package, stable promotion, shared input, MVP mutation, dependency or agent.

Final headless refinement70d excludes the generic physical-state setter from classification ownership: target3 alone is insufficient. Rules70b passes470 cases per original/college fixture plus the same1,261 registry/eight fault cases. Final production archive4cb6a5fa25dc6f425c1990b2f4f90f9f04a3a6a0c971d215750e4b087e543c81/DLL5cf761962d7dde03d0c7007f6e43be2e9c7a74fd31b44dc56bac973c916526bc matches all88 tested native inputs and six platform critical inputs. Fresh unstarted70liveo(original)/70livep(college) supersede70livem/n and use unchanged API70c/strict module70b. No game was launched for this refinement.

2026-10-20 UTC — Original work70 acceptance, college startup diagnosis and shared handoff

Original70liveo/native70d/API70c/module70b passes a natural9–6 result with15 classification callbacks, seven native1→0 (3→2 point) applications, zero three-point attempts/makes for every team/player, both selected court/arena reads and strict C metadata epoch/hash/physical-arena checks. All301 response-schema checks pass; two independent result consumers receive identical reconciled immutable results and repeated ACK succeeds. One double-bonus FT query keeps the native2→2 count; changed FT-count values remain headless evidence. The run closes/restores98 isolated files/DLL50/INI and releases at23:51:39UTC.

College70livep reaches native opening participation/settings readiness but fails its90-second metadata hold and broker startup deadline; no natural result is accepted. It closes/restores/releases at23:55:05UTC. The persisted last snapshot remains menu state. Reusing its actual persisted rule runtime with a simulated main mapping reproduces API70c's Invalid launch rules declaration: ABI18+ decoding still required scaled OT after the SDK independently froze60-second periods/120-second OT. API70e accepts matching frozen college authority while retaining invalid/missing/mismatched authority refusal, all standard half lengths and original declarations.634 Windows tests/126 schemas pass; native70d's88 inputs/DLL5cf76196 are unchanged. Intermediate API70d retains one failed test fixture (original profile incorrectly used revision4); API70e fixes only that fixture relative to70d. API70e archive646077ebe1109c410a9ce112b4fc316e81c926a727a104ce469fc7492f481294. Fresh70liveq is prepared, unstarted, with unchanged duration policy/assets/module/native source and improved startup observation retention.

The authorized shared contract additively registers arena without changing pre-existing statuses; SHA5e691c4e838c862afbc15a09bca07dbbab5590a22681b2f4d94c1a4a391f08f9. Actual records have15 fields. Arena creates its own released status; own acquisition now validates every registered project's identity/released/null token/game/broker.35 headless custody checks and89 PowerShell parses/foreign-custody refusals pass without shared mutation.23:56:05UTC preservation verifies95 originals in both games,98 isolated files and protected binaries/INI/packages/four hosts. MVP117 completes its cold-load/install and releases at00:05:54UTC; arena acquires at00:07:06UTC, then OpenHoops may retry after explicit release/fresh custody. No public package, stable promotion, peer file mutation, global input, dependency or new agent.

Additional compression70c preserves141 old single-link cache files and recovers81,687,692 allocated bytes in5.87seconds, with zero refusals. Across3,141 files the three batches recover5,461,640,020 allocated bytes. Free space at00:06:45UTC is3,701,043,200; later launch guards still recheck the3GiB floor.

2026-10-20 UTC — Work70 college acceptance and preserved release

College70liveq/API70e/native70d/module70b passes the same previously failing60-second-half/120-second-OT configuration. Held-phase4 metadata binding/reveal succeeds; natural regulation ends away6–home3. All247 schemas and six classification callbacks pass (two native1→0, four0→0), with zero player/team3PA/3PM and points=2*FGM+FTM. Strict copied C metadata/physical arena/epoch/hash and both selected IFF reads pass. Two independent ResultInbox consumers receive identical reconciled immutable results, repeated ACK and owned finished stop succeed. There is no FT-count callback in college; original70liveo's only FT callback retains baseline2→2. Changed FT counts retain instruction/headless evidence rather than a fabricated live pass.

Together with original70liveo's9–6/301-check acceptance, this closes the supported private work63/work70 subset. API70e passes634 Windows tests/126 schemas; native70d retains88 matching native inputs,470 checks per profile,1,261 registry checks and eight fault processes. No ABI/public package/stable promotion. Existing full-rulebook/universal-event/physical-controller/live-hot-swap/presentation limits remain.

Exact child10808/start00:15:44.8331740Z and broker5496/start00:15:44.4347923Z close; watchdog/task remove after exact identity checks.64 current files archive, two new cache extras remain preserved in the archive, and98 baseline files/DLL50/original INI restore. Lease d8b57ea7 releases00:25:11UTC; final preservation00:25:15UTC verifies95 originals in both games,98 isolated files, protected binaries/INI/public packages/four hosts and zero owned workers/tasks/game/API/no lock. Free3,566,993,408. Arena r11 gets the next slot under fresh custody; OpenHoops remains headless. Compression70d/e preserves200 hash-receipted single-link cache files only in closed/restored after-archives and recovers281,743,352 allocated bytes with zero refusals. No live/peer/shared-link/database/package/host changes. Closeout.

2026-10-20 UTC — Team71 published hook/broker/SDK and dynasty handoff

The user requested the current build for teammates and complete integration documentation; the dynasty framework is unknown, so the process/HTTP contract is language independent. New immutable2026.10.20-team1 includes accepted API70e/dev55/ABI26/event4, native70d/DLL5cf76196, sanitized roster writer, embedded Python3.13.16, compiled/source TypeScript and native C SDKs, eleven curated guides/full50-operation126-schema reference and offline HTML. New Python/Node examples cover actual roster/request generation, managed launch and durable result storage before ACK/owned finished stop. No API/native behavior changed.

634 tests/126 schemas pass against packaged modules/interpreter,25 packaged TypeScript tests,13 example/actual-HTTP synthetic cases covering all eight scenarios, and ten installer transaction groups pass. The full HTTPS ZIP download hashes to da44197bed5d74f3ee0370d131154a5a2a3b99beb4d9f5b866765ab460ee1e9e (12,328,569bytes);195 payload files and253 offline links verify. Sixteen public HTTPS links,206 ranges and six private/API404 routes pass. Native Paseo hub→integration navigation and1200×800/430×850 rendering pass; bounded screenshots avoid the host's full-page stitching artifact. No new game execution; original/college native proof is inherited from unchanged70d. Changed FT count, physical devices and unfinished presentation retain explicit limits.

A separate allowlisted Dell downloads71 host uses8796/8797 and a temporary Quick Tunnel; original artwork/preview hosts and all historical ZIPs remain unchanged. Initial SSH-job children exited; first detached launch lacked process-local script policy; their evidence is retained. Corrected WMI launch71b persists independently, with no scheduled task/service or machine policy change. Preservation71 verifies95 originals in both games,98 isolated files, protected DLL50/EXE/INI and all four old hosting identities, no game/task/API/lease, free3,320,373,248bytes. No peer paths, shared input/session/display or other chats were touched. User now manages cross-project coordination. Team links, sources and acceptance.

2026-10-20 UTC — Deep cleanup72; arena explicitly excluded

User-authorized Mac/Dell deep cleanup is complete.106 closed Mac raw captures (14.39GB logical) become fully round-trip SHA-verified gzip archives, saving13,139,873,792 allocated bytes; index/restorer retain original names, hashes and metadata. Source, summaries, original corpus and every arena/Hill/Blender/court-artwork tree stay in place. Dell1,200 closed diagnostics/state files receive targeted transparent compression (11,083,308,905bytes reclaimed);8,113 source-backed generated files and38 idle historical test tasks are removed.44 obsolete extracted stages/6,510 files are retained in86MB of private verified ZIPs with an actual restore check.2,487 unique historical IFF identities reveal no further duplicates, so no links are created.

Final file checks pass;214 accepted source inputs, native70d, all75 hosted team files, exact team-host identities, protected reference95 saves/original EXE/stable adapter, historical packages and all four older hosts verify. The live download remains HTTP200 and ZIP hash unchanged. Arena began its separate r19-b preview during the headless work; old isolated-baseline comparisons therefore saw mutable test-game settings change. No game-root/arena file was targeted or restored, and no peer chat was messaged. Final reference/source/host checks deliberately exclude the active isolated game. No game/build/application test/service/task was started. Mac now roughly28GB free and Dell15GB; future guards must re-read shared space. Restore paths and preservation limits.

2026-10-20 UTC — Second deep storage cleanup73

At the user's explicit request to look deeper, cleanup73 reclaims another23,694,738,721 bytes by recorded file accounting (about23.7GB):3,150,749,696 Mac allocated bytes from55 losslessly archived closed databases/court logs/binary captures;18,388,263,079 Dell bytes from four retired private game candidates;792,375,138 net logical bytes from seven obsolete editor dependency installs; and1,363,350,808 bytes from372 identical immutable historical cache copies outside the first audit's logs-only scope. No original corpus, stable reference/shared game, arena/Hill/Koch/Blender work, original package/backup, current toolchain, accepted runtime or host was a cleanup target. No game/application build/test/service/task/agent was started, no shared custody was acquired, and no other chat was contacted.

The four obsolete candidates are roster-game37j/distribution-game42d/ultrawide-game43d/ultrawide-final43w. Full19,963-file manifests retain all294 non-reference files (2,493,254,650 logical bytes) in948,948,133 bytes of private overlay ZIPs. Every base and override was hashed before removing the old clone. Read-only checks find no process/task/arena-Hill script using those paths. Reference and original reference-game.tar remain intact. Explicit restore is required before old launch scripts can run. A complete4,936-file/7,879,475,503-byte candidate restore and1,630-file dependency restore independently verify every hash and independent file identities, then remove their temporary copies without executing applications. Four Mac restores verify DB/log/trace/settings bytes and xattrs.

Historical cache consolidation preserves paths/hashes with original per-path metadata in journals; materialize before edits. Existing multi-link anchors with outside aliases were skipped, then the fallback selected only independent own historical copies; no existing outside alias/game/database/roster/peer file was linked. The first logs-only audit's no-additional-duplicates result remains valid for that narrower scope.

Final independent checks rehash all5,026 reference files, all11 new Dell archives,14 dependency source/lockfiles and372 consolidated paths.214 accepted API/native inputs,75 hosted team files,95 protected saves/stable EXE/adapter/historical packages and all six exact hosting identities pass preservation. Zero cleanup workers or retired test tasks remain. Shared match-game44a was not restored or compared against an obsolete baseline; final owner observation is null. Free space roughly41.7GB Mac/35.6GB Dell, with concurrent changes excluded from per-file savings. Both passes total about48GB recovered. Current team1/API70e/native70d and original public ZIPs are unchanged. Cleanup and restore handoff · Archive guide.

2026-10-20 UTC — Presentation new-chat handoff

Prepared PRESENTATION-HANDOFF.md for the user's new presentation chat and linked it from AGENTS/current-state/presentation overview/renderer notes. It records established2024–25/2025–26 ESPN CBB with1:1 fidelity, exact work69 infrastructure versus unfinished native suppression/D3D9 host/cues/runtime loading, current team1/API70e/native70d and existing metadata/event-round contracts. It explicitly supersedes old waiting-for-Dell-safe and notify-MVP wording with fresh current shared-custody guards and user-managed coordination. Cleanup restores/immutable history/arena protection remain. Handoff links verify and the knowledge index is refreshed. No game/build/application test/service/agent/chat/dependency/runtime implementation was started or changed.

2026-10-24 UTC — External working storage migration

User-authorized main and coordinated arena migration preserves169 disjoint units/125,920 files:60,491,781,297 logical bytes and60,849,729,536 original allocated bytes moved to /Volumes/MacStudioExternal/Modding/OpenHoops. All five arenas, original corpus/packages, research, immutable releases and cleanup72/73 recovery history remain available through original workspace paths. Lightweight source/docs remain internal with44 reciprocal external links. Entire analysis parent is now one external link; all45,042 recursive members matched after atomic parent consolidation, so new research follows external storage. Mixed build/distribution/assets parents remain internal. About80GB internal free at completion, subject to concurrent use; this is relocation rather than an additional backup.

Every file passed SHA256 copy/pre-removal checks and source-backed metadata verification, including native creation times. Internal originals were removed only after atomic path swaps, fresh source/open-handle checks, payload/directory fsync and device F_FULLFSYNC. The precise OS-generated provenance addition is journaled for15,668 entries; source-backed xattrs remain exact. Independent main rehash, actual archived SQLite restore, arena manifest/package review and combined routing pass. Main/arena records under external Modding/Migration-records retain manifests, original metadata, hashes and receipts; final analysis-parent topology supersedes earlier child-link topology only.

Added storage/recovery guide, external Modding start page, current-state/AGENTS/cleanup/presentation pointers and search-index entry. Keep MacStudioExternal mounted with its current name; reconnect missing storage instead of replacing dangling links. Existing preview server preserved. No game/build/application test/render/new service, automatic job, Dell mutation or runtime/public-release change. Explicitly authorized storage coordination used the existing arena chats; no new agents. Combined final receipt.

2026-10-24 UTC — Full workspace moved to external storage

Brent explicitly requested moving the workspace itself after the bulk-data handoff. All remaining44 source/doc/tool units (6,064 files,277,623,836logical bytes,296,497,152original allocated bytes) now physically reside in /Volumes/MacStudioExternal/Modding/OpenHoops. Former reciprocal code links were replaced by verified real payloads. Build/distribution/assets parents were consolidated; an atomic root swap made /Users/brentlane/Projects/NBA 2K14 Decomp:Recomp one compatibility symlink. All new output under either root now lands externally. The separate213MB legacy networking-migration backup was outside this workspace and remains untouched.

Fresh holds covered all five arenas and the other shared-project chat. File hashes, membership, source-backed xattrs/ACL/mode/mtime/native birthtime, per-unit source stability and final full code rehash passed. Exact OS-generated provenance additions are journaled for5,888 further entries. A staged .venv copy initially failed symlink-mtime verification; three links were repaired to exact source nanoseconds and verified before promotion, with the initial worker and repair journal retained. All three interpreter links remain intact. Copies and directories were fsynced/F_FULLFSYNC before internal source removal.

Two unchanged existing processes (preview90432 and sleeping Claude45338) held the former root cwd. The retired inode is preserved as /Users/brentlane/Projects/.OpenHoops-workspace-forwarder-20261024, containing24 symlinks and zero regular files. This keeps their relative paths working without restart; remove only after fresh no-handle checks. Preview directory/STATUS/project/RELEASE readbacks remain HTTP200 and byte-identical. Root/code-link receipts supersede earlier source-internal topology only; old bulk hashes/releases remain historical evidence. Updated storage guide/start page/AGENTS/current-state/presentation/cleanup pointers. No game/build/application test/new service, dependency installation, automatic job, Dell or runtime change. Move receipt · Final validation.