Lewati ke isi

T4 — Post-SCORE Track Charter: Profile Jenjang / Timezone (DEC-013)

Mode: Server /home/scola/odoo
Approval: APPROVED_BY_REQUESTING_USER_CONVERSATION (PROF-2 bounded, 2026-08-29)
Track ID: POST-SCORE-PROFILE-DEC013
Tip baseline: FE dad5fa0c / BE 5e6be85 (PROF-2 harness)

1. Scope

In scope

Control Matrix Denominator
Jenjang profile matrix §10.2 RT-PROFILE-JENJANG-01 Signed GT-PROFILE-* jenjang fixtures
Timezone profile matrix §10.2 RT-PROFILE-TIMEZONE-01 Signed GT-PROFILE-* timezone fixtures

Workshop output (PROF-0): Signed DEC-013 matrix defining:

  • Retained jenjang codes (paud, tk, sd, smp, … — Product selects subset)
  • Equivalence partition recommendation (prefer partition over full cartesian)
  • IANA timezone set (Asia/Jakarta / WIB, Asia/Makassar / WITA, Asia/Jayapura / WIT)

Golden tenant fixtures (06 §12.1)

Profile ID Role Current seed state
GT-PROFILE-NON-EARLY-WIB Non-early (sd/smp), Asia/Jakarta Seeded — companies 20/21
GT-PROFILE-EARLY-WIB tk, Asia/Jakarta Seeded — company 40
GT-PROFILE-NON-EARLY-WITA Non-early unit, Asia/Makassar Seeded — company 41
GT-PROFILE-NON-EARLY-WIT Non-early unit, Asia/Jayapura Deferred PROF-3
GT-PROFILE-MATRIX-DECISION Full cartesian jenjang × timezone BLOCKED unless Product/QA approves equivalence partition

Baseline engineering: STAB-044 CLOSED (bounded negatif) — fail-closed via schoolJenjang.js; vitest 9/9 negative matrix (tests/menu/teacherAttendanceReportScope.spec.js).

Out of scope (explicit defer)

Item Reason
W16 denominator Cross-cutting — not part of W16 11/11 claim
UAT PROMOTE_UAT Gelombang terpisah W16+
Production promotion Requires immutable CERTIFIED manifest
“All Indonesian schools” claim Manifest lists exact retained GT-PROFILE-* IDs only
Full cartesian jenjang × timezone Prefer equivalence partition signed by Product + QA

2. Actors

Actor Responsibility
Product Lead PROF-0 workshop; sign DEC-013 retained codes + equivalence partition
QA/Release Approve partition argument; define fixed-clock boundary cases (STAB-022)
Engineering Seed fixtures (PROF-1), parameterize tests (PROF-2), harness (PROF-3), rebind (PROF-4)

3. Phase order (mandatory)

Phase PROF-0 — Workshop charter + signed DEC-013 matrix (this doc + workshop record)
Phase PROF-1 — Seed Golden overlays: GT-PROFILE-EARLY-WIB, GT-PROFILE-NON-EARLY-WITA, GT-PROFILE-NON-EARLY-WIT
Phase PROF-2 — Parameterize W00 nav crawl; W01/W05 fixed-clock boundary (STAB-022); extend vitest jenjang
Phase PROF-3 — profile_matrix_certify.py or extend E1.2 property set
Phase PROF-4 — Update §10.2 rows BLOCKED → PASS bounded; manifest lists exact GT-PROFILE-* IDs

Precondition: PROF-0 signed matrix wajib sebelum PROF-1 seed — no fixture without Product decision.

4. Equivalence partition recommendation

Product/QA should prefer documented equivalence classes over full cartesian:

Partition Recommended grouping Rationale
Early-years Single GT-PROFILE-EARLY-WIB if PAUD ≡ TK for menu/route purposes Reduces seed cost; requires explicit Product sign-off
Non-early jenjang GT-PROFILE-NON-EARLY-WIB covers sd/smp if code-backed partition approved Current seed topology
Timezone No equivalence across WIB/WITA/WIT — each zone requires independent fixed-clock run STAB-022; local-day boundaries differ

Adding a profile after freeze invalidates W00 navigation plus every date-sensitive workflow certificate until re-run on same build.

5. Test surfaces (PROF-2)

Surface Parameters
W00 navigation Menu/route branch per retained jenjang
W01 school-day schedule Session date defaults per timezone
W05/W06/W20 boundaries Fixed-clock straddle local midnight (STAB-022)
Negative matrix Empty, missing, malformed, unknown, unsupported, expired/unassigned, other-company — fail closed (STAB-044 contract)

6. Non-claims

  • Not part of W16 denominator — Profile track runs parallel; W16 exit gate does not require Profile PASS.
  • No over-broad claim — release manifest lists exact retained profile IDs; excluded values explicitly documented.
  • STAB-044 bounded negatif remains valid for Core V1 even if positive matrix deferred.

7. Exit gate (track complete)

  • [x] Signed DEC-013 matrix (PROF-0) — T4-DEC-013-signed-profile-matrix.md
  • [x] Golden fixtures seeded for signed IDs except WIT (PROF-3)
  • [x] §10.2 RT-PROFILE-JENJANG-01 and RT-PROFILE-TIMEZONE-01 → PASS bounded (PROF-2)
  • [x] Harness evidence T6-PROFILE-20260829T033004Z bound BE 5e6be85
  • [x] Manifest lists exact profile IDs — WIT explicitly deferred

8. References

Artifact Path
Closure decision T4-PROFILE-closure-decision.md
Signed matrix T4-DEC-013-signed-profile-matrix.md
Program SSOT V1-PLAN-POST-SCORE-W16-PROFILE-ASYNC.md
Golden profile spec 06-golden-tenant-spec.md §12.1
Runtime matrix §10.2 07-release-test-matrix.md §10.2
STAB-044 bounded Core 08-stabilization-backlog.md
SC-CORE deferral T4-SCORE-closure-decision.md
Jenjang resolver src/config/schoolJenjang.js