Blog
ProductGuidePhase 283D ReconstructionEngineeringResearchMEP TakeoffS33

Phase 28 — Coverage Ladder 5/21 Held; Count CP Still 3/63, Not 80/80

Teraquant Team14 min read
STATUS: COVERAGE_LADDER_PASS. Coverage evaluated 5/21 (inner C2 evaluated ≥ 3 / ladder target 3 already held; frozen ladderTarget 5, ladderMet true). Count CP status evaluated, reasonCode null (not IDENTITY_ONLY_NO_GT), 3/63 QA@20. Count detection 5/63. S33 preserved (s33Preserved true). Live 圖則.pdf residual not credited (liveResidualCredited false; liveGraphCreditedAsTraining false). peak80Claim not_evaluated. Frozen loop RSI_PLATEAU. Not Peak 80/80. Not corpus 80–90%. Not NO_PLAN_POLYLINES as this phase’s inner verdict. Not COVERAGE_PARTIAL. Extra S33 pages are density on the same slug — not a sixth coverage credit. Not a ladder-3-only claim.

Numbers are copied from apps/web/data/phase28/coverage-ladder-verify.v1.json (generatedAt 2026-08-21T08:40:12.760Z, verdict COVERAGE_LADDER_PASS) and the frozen evaluate.ts scorecard apps/web/data/rsi/scorecard.v1.json (schemaId rsi.scorecard.v1, generatedAt 2026-08-21T08:40:12.716Z, phase 28, verdict RSI_PLATEAU). Nothing was re-scored for publication. Reconstruct was not re-run.

Execute-close, not a new estimand

The Phase 28 pack README still printed the planner start that treated Phases 25, 26, and 27 as planned packs whose inner waves were not closed. VG records phase25SgPresent true, phase26TgPresent true, and phase27UgPresent true — we do not invent those files’ absence. This post is the execute-close of the same two families: coverage (qty_3d training graphs) and S33 count CP on a non-shrinking N=63. It is not a new research axis. The estimand stays qty_3d (methodVersion rsi_qty_3d_count_cp_v1). Coverage and count CP are never blended into one percent.

Coverage ladder 5 was already met in Phase 27. Phase 28 did not re-count N23, Kwai On, S27, or N22 as new credits (VG newProjects is empty). The job was extra S33 plan pages so more billed nos/set rows could get qty_3d within 20%. Extra pages 12, 14, 16, and 19 landed (worldElements 41 on slug s33-7d7fadc7). Count CP stayed 3/63. Frozen loop RSI_PLATEAU. foundationRescueUsed is false. Opt-in research flags (EVIDENCE_TILED_EXTRACT, VECTOR_GEOMETRY_COUNT) stay off; they are not this 3D path and are not promoted.

Coverage: 5/21 (frozen ladder step 5 held)

A training project counts only when fabricatedGeometry is false, floorKeys.length ≥ 1, and at least one world fitting, valve, pipe_run, or riser exists. Missing projects stay blocked, never 0%. Inner C2 is evaluated ≥ 3 (ladder target 3; already held). The frozen ladder is [3, 5]; with evaluated = 5 the card prints ladderTarget 5 and ladderMet true. VG keptCoverageSlugs are s33-7d7fadc7, n23-83c0da00, kwai-on-factory-estate-88ab7191, s27-acb5d98c, n22-9d648e98. Extra S33 is density on the same slug — not a sixth coverage credit.

ProjectStatusFloorsWorld elementsNote
S33 (s33-7d7fadc7)evaluated (preserved + extra pages)1, 11, 1, 141training_data/…S33…/圖則.pdf. Extra pages 12, 14, 16, 19. Same slug — not a sixth credit. fabricatedGeometry false. G1 kept.
N23 (n23-83c0da00)evaluated (kept, not new)G, G26training_data/…N23…/圖則.pdf. KEEP_EXISTING_COVERAGE. Not live a48e6815-… .
Kwai On (kwai-on-factory-estate-88ab7191)evaluated (kept, not new)G16KS28_-_SITE_A_DR-02.pdf. KEEP_EXISTING_COVERAGE. Peak-SOR not loaded.
S27 (s27-acb5d98c)evaluated (kept, not new)G, G2training_data/…S27…/圖則目錄及圖則.pdf. Phase 27 leftover: geometric takeoff empty → NO_PLAN_POLYLINES. Fittings-only still qualified. Not this phase’s inner verdict.
N22 (n22-9d648e98)evaluated (kept, not new)G, G46training_data/…N22…/14《承》附件七:圖則目錄及圖則.pdf. KEEP_EXISTING_COVERAGE. fabricatedGeometry false.
16 other roster rowsblocked NO_TRAINING_GRAPH0blocked ≠ 0%. CPS and Asia expo optional append skipped SCALE_NTS. Peak montage was not collapsed to G. pageIndexAsFloor false.

