Skip to content

History / pipeline_max_coverage

Revisions

  • max formats/coverage/roadmap: sync with typed-graduation series findings Geometry formats: legacy Edit Mesh chunk set is corpus-absent (§10j-sept); the modern map-channel record family located (0x0230/0x033b/0x0334/0x0338); mapext 0x2512 leaf/empty split sharpened + typed codec pointer (§10j-huit). Coverage page: 2026-07-17 currency note for M1-M9. Tutorial roadmap: side-quest 5 status rewritten — export back half exists, corpus-gated; remaining is the build_gamedata 1_export wiring. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EYw97CPc6mjEGd6AQPQ26Q

    @kaetemi kaetemi committed Jul 17, 2026
  • pipeline_max: standalone lightmapper implementation (§11-lm-bis) + light storage reference (MGF Part Q)

    @kaetemi kaetemi committed Jul 11, 2026
  • pipeline_max_coverage: lightmapper architecture pointer (PMD §11-lm)

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max: clodbank coverage audit round (§10z-clod-bis) — 21 -> 6 residual Design doc §10z-clod-bis: Physique link-tree boundary decode (root-attach boneRef=0, NULL chain-attach ends, cross-link COM-skip), float-Point3 normal-delta accumulation + (1,0,0) zero-normalize fallback, mapext UV-mask policy extended to clod, VS2008/x87 pass + both ctest gates. Part M updated with the boundary rules and the completed boneRef decode status; coverage table .clod row moves to 99 FLOATEQ + 6 residual.

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max: document .clod export landing (§10z-clod) Coverage table: NelExportLodCharacter MOSTLY — 105/105 produced, 84 FLOATEQ + 21 residual. Design §10z-clod records the path, deep OSM peel defect, residual classes, and corpus gate. Session 5 / surface-complete. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max_coverage: consistent LIGO_DIFF_BUDGET=95 mention Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max_coverage: 2026-07-10 refresh — shape 99.97%, mapext fully closed (incl. drop-in plugin), cmb budget 1, skinned decode complete, .clod is the last missing format Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max: Map Extender cache decode (§10z-quatorze, MGF Part P) Document the reverse-engineered mapext198m3.dlm format: plugin object is empty of settings; functional UVW map is the LocalModData cache. Coverage and defective-files notes updated for the production path. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 10, 2026
  • pipeline_max coverage: anim row direct-gated per §10m-ter; shape row stale-binary correction Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GizfXGXNmCMAoM9Gnk8fq9

    @kaetemi kaetemi committed Jul 9, 2026
  • docs: §10s-sept LargePath moderate-miss FK hold (coup_fort 0.51→0.23) Record residual diagnosis from offline suite, the 6.5 cm miss gate, full-corpus A/B, and update coverage bar. Co-Authored-By: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • docs: §10s-six limb pole [22..24] + offline GetIKActive oracle Decode limb key [22..24] as the mid-bone pole vector (not plane normal); channel built planted-only, twist apply env-gated after regressions. Offline biped.dlc GetIKActive look-ahead confirmed — keep both-keys plant gate. Default anim accuracy unchanged from §10s-cinq. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • docs: §10s-cinq arm large-path weapon plant IK Document stored-pA gate, dual-fold model, full-corpus A/B (23↑/3↓), and coverage table update for pipeline_max anim export. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • pipeline_max: §10s-quat arm-pin generalization (default ON) Document static-plant drop, COM-yaw session drop, full-corpus A/B (15↑/3↓ max reg +0.02), and arm-pin shipping default. Update coverage table and Part J open-work status. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • pipeline_max_design: §10s-ter arm-pin midFlip reject gate Documents the held-pose midFlip diagnosis, full-corpus A/B (69/25, mean −0.0025), residual l2m local-forearm class, and coverage table update. Co-Authored-By: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • Document §10k-bis: shape-process light-group and transform anim coverage Coverage table and design log for TRACKBUILD, typed Point3/Color controllers, and the closed shape_anim surface (11/11 light groups, transform samples, waterfall non-regression). Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • PMD §10z-onze / coverage: .veget export lands pipeline_max_export_veget replicates NelExportVegetable. Iterates scene-root geometry with NEL3D_APPDATA_VEGETABLE=="1", evaluates mesh through shape's existing modules (scene_lib/mesh_eval/ material_build/mesh_build compiled into both exes via CMakeLists source-file glob — no duplication), verifies UV1 + 1 matblock + 1 rdrpass, copies VB+PB into CVegetableShapeBuild with the vegetable appdata flags (ALPHA_BLEND, ALPHA_BLEND_ON/OFF_LIGHTED, ALPHA_BLEND_OFF_DOUBLE_SIDED, FORCE_BEST_SIDED_LIGHTING, BEND_FACTOR, BEND_CENTER), calls CVegetableShape::build, serializes. Corpus (veget_corpus.py --all -j 12): T1/T2 126/126 clean; T3 505 exported: 92 byte-identical + 397 size-eq (float noise) + 16 size- diff (Ju_DebrisFeuillesA family, one structural outlier), 0 export failures, 0 references not produced. All 126 reference .veget files across jungle/lacustre/primes_racines are produced. Coverage row moves from MISSING to MOSTLY.

    @kaetemi kaetemi committed Jul 9, 2026
  • PMD §10z-onze: parametric Cyl/Sphere UVs + CMeshMRM COFile write path Parametric Cylinder + Sphere Generate Mapping Coords UVs land in PRIMMESH::buildParametricMesh, matching ~/shape_export_dataset GT. Both use a per-tri seam-shift rule (keep consecutive |Δu| ≤ 0.5 by adding/subtracting 1) to reproduce Max's u=1.0/-0.125 duplicate UV verts at cap-fan seam-crossing tris without ring-mod special-casing. CMeshMRM write path: switch the shape exporter's initial serialize from CMemStream to a PID-suffixed COFile temp, then read back for the CMeshBase v10→v9 patch. CMeshMRMGeom::save uses a seek-back then-forward pattern to patch its per-lod offsets; CMemStream::seek rejects the forward seek because length() = current write position, so the writer silently truncated at each lod boundary. Corpus tester compare mode couldn't load the resulting files, hiding the defect — every unskinned CMeshMRM shape was structurally broken but counted as DIFF without any actual comparison ever running. Same COFile workaround pipeline_max_corpus_test already uses for its T2 round- trips (PMD §9 note); verified fresh tr_bar_acc_pouf / ca_hof_casque01 now load cleanly. Corpus stays green at 3577 exported / 14 byte-identical / 1145 float-eq / 1034 differ / 118 mapext / 980 lm-verified + 285 lm-diff. Same T3 counts as pre-fix (the previously-broken shapes were already in DIFF for legitimate content reasons too) — the fix is a correctness bar the corpus stats don't reflect.

    @kaetemi kaetemi committed Jul 9, 2026
  • PMD §10z-dix: CSegRemanence + shared spline decode closes 82-file remanence class Document SPLINESHAPE (max_geometry_formats Part N), remanence production path, corpus T3 3577 exported / 13 not-produced (~99.6% coverage), and handoff for skinned DIFF quality / UVW / veget / clod.

    @kaetemi kaetemi committed Jul 9, 2026
  • §10z-sept: Physique production path closes skinned shape coverage Document PHYSIQUESKIN landing (653-file frontier closed, T3 3493/3590 produced), parametric Box/Plane UVs, interface-mesh demotion, and Part M production status. Co-authored-by: Grok 4.5 <noreply@x.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • Physique bone table located, primary boneRef=~index decoded (Part M + design §10z-six) Co-authored-by: GLM 5.2 <noreply@z.ai>

    @kaetemi kaetemi committed Jul 9, 2026
  • Update coverage after VertexTreePaint and Physique/Skin hardening Reflects the shape-coverage-audit session's four items in the coverage table row for NelExportShapeEx and in the sized-work- packages section: * Physique/Skin detection retargeted to concrete (ClassId, SuperClassId) tuples with SKIPCLASS bucket split (skinned-physique / skinned-skin); Physique mod-app payload characterized as Part M in max_geometry_formats with PMB_SKIN_DUMP diagnostic; the four decode blockers a follow-up session would close now enumerated in B.1 rather than the coverage doc having to point at the design doc for the same list. * Nel VertexTreePaint modifier fully implemented (110 uses, was the largest single unknown-modifier count in B.8 / Session 4). B.8 marks it DONE with a one-line format summary; Session 4's plan updated to strike VertexTreePaint from the target list. UVW Map is now the biggest remaining modifier gap by usage (272 uses in the current corpus warn breakdown, up from the previous 76 figure because the corpus was previously counting a subset that this session's diagnostic resolution changed). * Shape-superclass base objects (SplineShape 0xa / Line 0x1040 / Rectangle 0x1065) routed to a distinct "shape:*" warn bucket instead of the generic "obj:*" bucket the coverage doc previously listed under mesh-eval; the row now shows the split (shape:0xa=7 + shape:0x1040=2 + shape:0x1065=5 = 14) alongside the mesh-eval skip count that stays 14 since these still SKIP (they just categorize better now). * Corpus counts refreshed (982 verified + 281 lightmap-diff was the previous snapshot the shape row already carried — actually matched today's measurement exactly, so only the wording changed, not the numbers). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 9, 2026
  • Update coverage for cmb face-vertex remap landings Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 9, 2026
  • Document cmb coverage session in design doc Adds §10z-ter to pipeline_max_design covering the cmb-coverage session: 0x0210 corpus-verified as face-vertex remap (not created map-1 faces as previously assumed), EditablePoly + parametric-prim collision meshes, and the ligo tier gated on par with the direct tier. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 9, 2026
  • Update coverage after flare landing and water compare walk Shape row corpus counts refreshed: 12 byte-identical + 972 float-eq + 521 differ + 72 mapext + 983 lightmap-verified + 280 lightmap-diff + 1 no-ref (2841 exported, 749 not produced). Flare class closed (13 → 0). Water shapes moved from DIFF to FLOATEQ via the new compareWaterShape field walk. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 9, 2026
  • Clarify cmb ligo tier is a real export step Both pipeline_max_coverage and pipeline_max_design previously read as if the cmb ligo tier were inert / informational. nel_ligo_export.ms calls NelExportCollision per brick exactly like it calls NelExportInstanceGroup, landing brick-level `.cmb` in LigoEcosystemCmbExportDirectory, which is then land_exporter's RefCMBDir input for the placed-instance copy that rbank's "Build rbank indoor" step reads. The tier is measured-but-not-gate- blocking (same soft-gating convention as ligo_ig_corpus's DIFF_BUDGET), not a sign the step is inert.

    @kaetemi kaetemi committed Jul 9, 2026
  • Update shape coverage after water byte-identity rounds Shape row corpus counts refreshed (2828 exported, 762 not-produced). Water row promoted to DONE with the two byte-identity rounds recorded (CTextureBlend + stream v7 → v4 downgrade + correct v14-water-material NLB_MAIN param ids via PMB_WATER_DUMP → 3-byte quat-MSB residual only). Session 3b scope reduced (water now DONE) to remanence + flare + interface (104 files). EditablePoly extraction mentioned as same-session bonus (60 of 73 mesh-eval closes). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 9, 2026
  • Document EditablePoly and CWaterShape shape session Adds §10z to pipeline_max_design: EditablePoly extraction (+13, mesh-eval skips 73 → 14) + CWaterShape path (+219, water skips 221 → 1). Corpus 2596 → 2828 exported, coverage 72.7% → 78.8%. Skinned/MRM (654) is now the sole big remaining not-produced class. Wiki coverage table updated. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 8, 2026
  • Update coverage for multi-lod and lightmap-mask landings Session 2 slot now records the M2 landing (CMeshMultiLod +418, parametric prims +37, EDITMESH migration, lightmap-mask verify 982/1263). Shape row moves from PARTIAL to 'PARTIAL, M2 in flight' with the current corpus tier breakdown. Session 3 (skinned MRM, still open) is now the biggest single remaining piece; new Session 3b covers water / remanence / flare / interface. Cross-cutting infrastructure list gains PRIMMESH + EDITMESH + XREFRESOLVE. Modifier tail catalogued with counts. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 8, 2026
  • pipeline_max §10x + max_geometry_formats Part L expansion — the auth-doc MeshDelta spec (modifier stream framing, local-data stream framing, legacy TOPO_DELTA chunks + conversion procedure) plus corpus-validated modern-format MDELTA_CHUNK sub-tree. Key corrections vs §10w's Part L first pass: 0x0208 = created BASE faces, 0x0210 = created MAP-1 TEXTURE-VERTEX faces (not "variant B" of the same thing — different vertex spaces; applying 0x0210 to the base mesh causes edge-inconsistent topology CCollisionMeshBuild::link rejects, corpus-pinned via fy_hall_reunion). New 0x0220 = per-face attribute changes (matID + edge-vis + hidden updates to input face set, legacy TOPO_ATTRIBS equivalent — values bits 0..2 edges, 3 hidden, 5..20 matID; applyMask bits 0..4 split off from legacy bits 28..31 into a parallel word; pinned by fy_hall_reunion's 82 entries reproducing reference's exact matID distribution). New L.4 modifier stream (SEL_LEVEL 0x2800 + enum values SL_OBJECT=0..SL_ELEMENT=5, named-set containers 0x2805/6/7 with 0x2809/0x2810 name/id pairs, AR params 0x2820-0x282c with the float-declared-as-int interop note, EMOD_FLAGS 0x2830 persistent/transient mask split, load-only AR force-off behavior). New L.5 local-data stream (modern V-E-F write order for the selection-set chunks 0x2845/0x2847/0x2846 despite numeric V-F-E id order, MDELTA_CHUNK 0x4000 pointer to §L.1/§L.2; legacy 0x2750/0x2755/0x2756 selection BitArrays, 0x2760/0x2761/0x3000 vert-delta chunks, TOPO_DELTA_CHUNK 0x2765 container with full child inventory 0x2770..0x3040; face-remap semantics with UNDEFINED sentinel; sequential-post-deletion index encoding). New L.6 post-load legacy conversion (14-step procedure clearing prior deltas through vertex-clones/deletes/creates/tex-vert-creates/face-deletes/creates/tex-face-creates/remaps/attribs/move-emit/selection-copy, sub-object level remap 2→SL_POLY 3→SL_EDGE, modern-format post-load repair checks). Chunk ID reuse (0x2800/0x2810/0x2820/0x2830 in both modifier-stream and legacy-topo-delta scopes) explicitly disambiguated. pipeline_max_design.md gains §10x documenting the shared code refactor (edit_mesh_mod + xref_resolve modules, ig retargeted byte-identical, cmb wired), the corpus results (fy_hall_reunion 247/248 face-index match + exact material distribution; ligo tier 54 -> 170 measured igs), and the open items (created-vert positions, face-vertex-remap chunk not yet identified, zo_bt_hall_Reunion_vitrine larger-scale, zo_bt_Hall_Conseil unchanged). pipeline_max_coverage.md CMB row updated Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 8, 2026
  • pipeline_max_coverage: regrade ig rows and rewrite §D per §10w. Standalone MOSTLY -> GREEN (54/54 field-exact, --max-direct-diff budget retired to 0, gate strict). Ligo MOSTLY (near green) — DIFF_BUDGET 89 -> 8 in one session (98.5% match); the two large open classes both closed via §10w (cluster-containment defect = Edit Mesh 0x0130 created-verts decode; selection-order = buildTreeOrder DFS + single-step XRef pre-pass source-class filter). Note the VS2008/x87 byte-identical shift (71 -> 130 files gain true byte-identity — x87 zeros the uninit heap x64 leaves random). Punch list for the remaining 8 has concrete file/instance/field pointers so a next session can close them individually without re-triage Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HjbyJgJ5kh3PKKzPwSWw1U

    @kaetemi kaetemi committed Jul 8, 2026