Lewati ke isi

T6B.2 Result

Mode: server · workspace /home/scola/odoo
Engineering label (rebind 2026-08-29):

T6B.2 ENGINEERING_CLOSED_BOUNDED @ BE 5e6be85

Prior label T6B.2 ENGINEERING_COMPLETE_PENDING_INDEPENDENT superseded by rebind evidence and T4-T6B2-closure-decision.md. Independent verdict: T6B2-independent-verdict-20260829.md.

This is not full W10 certification, not QG-01–QG-17 package certification, and does not authorize demo or production promotion.

Engineering note: bound disposable overlay rerun is 19/19 after BE f5e7008... raised the fail-closed clamscan budget to 60s (remediates the first 2026-08-18 RT-T6B2-XINT-G timeout flake). Engineering evidence does not substitute for an independent close record.

Documents read

AGENTS.md, AI_AGENT_MASTER_GUIDE, development-guide, workspace-governance, architecture-api, release-environment-promotion, environment-isolation-and-promotion, testing-guidelines, 01-product-contract, 05-e2e-workflow-catalog, 07-release-test-matrix, 10-implementation-roadmap, T6A-W03-approved-product-contract, T6B-FEES-approved-product-contract, T6B-result, T6B-residuals, T6B.1 independent reaudit artefacts, package catalog / feature-flag contract, scola_admission_fees_bridge manifest and source, W03/W10 services-models-controllers-tests-route registry, skill scola-release-promotion.

Isolation --live before and after this tranche: PASS.

Why this label

The approved post-enrollment Admission→Fees bridge is engineering-closed on disposable overlay. T6B.2 PARTIAL findings T6B2-AUD-001..005 were remediated and re-proved in engineering runs:

  • AUD-001: E1.2 generator records --frontend-application-commit 4c725fc...; local dist was rebuilt with that SHA; validator --allow-docs-tip is the docs-only path.
  • AUD-002 / AUD-005: register write/create reject inactive/draft templates; RT-T6B2-VAL-01 no longer contains (not ok or True).
  • AUD-003: W03 transition returns error=conflict without PostgreSQL serialize text; matrix requires one success and one denial.
  • AUD-004: T6B.2 matrix JSON now embeds FE/BE tree, served identity, fixture, and live DB identity.

Engineering rebound on 2026-08-18 addressed AUD-001..005 and the XINT-G AV-timeout flake in overlay evidence. Independent reaudit verdict file is still missing from docs/release-readiness/audit/. Residuals below remain S2/S3. No S0 remains in T6B.2 in-scope engineering behavior.

Runtime (disposable only)

Suite Result Target
PKG-ADM-FEES-BRIDGE 19/19 PASS (skip=0) scola_t6b2_audit_20260817T094947Z :8094 close overlay id 09e6f3b4-c05b-4863-ac11-fac9b2a28adf
W10 11/11 PASS same overlay
W03 31/31 PASS same overlay
E1.2 29/29 PASS + validator after commit same overlay
W01 64/64 PASS scola_t6b2_core_20260817T102234Z :8095 overlay id a2c154f7-fdd2-4ea2-88d3-b38cfc75cfc2
W02 33/33 PASS same Core clone
W05 16/16 PASS same Core clone
AUTH-004 PASS (1733 extracted, 0 unregistered protected) workspace
package topology CI PASS (15 SKUs) workspace
Isolation --live PASS workspace

Parent-alone topology clones (not Golden): scola_t6b2_adm_20260817T095052Z (admission only; fees+bridge absent) and scola_t6b2_fees_20260817T095052Z (fees only; admission+bridge absent). Combined overlay auto-installed scola_admission_fees_bridge. scola_account remained uninstalled.

A polluted-overlay W01 33/41 run (T2.1-W01-20260817T101526Z) is discarded evidence only. Root cause was SC-ADM overriding Core _company_domain in the merged Odoo controller MRO. That helper was renamed; W01 64/64 then passed on a fresh combined clone.

Identities (working-tree hashes bound at evidence; git SHAs recorded in the T6B.2 commits)