Scorecard coverage percent is 23.809523809523807 on 5/21. That is not a product headline. The Peak training slug stays NO_TRAINING_GRAPH. pageIndexAsFloor is false. peakMontageCollapsedToG is false. Assumed storey height 3.15 m stays 假設, never 量度. Default plan scale 1:100 stays 預設 — length from that scale is assumed, not measured. Optional CPS (central-police-station-093c926c) and Asia expo (asia-expo-86190b1f) were skipped SCALE_NTS; they are not new credits. S27’s empty geometric takeoff remains a Phase 27 leftover (NO_PLAN_POLYLINES; fittings-only world=2 still qualified). That leftover is not this phase’s inner verdict: VG prints COVERAGE_LADDER_PASS, not COVERAGE_PARTIAL, not COVERAGE_LADDER_NOT_EARNED, and not NO_PLAN_POLYLINES for Phase 28.

Count CP: evaluated 3/63 (unblocked, plateaued, not a win)

Pairing wrote gtQty on drawable billed count rows from S33 BQ 4.2 (For reference only) BQ.xlsx, sheet E 供水及排水系統 (P&D). The scorer reads gtQty, not billedQty. Peak-SOR.xlsx was not loaded for S33, N23, Kwai, S27, N22, CPS, or Asia expo. qty_3d was preserved (pairing.qty3dPreserved true); ground-truth quantities were not copied into qty_3d or vision prompts. VG notes a one-line bugfix on VF assertNoPeakSor: /peak-sor/i → /peak-sor\.xlsx/i so the note “Peak-SOR is forbidden for S33.” is not a false-positive. Runners existed at wave start (foundationRescueUsed false). N=63 held.

Family BStatusn/NNote
Count CP (QA@20)evaluated3/63reasonCode null. percent 4.761904761904762 (Wilson 1.6326168867995599–13.09096783790607). 3/63 is a scored rate, not blocked encoded as 0%. Same numerator as Phase 27.
Count detectionevaluated5/6358 detection misses. Scorecard percent 7.936507936507936 (Wilson 3.4375847176818546–17.270309850904084). Same as Phase 27.
Linked billed drawablepairing63/63identity_only leftover 2 — those rows are not CP. billedDrawable 63. qty_3d preserved. denominator 63.

Denominator did not shrink (scorecard.denominatorShrunk false). N=63 held. Shrinking N to raise percent would have been RSI_DENOMINATOR_SHRANK. IDENTITY_ONLY_NO_GT is not the headline. Extra S33 pages raised world elements 12 → 41 on the same slug and did not move Family B: still 3/63 QA@20 and 5/63 detection. That is a plateau, not an accuracy win.

Live 圖則.pdf is not training coverage

Scorecard liveGraph.creditedAsTraining is false. VG liveResidualCredited is false. liveWrite is false. The scorer’s residual note still describes the Phase 23 artefact (LIVE_GRAPH_PASS, 8 fittings, 0 pipeRuns). Phase 24’s 21 live pipes are not this card’s coverage numerator. Training N23 is training_data/…N23…/圖則.pdf, not project a48e6815-… / file 65b1bfde-… / persist 643835d1-… . The five kept credits are training_data PDFs, not that live residual.

How to reconstruct and pair (without Peak-SOR on S33)

