T4 W05 ROLLOUT COMPLETE¶
Label: T4 W05 ROLLOUT COMPLETE
When (UTC): 2026-08-11T22:30:08Z
Mode: server development (/home/scola/odoo)
BE SHA: 528873e3d31aa5bd1b932bf437b64bea739a7a44 (main; W05 tip 4f3f2fb + rollout blocker fix 528873e)
FE SHA (docs tip at write): 521b65c6466ce445a7241c0fc3d289a630f4c5a6 (develop; audit artefacts 521b65c6)
Scope note¶
W05 certified surface remains Core per-lesson attendance only.
Daily / RFID / smart / HR / ATTEND+ remain OUT of W05 certification.
Rollout blocker fix (application)¶
-u scola_attendance on tenants with historical op.session duplicate (faculty_id, start_datetime) failed while creating op_session_faculty_start_uniq (W01 hard backstop).
BE commit 528873e wraps index creation in a savepoint so module upgrade can proceed; index is skipped with warning until data is cleaned. Affected DBs at rollout: scola_goldenbabyntree (385 dup groups), scoladev_demo (36).
Per-tenant results¶
| Tenant | Conf | DB | Upgrade rc | Rule present | Service | Smoke |
|---|---|---|---|---|---|---|
| prod (Golden Baby) | config/scola-prod.conf |
scola_goldenbabyntree |
0 | yes (id=560, active) | odoo-prod active | /web/login 200 |
| aljabbar | config/odoo-aljabbar.conf |
scola_aljabbar |
0 | yes (id=555, active) | odoo-aljabbar active | / 200; /web/login 403 (pre-existing/proxy behaviour); /web 303 |
| rejis | config/odoo-rejis.conf |
scola_rejis |
0 | yes (id=555, active) | odoo-rejis active | /web/login 200 |
| sdn1pgt | config/odoo-sdn1pgt.conf |
scola_sdn1pgt |
0 | yes (id=555, active) | odoo-sdn1pgt active | /web/login 200 |
| spansa | config/odoo-spansa.conf |
scola_spansa |
0 | yes (id=558, active) | odoo-spansa active | /web/login 200 |
| demo | config/odoo-demo.conf |
scoladev_demo |
0 | yes (id=606, active) | odoo-demo active | /web/login 200 |
| devscola | odoo-devscola.conf |
scoladev |
0 | yes (id=623, active) | odoo-devscola active | /web/login 200 |
| golden | config/odoo-golden.conf |
scola_golden |
0 | yes (id=243, active) | started via scripts/golden/start_golden_with_identity.sh |
/web/login 200 |
| t0c | config/odoo-t0c.conf |
— | SKIP | — | no unit | no db_name in conf |
| scola-dev | config/scola-dev.conf |
scola_test |
SKIP | — | n/a | DB scola_test missing; live dev is odoo-devscola/scoladev |
Evidence logs¶
Under execution/T4-W05-evidence/:
T4-W05-rollout-<tenant>.txt(+-odoo.log/-smoke.txtwhere applicable)
Verification method¶
- Upgrade:
odoo17-venv/bin/python3 odoo-bin -c <conf> -d <db> -u scola_attendance --stop-after-init --without-demo=all - Rule check: SQL on each DB for
ir_module_module/ir_rulenameAttendance Line: Student Own Only - HTTP: local
/web/login(or/where login returns 403)
Residual ops¶
- CLOSED —
op_session_faculty_start_uniqrestored on prod & demo after keep-MIN(id)dedupe. SeeT4-W05-session-uniq-residual-closure.md(T4 W05 SESSION-UNIQ RESIDUAL CLOSED). - No claim that non–per-lesson attendance surfaces are certified.