Lewati ke isi

T2-W01 Preflight — Exact-tip Baseline

Item Nilai
Mode Server development · /home/scola/odoo
Tanggal 2026-08-11
Workstream T2 — W01 Academic Master → Timetable End-to-End Certification
Docs dibaca AGENTS.md, workspace-governance.md, architecture-api.md, development-guide.md, T1-final-reconciliation.md, T1-A-canonical-app-map.md, T1-B-core-parity-denominator.json, T0-E2-DEC-003-capability-taxonomy.json, 01-product-contract.md
Hard gate PASS — tip T1 frozen; tree hash match; validator/regresi hijau; lanjut Phase 1

1. Exact identity (re-verified)

Item Current value
FE branch / HEAD / origin develop / 8004894c6375173db7bf9427496f071da934221c / same
FE T1-C application commit 6beab28f34b2f5064aca948362d2f6ced9aca784
FE application tree hash 40ad2da8d8ec6afa427486f6188de3bdf84cbae197dd2eeca1d8b2f055f8ef04 MATCH T1
BE branch / HEAD / origin main / 8cc5cca8593e9a72628ce7bebb4f854800edc15d / same
BE application tree hash 1b4e1afd0a921e4fc274d97bfe588d1a536c64e235f3ea8584ee6ba873bb0e10 MATCH T1
E1.2 current rebind T0-E1.2-REBIND-CURRENT-20260810T2245Z
DEC-003 SHA256 18704cbddf996b516a5ed2eafb0b2f740c6f30ec82a46995efa26a124cfc11f2 MATCH
Golden DB scola_golden · UUID 2bf5fd27-9390-11f1-9617-28e8d4be73f5 · fixture gt-core-b1.1
Golden HTTP http://127.0.0.1:8090 (config/odoo-golden.conf)
T1 entry T1 CLOSED — APPROVED FOR T2

Application trees unchanged vs T1-certified trees → no STOP / no rebind required before T2 application edits.

Working tree notes (preflight)

Item Status
FE application (src/) clean vs tip
BE application clean vs tip
Docs dirty at first E12 attempt untracked T1-final-reconciliation.md + T2-W01-evidence/ (docs-only; committed/recorded as T2 artifacts)
Governed exclude docs/recon/*.xlsx

2. Regression gates (cwd /home/scola/odoo)

Validator Result Evidence
e12_evidence_identity_validator.py (--allow-docs-tip, matrix …2245Z) PASS after docs-clean tip / tree match T2-W01-evidence/T2-W01-preflight-e12-identity.txt + identity dump
npm run check:core-parity PASS hard_count: 0 T2-W01-preflight-core-parity.txt
npm run check:core-nav-ux PASS hard:0 warn:0 T2-W01-preflight-core-nav-ux.txt
npm run check:nav-graph PASS 36 apps / 528 leaves / core_missing_capability: 0 T2-W01-preflight-nav-graph.txt (inventory restored to frozen tip)
api_route_surface_coverage_check.py PASS 1716 routes · UNREGISTERED_PROTECTED_BLOCKER: 0 T2-W01-preflight-route-coverage.txt
package_topology_ci_check.py PASS 15 SKUs T2-W01-preflight-package-topology.txt
package_contract_consistency_check.py PASS T2-W01-preflight-package-consistency.txt
check_package_catalog.py PASS 15 rows / 17 refs T2-W01-preflight-package-catalog.txt
Live certification-identity PASS (POST :8090) T2-W01-preflight-cert-identity.json

3. Golden Core observation (pre-W01 seed)

Observation Implication for T2
Academic masters empty (op.academic.year/op.batch/op.session/scola.lesson.hours = 0) Phase 21 must extend Golden with deterministic W01 objects
scola_lms not installed; entitlement scola_lms=false op.teaching.assignment out of Core denominator → OPTIONAL/LMS; Core W01 uses op.session.faculty_id + op.batch.faculty* for teaching relation
Optional packages OFF Do not enable LMS/CBT/Report Card for W01

4. Scope freeze

In scope Out of scope
W01 Academic Master → Timetable only W02 student onboarding
Core entities required for valid timetable W05 attendance write
Fail-closed / atomic / tenant-safe mutations Optional package certification
Global academic UI redesign / T0 auth redesign

5. Gate verdict

Phase 0 HARD GATE: PASS

T2 may proceed from tip:

  • FE origin/develop = 8004894c… (docs tip; app tree = T1-C)
  • BE origin/main = 8cc5cca…
  • E1.2 rebind …2245Z remains binding until Phase 28 rebind after W01 app changes