CTC-1154 Verification Evidence¶
Scope¶
- Release-candidate code commit:
758f752c3faff7f3622a20d7b09c343678090906 - Release-candidate Git tree:
5fc9d35b308c36ecfe32a290c3ace886454558ae - Tested code blobs:
app/platform/api_routes.php:a1ee1ac7df2f9f533c928b245e1906f84fd4959epublic/assets/js/modules/shared/kj-view-fuel.js:23ee8065ac43774e44ae649ef40e2274c17ae2ae- Runtime:
http://127.0.0.1:18080 - Tenant:
CLIENT_ID = 1 - Local DB identity:
kyle-mba:3306, databaseprod - Changed behavior: table-specific menu authorization for platform master-data row/mutation routes and Fuel Other charge prefix handling.
Browser Evidence¶
| Flow | Account / role | Actions | Result |
|---|---|---|---|
| Setting menu | admin, Administrator |
Opened sidebar Setting group and confirmed Fuel, Master, and Commodity menu links | Pass |
| Commodity CRUD | admin, Administrator |
Required-field validation, create CTC1154-COMMODITY, edit to CTC1154-COMMODITY-EDIT, delete, list refresh |
Pass |
| Master CRUD | admin, Administrator |
Create CTC1154_TEST, edit VALUE1 to CTC1154_VALUE_EDIT, delete, filtered list refresh |
Pass |
| Fuel CRUD and Other regression | admin, Administrator |
Create Other US$2.34 with note containing OIL; reopen and confirm Other type; change total to 15.00 and confirm OTHER US$5.00; change total to 10.00 and confirm structured prefix removal; delete |
Pass |
Screenshots:
output/playwright/ctc-1154/commodity-crud-clean.pngoutput/playwright/ctc-1154/fuel-other-regression-clean.png
Authorization Evidence¶
An existing local role-5 user session with no Fuel, Master, Commodity, or Chassis menu role was used. No user or role DB row was created or changed.
| Request | Administrator | Role 5 |
|---|---|---|
GET /api/platform/master-data/row?TABLE=T_MASTER&ID=1 |
200 | 403 FORBIDDEN |
GET /api/platform/master-data/row?TABLE=T_COMMODITY&ID=1 |
200 | 403 FORBIDDEN |
GET /api/platform/master-data/row?TABLE=T_CHASSIS&ID=1 |
200 | 403 FORBIDDEN |
POST /api/platform/master-data/form?mode=SINGLE with T_MASTER payload |
Not used for probe; covered by Master UI create | 403 FORBIDDEN, no write |
Exact-commit negative and contract probes:
| Request | Status | Assertion |
|---|---|---|
GET .../row?TABLE=T_USER&ID=1 |
400 | INVALID_REQUEST; unsupported table is not mapped to a menu |
POST .../form with T_USER payload |
400 | INVALID_REQUEST; no mutation |
POST .../form with {} |
200 | Existing empty-payload no-op contract preserved |
All three role-5 row responses and the role-5 T_MASTER form response returned:
{"error":{"code":"FORBIDDEN","message":"Master data menu access is required."}}
The denied mutation marker CTC1154_DENIED had zero active rows after the request.
Exact-Commit Fuel Assertions¶
The base Fuel amount and zero-prefix flow was repeated in the browser at exact commit 00444a6ec872dbc73bdeae1fa8d42ca29fbfffcd. After the combined-edit review fix, the combined amount-and-note flow was repeated at exact release-candidate commit 758f752c3faff7f3622a20d7b09c343678090906.
| Step | Visible / persisted assertion |
|---|---|
| Create | AMOUNT=12.34, AMOUNT_DIESEL=10.00, REMARK=OTHER US$2.34 / CTC1154 EXACT OIL NOTE |
| Reopen | Other Type is Other, despite OIL appearing in the note |
| Amount edit | AMOUNT=15.00, REMARK=OTHER US$5.00 / CTC1154 EXACT OIL NOTE |
| Zero Other Amount | AMOUNT=10.00, REMARK=CTC1154 EXACT OIL NOTE |
| Combined amount and note edit | OTHER US$2.34 / CTC1154 COMBINED EXACT OLD edited with AMOUNT=15.00 and a new note; persisted once as OTHER US$5.00 / CTC1154 COMBINED EXACT NEW |
| Cleanup | Fuel row soft-deleted; active matching row count is zero |
Static And Runtime Checks¶
git diff --check: passphp -l app/platform/api_routes.php: passnode --check public/assets/js/modules/shared/kj-view-fuel.js: passphp scripts/kj-view-audit.php --with-db: pass, 16 configs with DB schema checks- Browser console errors during positive CRUD flows: 0
- Two browser console errors were produced later by the intentional unsupported-table HTTP 400 probes; no unexpected console error was recorded.
- Relevant CRUD and refresh requests: HTTP 200
- Denied authorization probes: expected HTTP 403
Cleanup¶
Active fixture counts after testing:
T_COMMODITYnames matchingCTC1154-COMMODITY%: 0T_MASTERcategoryCTC1154_TEST: 0T_MASTERcategoryCTC1154_DENIED: 0T_FUELremarks containingCTC1154 OIL NOTE: 0T_FUELremarks containingCTC1154 EXACT OIL NOTE: 0T_FUELremarks containingCTC1154 COMBINED EXACT: 0
No production DB, schema, CLIENT_ID = 2, popup, jQuery, or Bootstrap change was made.
---¶
Source:
.agents/reference/ctc-1154-verification-2026-07-12.md— ctc repository · This page is an English translation of the source document. Identifiers, file paths and code symbols are unchanged.