Side Tree / note
FE application tree 269bcd2c732b3820e540fb09648d6c3966720990374e0d81addab7e9cc9a617b
FE predecessor application commit 2f716594ee769fe3cd8338ae5bcebb3f2e470d46
FE application commit 4c725fc764d1191957ab7280725700eec47c7699
FE docs tip at evidence HEAD of develop after this docs commit (validator --allow-docs-tip)
Local dist/version.json 4c725fc764d1+msx9q6gz (QC build stamped with application SHA; served-dev/demo not updated)
FE build checksum a3ec7efa771af89aa963af270241c8a3b67344d00bea6fc44c8a2b1c195afafe
BE application tree 103b4b3b9b8ed1b130be2a959c97221d7214f748720eceef9a3f42b7442bd0c4
BE application commit f5e7008677a931b08c27bd1ca32b6cc1dda49eae
BE predecessor HEAD fc4f003d39e1ded5c463fc8733a8872ea4304774
Overlay DB UUID clone copy 2bf5fd27-9390-11f1-9617-28e8d4be73f5 (not the only identity)
Seed overlay id (close rerun) 09e6f3b4-c05b-4863-ac11-fac9b2a28adf
Installed-modules checksum 0088d51b4833fae15a339d57f76f74b232e4a4fb4f2de868b4ffafebc40f2072
T6B.2 close matrix SHA-256 963d277328c2a501ef0a45256b390757eabb525716da5ccbcc201bb9334eea75

Exact post-commit SHAs are the T6B.2 feat commits on FE develop and BE main. Docs-only descendants may use --allow-docs-tip while application trees stay equal.

What was not done

  • No T6B COMPLETE
  • No T6B.3 gateway
  • No pre-enrollment applicant billing
  • No scholarship/affirmation amount mapping
  • No W03 reversal API
  • No Golden start, no Golden/scola_golden mutation
  • No scoladev upgrade/restart
  • No demo/production promotion

Adversarial answers

  1. Does SC-ADM still install and complete W03 without SC-FEES? Yes. Parent-alone scola_t6b2_adm_* plus overlay W03 31/31.
  2. Does SC-FEES still operate without SC-ADM? Yes. Parent-alone scola_t6b2_fees_* plus overlay W10 11/11.
  3. Does the bridge auto-install only with both parent modules? Yes.
  4. Do both entitlements have to be true at execution time? Yes. Four-cell matrix + UIA/XINT-A.
  5. Can an existing session continue after one entitlement is disabled? No. Fees OFF → feature_disabled (UIA/XINT-E).
  6. Can W03 create a bill or approved fee enrollment directly? No. Bridge creates pending only; Billing Manager bills.
  7. Can the Enrollment Officer obtain finance authority through the bridge? No. finance.billing.manage denied (NEG/XINT-D).
  8. Can one admission create duplicate handoffs, fee enrollments, or bills? No. Unique keys + IDM/XINT-B.
  9. Can concurrent workers produce duplicate financial effects? No. FOR UPDATE + unique business_key.
  10. Can a GT-T1 admission use a GT-T2 student, template, rule, or company? No. TEN/XINT-C, zero mutation.
  11. Can missing configuration create an unintended default charge? No. configuration_required, no enrollment.
  12. Can affirmation/scholarship data change the amount outside an approved W10 rule? No. Discount rejected unless W10 rule; residual R009.
  13. Can bridge failure silently disappear after W03 succeeds? No. Durable handoff; REC/XINT-F.
  14. Can a retry reconcile without duplication? Yes. REC-01 / XINT-F.
  15. Can W03 reversal delete or refund a verified payment automatically? No. enrolled is terminal; cancel → recovery_required/payment_exists (XINT-G). Residual R001.
  16. Can /api/SPMB/payment/*, account.move, native Fees, or /web/dataset bypass W10? No. XMD/XINT-H fail-closed; account.move count 0.
  17. Is all visible balance/payment information derived from canonical W10 state? Yes. Admission fees: []; projection is handoff-only (XRP-01).
  18. Are W03, W10, Core regressions, and E1.2 bound to the exact candidate? W03/W10/T6B.2/E1.2 rebound in this tranche. W01/W02/W05 remain the prior combined-topology Core clone evidence; this delta did not retouch Core APIs.
  19. Did any application change occur after the evidence run? No, after the close rebound. Inactive-template / conflict remediations are in fc4f003; the 60s fail-closed AV budget is in f5e7008.
  20. Were Golden canonical, GBN, demo, and production left unchanged? Yes.

Artefacts

  • T6B2-preflight.md
  • T6B2-reaudit-input.md
  • T6B2-approved-bridge-contract.md
  • T6B2-admission-fees-path-inventory.md
  • T6B2-package-topology.md
  • T6B2-authorization-traceability.md
  • T6B2-runtime-matrix.md / .json
  • T6B2-residuals.md
  • T6B2-runtime-manifest.json
  • T6B2-evidence/
  • Historical T6A / T6B-B / T6B.1 / independent T6B.1 audit files preserved, not rewritten