This is a product walkthrough of chips and pairing rules. It is not a claim that the signed-in Peak 3D tab shows these five training meshes. VJ left P4 as BROWSER_NOT_CERTIFIED: no Clerk session, no mesh PNG. Training JSON under .tmp/phase28/reconstruct/ is not a photograph of a model. No files exist under /blog/phase28/.

  • Sign in. Open a drawing 3D tab or /projects/…/3d. Rebuild if the model is stale. Amber chips mean 估算 / 假設 / 預設 — estimated floor, assumed 3.15 m height, default 1:100 scale. They never flip to 量度.
  • Training reconstruct targets kept on disk: S33 圖則.pdf (keep G1; extra pages 12/14/16/19 are density, not a sixth credit), N23 圖則.pdf (training folder, not the live project), Kwai On KS28_-_SITE_A_DR-02.pdf, S27 圖則目錄及圖則.pdf, N22 14《承》附件七:圖則目錄及圖則.pdf. Empty geometric takeoff prints NO_PLAN_POLYLINES — no demo-grid pipes. S27 took that path in Phase 27; fittings-only still qualified. Do not invent polylines.
  • Pair S33 count items to billed GT on 4.2 (For reference only) BQ.xlsx sheet E 供水及排水系統. Write pairingStatus linked and finite gtQty. Unmatched 3D stays identity_only. Do not copy GT into qty_3d. Do not shrink N=63.
  • Never load Peak-SOR.xlsx for S33, N23, Kwai On, S27, N22, CPS, or Asia expo. Peak-SOR is Peak-only. Native S33 BQ sheet E is the count-CP denominator.
  • If plan scale is missing, 1:100 is default. Metres from that scale are assumed length, not measured length. Keep assumed 3.15 m out of measured metres. N.T.S. plans (CPS / Asia expo this close) stay skipped — SCALE_NTS — not invented graphs.

What this is not

  • Not Peak P&D 3D Detection / QA@20 ≥ 80%. peak80Claim is not_evaluated. Percents stay unevaluated — not a fabricated 0%.
  • Not corpus 80–90%. Sixteen of twenty-one training projects stay blocked NO_TRAINING_GRAPH. Phase 17 sufficiency remains INSUFFICIENT_CROSS_PROJECT_COVERAGE.
  • Not a count-accuracy win. Count CP 3/63 and detection 5/63 are honest evaluated rates on a non-shrinking N=63. Extra S33 pages did not move them.
  • Not COVERAGE_PARTIAL and not this phase’s NO_PLAN_POLYLINES. Inner verdict is COVERAGE_LADDER_PASS for frozen ladder step 5 (5/21). Inner C2 / ladder target 3 already held. S27 geometric takeoff remains a Phase 27 leftover (NO_PLAN_POLYLINES; fittings-only still qualified). That is not a ladder-3-only win, and not a pipe-length claim on S27.
  • Not a signed-in 3D screenshot. VJ: BROWSER_NOT_CERTIFIED. No files under /blog/phase28/. No fabricated mesh PNG. Training JSON is not a mesh photo.
  • Not a promote of EVIDENCE_TILED_EXTRACT or VECTOR_GEOMETRY_COUNT.

What happens next

  • Frozen loop verdict is RSI_PLATEAU. Scorecard nextAction: “Coverage ladder met and count CP plateaued. Write residuals; do not claim 80/80.” This post does not invent a Phase 29 pack.
  • Do not credit live 圖則.pdf as N23, S27, N22, or S33. Do not collapse Peak montage to a single G. Do not re-count N23, Kwai, S27, or N22 as new credits. Do not treat extra S33 pages as a sixth coverage project.
  • Do not headline 80–90% 3D accuracy. Do not treat assumed 1:100 length as measured metres. Do not treat S27 fittings-only as a pipe graph. Do not invent polylines for SCALE_NTS skips.

Parent execute-close: /blog/phase27-coverage-ladder-count-cp. Prior close: /blog/phase26-coverage-ladder-count-cp. Training coverage ladder: /blog/phase25-training-coverage-ladder. Live pipe graph: /blog/phase24-live-pipe-graph. First training model (S33 G1): /blog/phase20-first-training-3d-model. Estimated-parameter graph: /blog/phase23-estimated-3d-graph. Field guide: /blog/how-to-use-teraquant.