Commit graph

  • 175ad14f8b Merge branch 'claude/friendly-varahamihira-7b8664' — Tier 1 entity-classification cache (closes #53) main Erik 2026-05-11 00:11:42 +02:00
  • 110fb691a8 ship(post-A.5 #53): Tier 1 entity-classification cache — closes ISSUE #53 Erik 2026-05-11 00:09:57 +02:00
  • f928e66119 fix(render #53): incomplete-entity flag must persist across same-entity tuples Erik 2026-05-10 23:56:58 +02:00
  • c55acdc3d5 fix(render #53): skip cache populate when classification is incomplete Erik 2026-05-10 23:42:46 +02:00
  • 95ebbf3004 fix(render #53): key cache by (entityId, landblockHint) to defeat ID collision Erik 2026-05-10 23:02:14 +02:00
  • 71d0edc3d7 fix(world #53): namespace stab Ids globally for Tier 1 cache safety Erik 2026-05-10 20:07:19 +02:00
  • 4df19146ff docs(render #53): clarify DebugCrossCheck's wiring status Erik 2026-05-10 19:49:13 +02:00
  • f16604b60b feat(render #53): DEBUG cross-check guards against the prior Tier 1 bug class Erik 2026-05-10 19:43:24 +02:00
  • 489174f21c feat(render #53): wire EntityClassificationCache.InvalidateLandblock at LB demote/unload Erik 2026-05-10 19:32:16 +02:00
  • 6f7d73f7cf Merge branch 'claude/sharp-sanderson-6b47ae' — sharpen Phase M into design spec + opcode matrix Erik 2026-05-10 19:22:54 +02:00
  • 1d1afcd562 feat(render #53): wire EntityClassificationCache.InvalidateEntity at despawn Erik 2026-05-10 19:22:50 +02:00
  • c7021d8645 docs(phase-m): sharpen Phase M into design spec + opcode coverage matrix Erik 2026-05-10 19:22:49 +02:00
  • f7e38c214d fix(render #53): cache-hit fast path must fire per-entity, not per-tuple Erik 2026-05-10 19:15:20 +02:00
  • 0cbef3c8b3 feat(render #53): cache-hit fast path + dispatcher integration tests Erik 2026-05-10 18:56:33 +02:00
  • 00fa8ae839 fix(render #53): cache Populate must flush at entity boundary, not per-MeshRef tuple Erik 2026-05-10 18:36:57 +02:00
  • 2f489a83a7 feat(render #53): cache-miss populate on first frame for static entities Erik 2026-05-10 18:24:26 +02:00
  • 28513eae88 feat(render #53): add optional CachedBatch collector to ClassifyBatches Erik 2026-05-10 18:14:35 +02:00
  • a65a241981 feat(render #53): inject EntityClassificationCache into WbDrawDispatcher Erik 2026-05-10 18:05:03 +02:00
  • 41fe6d0172 Merge branch 'claude/sharp-sanderson-6b47ae' — capture holtburger network study + Phase M.0 Erik 2026-05-10 17:56:30 +02:00
  • 60fbfce8bc refactor(render #53): plumb landblockId through WbDrawDispatcher walkScratch Erik 2026-05-10 17:55:51 +02:00
  • b8b9845f50 docs(post-A.5): capture holtburger network-stack study + Phase M.0 quick-wins Erik 2026-05-10 17:52:26 +02:00
  • a171e7007b feat(render #53): EntityClassificationCache.InvalidateLandblock + tests Erik 2026-05-10 17:47:57 +02:00
  • aea4460eae feat(render #53): EntityClassificationCache.InvalidateEntity + tests Erik 2026-05-10 17:42:09 +02:00
  • 694815c499 feat(render #53): EntityClassificationCache.Populate + roundtrip tests Erik 2026-05-10 17:34:48 +02:00
  • 773e9703da feat(render #53): EntityClassificationCache skeleton + first test Erik 2026-05-10 17:23:37 +02:00
  • c02405cbb7 refactor(render): extract WbDrawDispatcher.GroupKey to internal type at namespace scope Erik 2026-05-10 17:13:44 +02:00
  • 2f8a574b92 docs(post-A.5 #53): Tier 1 cache — implementation plan (writing-plans) Erik 2026-05-10 17:06:42 +02:00
  • 4abb838729 docs(post-A.5 #53): Tier 1 retry — mutation audit + cache design spec Erik 2026-05-10 16:50:26 +02:00
  • f66522cd6b Merge branch 'claude/cranky-varahamihira-fe423f' — Tier 1 retry cold-start handoff Erik 2026-05-10 16:14:24 +02:00
  • 15376c7a73 docs(post-A.5): cold-start handoff for the Tier 1 retry session (#53) Erik 2026-05-10 16:14:24 +02:00
  • da08490ab0 Merge branch 'claude/cranky-varahamihira-fe423f' — Post-A.5 polish: close #52 (lifestone) + #54 (JobKind plumbing) Erik 2026-05-10 16:08:32 +02:00
  • 9a55354143 docs(post-A.5 #54): close JobKind plumbing issue + update CLAUDE.md flight status Erik 2026-05-10 16:04:01 +02:00
  • bf31e59805 fix(streaming): close #54 — plumb JobKind through BuildLandblockForStreaming Erik 2026-05-10 16:03:16 +02:00
  • b19f1d10ec docs(post-A.5 #52): close lifestone issue + update CLAUDE.md flight status Erik 2026-05-10 15:51:46 +02:00
  • e40159f4d6 fix(render): close #52 — lifestone visible (alpha-test + cull + uDrawIDOffset) Erik 2026-05-10 15:49:05 +02:00
  • c111312e13 docs(post-A.5): cold-start handoff for the next session Erik 2026-05-10 10:16:10 +02:00
  • d3d78fa14f Merge branch 'claude/hopeful-darwin-ae8b87' — Phase A.5 SHIP + Quality Preset system Erik 2026-05-10 10:09:03 +02:00
  • 9245db5b04 phase(A.5): SHIP — two-tier streaming + horizon LOD + Quality Preset system Erik 2026-05-10 10:08:13 +02:00
  • 8f43a58037 Merge branch 'claude/bold-proskuriakova-d4fb2c' — ISSUES.md #13 PlayerDescription trailer parser + F.5a roadmap entry Erik 2026-05-10 10:07:06 +02:00
  • d93d823539 docs(A.5 T27): roadmap + ISSUES + CLAUDE.md updates for A.5 ship Erik 2026-05-10 10:06:40 +02:00
  • 68d6898339 roadmap: add F.5a — visible-at-login dev panels (consumes #13) Erik 2026-05-10 10:06:30 +02:00
  • a28a5b7583 docs(A.5 T27): spec + plan amendments for T22.5 + ship Erik 2026-05-10 10:06:26 +02:00
  • 9b49009dd5 Revert "feat(perf): Tier 1 entity classification cache" Erik 2026-05-10 09:53:26 +02:00
  • 95aaa6c92e docs: close ISSUES.md #13 — PD trailer parser shipped Erik 2026-05-10 09:47:51 +02:00
  • 3639a6f4ac feat(perf): Tier 1 entity classification cache Erik 2026-05-10 09:45:18 +02:00
  • 078919cc18 feat(net): #13 register PD trailer inventory+equipped in ItemRepository Erik 2026-05-10 09:43:46 +02:00
  • 58095d8d4b test(net): #13 end-to-end PD trailer fixture covering every section Erik 2026-05-10 09:39:36 +02:00
  • 462f9d6377 docs(perf): roadmap for Tier 2 + Tier 3 entity-dispatcher optimizations Erik 2026-05-10 09:38:38 +02:00
  • 91693ea44c feat(net): #13 heuristic inventory locator after gameplay_options blob Erik 2026-05-10 09:37:46 +02:00
  • 0ad8c99c37 fix(A.5): WalkEntities scratch-list pattern (Bug B — T17 GC pressure) Erik 2026-05-10 09:13:20 +02:00
  • 9217fd93cd fix(A.5): strip far-tier entities in worker (Bug A — far tier optimization) Erik 2026-05-10 09:10:42 +02:00
  • d9a5e40203 feat(net): #13 strict inventory+equipped reader (no GAMEPLAY_OPTIONS) Erik 2026-05-10 08:49:10 +02:00
  • 98eebef740 feat(net): #13 read options2 gated on CHARACTER_OPTIONS2 flag Erik 2026-05-10 08:46:32 +02:00
  • b17dc3b152 feat(net): #13 read optional spellbook_filters u32 Erik 2026-05-10 08:44:05 +02:00
  • 28d2c6018e feat(A.5 T22.5): wire QualityPreset into renderer + streaming (commit 2/2) Erik 2026-05-10 08:43:06 +02:00
  • 75e8e260f2 feat(net): #13 read desired_comps list in PD trailer Erik 2026-05-10 08:39:31 +02:00
  • afa4200107 feat(A.5 T22.5): QualityPreset schema + tests (commit 1/2) Erik 2026-05-10 08:37:17 +02:00
  • 8cbb991d95 feat(net): #13 read hotbar spells (SPELL_LISTS8 + legacy path) Erik 2026-05-10 08:35:03 +02:00
  • c473feedb3 feat(A.5 T23): BUDGET_OVER flag in [WB-DIAG] / [TERRAIN-DIAG] Erik 2026-05-10 08:28:45 +02:00
  • f7a5eea8e8 feat(net): #13 read shortcuts list (SHORTCUT bit) in PD trailer Erik 2026-05-10 08:28:25 +02:00
  • 3b684db0f1 feat(A.5 T22): fog wired from N₁/N₂ + ACDREAM_FOG_*_MULT env vars Erik 2026-05-10 08:27:55 +02:00
  • 1488ec62b7 test(A.5 T21): lock in depth-write attribution per translucency kind Erik 2026-05-10 08:27:03 +02:00
  • 9a0dfe03da refactor(net): #13 Parsed.TrailerTruncated + diag logging Erik 2026-05-10 08:26:08 +02:00
  • 26b2871b10 feat(A.5 T20): MSAA 4x + alpha-to-coverage on foliage Erik 2026-05-10 08:25:59 +02:00
  • 4b84e5650b feat(A.5 T19): mipmaps + 16x anisotropic on TerrainAtlas Erik 2026-05-10 08:24:44 +02:00
  • 0afd741ea7 feat(A.5 T18): use cached WorldEntity AABB in dispatcher; populate at register Erik 2026-05-10 08:20:20 +02:00
  • becbde60a4 feat(net): #13 read OptionFlags + Options1 after enchantments Erik 2026-05-10 08:18:38 +02:00
  • 003443cd1a feat(A.5 T17): WbDrawDispatcher Change #1 — animated-walk fix + WalkEntities helper Erik 2026-05-10 08:18:02 +02:00
  • 65870349a8 refactor(net): #13 rename Shortcut → ShortcutEntry, expand doc citations Erik 2026-05-10 08:16:01 +02:00
  • 0de6bc9c96 fix(A.5 T13-T16): canonical LB id in Tick_DrainingPromoted test Erik 2026-05-10 08:09:53 +02:00
  • c2c8a532db fix(A.5 T13-T16): WorldEntity required-member fields in new tests Erik 2026-05-10 08:09:10 +02:00
  • 19b4465257 fix(A.5 T13-T16): canonicalize ids; init-only radii; demote/promote tests Erik 2026-05-10 08:08:23 +02:00
  • d3b58c97e0 feat(net): #13 scaffold trailer fields on PlayerDescriptionParser.Parsed Erik 2026-05-10 08:06:33 +02:00
  • 31d312add3 fix(A.5 T16): debug overlay shows _nearRadius instead of legacy _streamingRadius Erik 2026-05-10 08:01:30 +02:00
  • c4fd37384a feat(A.5 T16): wire two-tier streaming into GameWindow Erik 2026-05-10 07:58:12 +02:00
  • b8d80fe282 feat(A.5 T13): StreamingController two-tier Tick Erik 2026-05-10 07:56:57 +02:00
  • aff35d2a76 refactor(A.5 T15): TerrainModernRenderer.AddLandblockWithMesh entry point Erik 2026-05-10 07:54:40 +02:00
  • fb10c3fa8c feat(A.5 T14): GpuWorldState RemoveEntitiesFromLandblock + AddEntitiesToExisting Erik 2026-05-10 07:53:34 +02:00
  • 774a7070a8 fix(A.5 T10-T12): Start() race + null mesh test + real mesh stub Erik 2026-05-10 07:49:14 +02:00
  • 76e1a64d78 fix(A.5 T10): lock 2 missed _dats.Get<Setup> sites Erik 2026-05-10 07:41:36 +02:00
  • 0405947bac feat(A.5 T12): inject mesh-build dependency into LandblockStreamer Erik 2026-05-10 07:35:45 +02:00
  • 00bb030c9f feat(A.5 T11): activate LandblockStreamer worker thread Erik 2026-05-10 07:32:35 +02:00
  • 0cf86bb126 fix(A.5 T10): serialize DatCollection access via _datLock Erik 2026-05-10 07:32:23 +02:00
  • c5f98b276e fix(A.5 T7-T9): migrate entity.Position= → SetPosition; add Promoted arm Erik 2026-05-10 07:25:07 +02:00
  • 4be392b361 refactor(A.5 T9): _surfaceCache -> ConcurrentDictionary for off-thread mesh build Erik 2026-05-09 22:55:53 +02:00
  • a0741bd13a feat(A.5 T8): WorldEntity AABB cache + dirty flag Erik 2026-05-09 22:54:25 +02:00
  • 295bce9bb2 feat(A.5 T7): LandblockStreamResult.Loaded.Tier+MeshData; Promoted variant Erik 2026-05-09 22:53:07 +02:00
  • 1658882439 fix(A.5 T4-T6): bootstrap guard + dead enum + test cleanups Erik 2026-05-09 22:49:35 +02:00
  • 326b698161 test(A.5 T6): StreamingRegion transitions + hysteresis + oscillation coverage Erik 2026-05-09 22:39:16 +02:00
  • fb6b61e8ef feat(A.5 T5): StreamingRegion two-tier RecenterTo + TierResidence tracking Erik 2026-05-09 22:36:20 +02:00
  • 7bcababf82 feat(A.5 T4): StreamingRegion ComputeFirstTickDiff Erik 2026-05-09 22:34:55 +02:00
  • 378f32ac7a fix(A.5 T3): pin Radius==FarRadius invariant in two-tier ctor test Erik 2026-05-09 22:30:30 +02:00
  • 7fd9c82954 test(A.5 T3): StreamingRegion two-radius constructor Erik 2026-05-09 22:27:50 +02:00
  • 21550ecff2 fix(A.5 T2): document Kind placeholder in HandleJob Erik 2026-05-09 22:25:26 +02:00
  • 90a2027d14 feat(A.5 T2): TwoTierDiff record + LandblockStreamJob.Load.Kind Erik 2026-05-09 22:20:48 +02:00
  • d67d16fcfc feat(A.5 T1): LandblockStreamTier + LandblockStreamJobKind enums Erik 2026-05-09 22:15:57 +02:00
  • b373523f98 docs(A.5): two-tier streaming + horizon LOD implementation plan Erik 2026-05-09 22:10:38 +02:00
  • fcaff71352 docs(A.5): two-tier streaming + horizon LOD design spec Erik 2026-05-09 21:52:00 +02:00
  • 1e6a8123c6 Merge branch 'claude/happy-joliot-f67060' — Phase N.5b SHIP + A.5 handoff Erik 2026-05-09 21:13:55 +02:00
  • f7f88674e1 docs(A.5): cold-start handoff for the next session Erik 2026-05-09 21:11:46 +02:00