feat(admin): migrate system diagnostics and retain SMTP drafts

This commit is contained in:
cesnimda
2026-10-20 15:40:19 +02:00
parent 1d34406d1b
commit d824f59d2b
12 changed files with 1047 additions and 155 deletions
+2
View File
@@ -2,6 +2,8 @@
## Continuation — 20 October 2026
P7-10 [System](p7-10/SYSTEM.md):20unit/46existingbackend/3native plus app/browser TypeScript/lint/build PASS. ExportEAHpn0GPj6rRy3WtHltbf;14axe0violations/100incompletes, two final images inspected after dirty-label correction. Publication follows final staged checks. Audit **f9e1d06bf7fc4081b70ebf461f1645ef219e0a93** pushed/directly verified13:26:54UTC. Separate Qwen adapter preparation **1d34406d1bacdb33d180f0e7e37bb0cb099ece5e** pushed/directly verified13:33:16UTC, full offline sidecar56/56; model activation remains pending. Main d1fcd23 CI832 is independently running; no verified deployment claim.
P7-10 [Audit](p7-10/AUDIT.md) final bounded gate:9 frontend,18 existing backend and3 native cases PASS; app/browser TypeScript, lint/build PASS. Export vZuD4f-46FJekdIR5rhRk; seven scans0violations/110incomplete nodes, two final images inspected. Ordinary REDs and pre-layout candidate remain retained. Users hygiene follow-up **4760fd102c21c684bd139206a12194c6fc8f6104** passed staged/full-phase whitespace and was normally pushed/directly verified13:10:57UTC. Audit publication follows after staged checks; System tests remain separate WIP.
P7-10 Users **7ecc0d66054787b1e2b3da6da7226b9585c66e34** normally pushed/directly verified **13:10:07 UTC**, with Audit/System regression work preserved. Final staged whitespace returned1 for an extra EOF blank line; the root continued publication incorrectly. Immediate follow-up removes it and checks staged/full-phase whitespace without altering behavior or claiming a rerun of the existing runtime evidence. Implemented Users acceptance remains CONDITIONAL GO; Audit follows.
+2
View File
@@ -1,5 +1,7 @@
# Phase 7 — Initial preservation matrix
P7-10 [System](p7-10/SYSTEM.md) adds bounded PRES-A03/E09 proof: four independent diagnostic reads, explicit failed-read availability, denied-refresh disposal, GET-only retry, unchanged SMTP password/clear payloads, retained newer drafts and synchronized/session-guarded operations.20unit/46backend/3native cases pass; administrator browser writes are controlled fixtures, not operational acceptance. All57 groups remain56 PARTIAL/C11 DEFERRED and33 routes. No schema/renderer/provider/AI-safety change. Human/device/provider/output/release qualifications remain.
P7-10 [Audit](p7-10/AUDIT.md) adds PRES-A02/E08/E09 proof: exact Undo allowlist, owned Restore versus administrator Undo, persisted event/readback and ordinary-user denials. GET-only recovery, synchronized writes, current-language errors and disposed-session guards pass. All57 groups retain56 PARTIAL/C11 DEFERRED,33 routes. No server authorization/data contract or PDF/AI safeguard change. System and shared/manual accessibility acceptance remain pending.
P7-10 [Users](p7-10/USERS.md) adds bounded PRES-A01/E09 proof without changing any group disposition: native administrator create/role persistence, target-session revocation, non-admin denial, last-admin conflict and deletion-disabled response, plus retained self-demotion/exact-email guards. Failed reads are distinct from empty; committed-write recovery does not replay writes; submitted form and immutable session disposal are tested. Desktop grid scrolling remains intentional and all action rows fit. Seven scans report zero violations with28incomplete nodes retained. Audit/System, shared accessibility qualification and all human/provider/production requirements remain open;57groups/33routes unchanged.
+3 -1
View File
@@ -2,6 +2,8 @@
## Current continuation — 20 October 2026
Latest: P7-09 published8af9168; P7-10 Users7ecc0d6/4760fd1 and Auditf9e1d06 are published; System implemented CONDITIONAL GO with20unit/46backend/3native/types/lint/build PASS, final hygiene/publication pending. Current derived inventory884/99frontend,348browser/57files,1057backend; separate full sidecar56/56. These do not replace P7-12's fresh integrated run. Main d1fcd23 is testing in run832 after a narrowly identified Playwright-runtime corruption repair; deployment remains unverified. Qwen3.5 adapter preparation1d34406 is pushed on development, with no live model activation. Earlier observations below remain historical.
P7-00–08 and P7-09 presentation are implemented CONDITIONAL GO. The [P7-09 import prerequisite](p7-09/IMPORT_COMPATIBILITY.md) passes full frontend 837/97, full backend 1057, affected native 25 and type/lint/build gates, published as `3028d81`. [Remaining data presentation](p7-09/DATA_PRIVACY_BACKUP.md) has affected47/6 plus22backendcontracts and final native/type/lint/build evidence, with final consumer/hygiene/publication pending. Derived inventory is855/99frontend,339browser,1057backend; this is not a fresh full integrated suite. P7-10 Administration, P7-11 residual UI and P7-12 acceptance remain. The historical sections below retain their as-observed baselines.
The owner subsequently authorized main promotion despite existing release NO-GOs. Main currently contains `cc79771`, including bounded repairs for all five causes found in diagnostic run828. Corrected run831 is queued behind older runs; release success is not claimed. Release repairs are merged and pushed on development as `36fc5d5`, with all unfinished source preserved. P5-13 remains withheld, all 57 preservation qualifications remain binding, and Phase 8 implementation has not started.
@@ -25,7 +27,7 @@ The entry commit is `b5319981ad3d1bd635daff861453d23c0de5320b` on `codex/ui-rede
| [P7-07](p7-07/README.md) | Documents owner-scoped index | Implemented CONDITIONAL GO; contract/UI published and directly verified through9dfea12 at21:01:11UTC. Final affected86/8, native8+CV4+ordinaryP2-D01/types/lint/build PASS;18 reviewed PNGs,15axe0/101 qualified. Original32+Documents=33routes; actual MariaDB/human/device/production qualifications remain |
| [P7-08](p7-08/README.md) | Existing notifications and operations | Implemented CONDITIONAL GO and published: UTC9dfea/recent40cfe04/Operationsc5176e3, clean direct refs verified02:03:53UTC. Ops77/7+native12/types/lint/build/14Ops+1P2image reviews PASS;12Opsaxe0/3+14notifaxe0/102 qualified.57groups33routes/F20 preserved |
| [P7-09](p7-09/README.md) | Remaining Settings, Connections and data lifecycle | Sender/Preferences published dac2927/e7dba9a; company/import prerequisites published5addcde/3028d81; release repairs merged/pushed36fc5d5 with all WIP preserved. Remaining data presentation implemented CONDITIONAL GO:47/6 affected frontend,22backendcontracts, nativeSettings9/import4/CSV1/P2-D01 +types/lint/build PASS;37axe0violations/141incomplete nodes qualified,six final PNGs inspected. Final consumer/hygiene/publication receipt follows. Inventory855/99frontend,339browser,1057backend; full integrated acceptance remainsP7-12 |
| [P7-10](p7-10/README.md) | Admin operational presentation | Users published7ecc0d6/4760fd1; Audit implemented CONDITIONAL GO with9 frontend/18backend/3native PASS and final hygiene/publication pending. System follows separately. Derived868/99frontend,345browser/56files; no fresh integrated pass |
| [P7-10](p7-10/README.md) | Admin operational presentation | Users7ecc0d6/4760fd1 and Auditf9e1d06 published; System implemented CONDITIONAL GO with20frontend/46backend/3native/types/lint/build PASS; final hygiene/publication pending. Derived884/99frontend,348browser/57files; no fresh integrated pass |
| P7-11 | Remaining Analytics/error/empty/dialog integration | Inventory-confirmed residual presentation only; existing reports remain; planned |
| P7-12 | Integrated full-migration acceptance | Every executed slice pushed with finite evidence; fresh applicable full regression and all debt dispositions; planned |
+3 -3
View File
@@ -6,8 +6,8 @@ Follow the [approved handoff](../../phase-6/p6-05/PHASE7_HANDOFF.md): exactly th
| Boundary | State |
|---|---|
| [Users](USERS.md) | Implemented CONDITIONAL GO; pushed7ecc0d6/direct remote verified13:10:07UTC. Staged end-of-file whitespace failure is corrected in the immediate follow-up; no behavior change |
| [Audit](AUDIT.md) | Implemented CONDITIONAL GO; final hygiene/publication pending; exact Undo allowlist and owner-filtered Restore distinction verified |
| System | Pending; preserve independent SMTP/probe/test/maintenance scopes, write-only secret semantics and truthful diagnostic availability |
| [Users](USERS.md) | Implemented CONDITIONAL GO; published7ecc0d6/4760fd1; follow-up passed staged/full-phase whitespace and remote verification13:10:57UTC |
| [Audit](AUDIT.md) | Implemented CONDITIONAL GO; publishedf9e1d06, remote verified13:26:54UTC; exact Undo allowlist and owner-filtered Restore distinction verified |
| [System](SYSTEM.md) | Implemented CONDITIONAL GO;20frontend/46backend/3native plus types/lint/build PASS, final hygiene/publication pending; SMTP drafts and operational scopes preserved |
All 57 preservation groups retain **56 PARTIAL / C11 DEFERRED**, with 33 routes. P5-13 is withheld; followMode remains deferred. No Phase 8 implementation. Production readiness remains NO-GO; the independently owner-authorized main release is still unverified after run831 failed with browser crashes/malformed Playwright JavaScript. Do not infer admin recent-auth enforcement: the current Users/Audit/System actions do not implement that separate guard. Preserve actual account-lifecycle/export recent-auth checks and record this gap rather than inventing a security protocol during presentation migration.
+25
View File
@@ -0,0 +1,25 @@
# P7-10 System
**Implemented CONDITIONAL GO; final hygiene/publication pending.** Entry: Audit `f9e1d06bf7fc4081b70ebf461f1645ef219e0a93`, normally pushed and directly verified20October13:26:54UTC; separate Qwen3.5 adapter preparation `1d34406d1bacdb33d180f0e7e37bb0cb099ece5e`, pushed/directly verified13:33:16UTC. Main remains at its separately authorized CI repair `d1fcd23`; these development commits do not establish deployment.
## Findings and bounded implementation
The old combined load discarded successful diagnostic responses on another failure, swallowed optional failures as absent results, and erased SMTP drafts and write-only password/clear state on refresh or locale changes. Initial failure could display invented offline/disabled/zero metrics. Tabs lacked named panels. Operational writes could compete, and a late acknowledgement could replace newer edits.
The existing four read endpoints now retain independent availability and targeted GET-only retry. No status means no fabricated metric cards. A failed refresh qualifies retained values; denied access clears sensitive diagnostics and prevents operations. Shared page/section surfaces, density tokens, wrapping metadata/actions and linked tabs/panels retain the existing status/settings architecture and all original diagnostic values/helpers.
SMTP fields, password and clear-state revisions preserve unsaved edits through refresh and newer edits through a submitted acknowledgement. Blank-password retention and explicit clear payloads are unchanged. All existing save/test/probe/allowlisted-maintenance operations share synchronous admission and session/lifetime guards. Successful explicit probe retains its status readback; failed readback offers GET recovery without replaying POST. Focus moves to the named pending region and returns to a surviving control or heading. No automatic operation runs on entry or tab changes.
## Evidence and qualifications
Initial ordinary unit baseline:4 passing/5 failing against the old owner. Expanded regression covers independent optional reads, denied refresh, failed-save retention, password clearing, newer snapshots, probe/readback recovery and session disposal. Existing backend **46/46 PASS**, zero skipped: AuthAndSystemControllerTests, MaintenanceJobDispatcherTests and ApiAuthorizationPostureTests, unchanged Release binary.
The first candidate passed20 frontend cases,3 native cases, app/browser TypeScript, lint and production build. Native cases use real isolated login/non-admin403 checks but controlled administrator System reads and SMTP PUT acknowledgements. They never send email, change actual SMTP configuration, run AI probes or dispatch maintenance. Six paired EN/NB/light/dark widths320–1920 exercise both panels and root reflow. Fourteen all-enabled axe scans reported0violations/100incomplete nodes, including the inherited roleless version badge, short badge text and overlapped focus/field backgrounds. These remain qualified automated evidence.
Three candidate PNGs were actually inspected:320px Bokmål dark settings,1024px English dark diagnostics and1440px retained-newer SMTP draft. That review found a saved-message ambiguity while newer edits remained unsaved. A localized SMTP dirty caption now distinguishes newer/failed edits from acknowledged values; two existing unit assertions and a native assertion failed ordinarily before the correction. No saving semantics changed.
Final **20/20 frontend PASS**13:38:37–13:38:53UTC; **3/3 native PASS**13:38:27–13:39:04UTC, zero skips/flaky/retries, export **`EAHpn0GPj6rRy3WtHltbf`**. App/browser TypeScript, lint and build pass on the final source. [Portable results](evidence/system-results.json) record command/source/image identities; source hashes are post-run observations. Both final320px Bokmål settings and1440px newer-draft images were actually inspected. Twelve other final images remain automated evidence; earlier candidates/REDs are retained separately. Fourteen final axe scans remain0violations/100incomplete nodes. Full-page fixed-shell/skip-link capture artifacts are qualified rather than human/device acceptance.
Sixteen added System cases derive884 frontend cases/99 suites; three native additions derive348 cases/57 files. These are inventories, not fresh whole-suite passes. Sidecar is separately56/56 after the seven-case Qwen compatibility repair. Final integrated acceptance remains P7-12.
No API/schema, provider capability, diagnostic source, renderer/PDF/revision/frozen association or AI-safety contract changes. Actual SMTP/probe/maintenance/provider execution, human screen-reader, physical touch/software keyboard, actual zoom and production output remain unverified. Separate recent-auth enforcement is absent in existing administrator operations and is not claimed. All57 groups retain56 PARTIAL/C11 DEFERRED and33 routes; P5-13 stays withheld. Phase8 has not started. Production readiness remains NO-GO despite separate owner release authorization.
@@ -0,0 +1,342 @@
{
"observedUtc": "2026-10-20T13:39:08.502281+00:00",
"sourceScope": "Post-run observations, not pre-run captures",
"sources": {
"src/views/AdminSystemPage.tsx": "8459906c2b2c98d5302d3f5ada287374fa0edbbd19e04afed92f22196143640b",
"src/admin-system-page.test.tsx": "0bca15c42206c31e2bdee9f81a362fa1c75045892b410f87688af3927530f216",
"src/i18n/translations.ts": "deff5960dbc405defe451eac91f6d2484809bfdb141ab111629648135a66d421",
"e2e/phase7-admin-system.spec.ts": "131ab1895aa106b1f0c8d3e69f2967e63020686e86399f71f668500734a15a23"
},
"gates": {
"typecheck": {
"path": ".artifacts/phase7/current/ui/typecheck-command.json",
"sha256": "ed55b1be024788a211cb6b2f13670c05f61b6e9a2074efe3f9f83c3082d5954a",
"name": "typecheck",
"command": [
"rtk",
"proxy",
"npm.cmd",
"run",
"typecheck"
],
"startedUtc": "2026-10-20T13:38:12.450213+00:00",
"finishedUtc": "2026-10-20T13:38:28.890264+00:00",
"exitCode": 0
},
"lint": {
"path": ".artifacts/phase7/current/ui/lint-command.json",
"sha256": "f0c88affb45215c84734b90fe4845a8edad075ba637fe03846d5b8a909540d11",
"name": "lint",
"command": [
"rtk",
"proxy",
"npm.cmd",
"run",
"lint"
],
"startedUtc": "2026-10-20T13:38:12.457245+00:00",
"finishedUtc": "2026-10-20T13:38:44.531849+00:00",
"exitCode": 0
},
"browser-typecheck": {
"path": ".artifacts/phase7/current/ui/browser-typecheck-command.json",
"sha256": "f217f7e123b6d0bfd6ea812956e214c2300c4fb73f70688a50ec7155aa2f62c4",
"name": "browser-typecheck",
"command": [
"rtk",
"proxy",
"npm.cmd",
"exec",
"tsc",
"--",
"--project",
"../.artifacts/phase7/e2e-tsconfig.json",
"--noEmit"
],
"startedUtc": "2026-10-20T13:38:54.293887+00:00",
"finishedUtc": "2026-10-20T13:39:02.147860+00:00",
"exitCode": 0
},
"build": {
"path": ".artifacts/phase7/current/ui/build-command.json",
"sha256": "60b31ffa094f84ef5b219d99a576610000e926fee3bcf02c52a06d168c1b46be",
"name": "build",
"command": [
"rtk",
"proxy",
"npm.cmd",
"run",
"build"
],
"startedUtc": "2026-10-20T13:37:58.329731+00:00",
"finishedUtc": "2026-10-20T13:38:14.705969+00:00",
"exitCode": 0
},
"admin-system": {
"path": ".artifacts/phase7/current/ui/admin-system-command.json",
"sha256": "23366d27a8912cd6c5170eef060da9eaed1d8fcd9e9f34b819f1f82b202c2786",
"name": "admin-system",
"command": [
"rtk",
"proxy",
"node",
"node_modules/@playwright/test/cli.js",
"test",
"e2e/phase7-admin-system.spec.ts",
"--retries=0",
"--reporter=list,json",
"--output=E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\ui\\admin-system-results"
],
"startedUtc": "2026-10-20T13:38:27.233516+00:00",
"finishedUtc": "2026-10-20T13:39:04.904214+00:00",
"exitCode": 0
}
},
"images": [
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-read-recovery-390-en-light.png",
"sha256": "66c4c5e460578e98c0d4d989cdaa4363ead059f9e82c1e676d2d16f9b4b73f3d"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-newer-smtp-draft-1440-en-light.png",
"sha256": "42b1aa930daf52844ed6279d72c2074d1a71318e22922e954290ea7013808a38"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-320-nb-dark.png",
"sha256": "98d2451c06504cce7faffc8df4a344f58dcf9f9f195048fb767889aa28dae3c7"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-320-nb-dark.png",
"sha256": "dac223bb10f01e2ad9c74d08ce0231a89ee63fb1e477dcd51d83d09b17ab6199"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-390-en-light.png",
"sha256": "9daa32566218bb73309b4c3f4177d1e3c7696ee717c2e2040775b60c6f8d43ad"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-390-en-light.png",
"sha256": "878684d2cada2185a558ad16f0b2019b34482ae928a1903320726bed332aaa8e"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-768-nb-light.png",
"sha256": "6872f0b47da55e2dc647623b45f76612392ce962097bec75deaedb5a8be817b3"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-768-nb-light.png",
"sha256": "8af5eadc7060fc97a33a900d2504dfd0e66d2e9e71af006531bfb610e078793f"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1024-en-dark.png",
"sha256": "a36434d8030236db601d4f2160de6ee81232409345ad77479e5c2d4b6fbfbc43"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1024-en-dark.png",
"sha256": "1fc022c083a8fcf250a0e8b598cf831dea9cd88eb253a47bbe4b7e7e9878229e"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1440-en-light.png",
"sha256": "00247a899ec72bf03a64c4f8885bf50ac35507dbde6002f921158f6f8cd11b7c"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1440-en-light.png",
"sha256": "51052ba8fc32683acf157c4c8f026f72382c2a5cc63d6423a5b9a2a029d64d42"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1920-nb-dark.png",
"sha256": "ec4e3b669330bd35ac2f4e10f38b0d4c3c11245ecc2281b4228ff577db974d41"
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1920-nb-dark.png",
"sha256": "68cabb407cd59c17c1f0dbf8563e47e692d8f1c0dc0e35a90a57e3cef5999ee5"
}
],
"scans": [
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-read-recovery-390-en-light-axe.json",
"violations": 0,
"incompleteNodes": 1,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-newer-smtp-draft-1440-en-light-axe.json",
"violations": 0,
"incompleteNodes": 15,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-320-nb-dark-axe.json",
"violations": 0,
"incompleteNodes": 1,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-320-nb-dark-axe.json",
"violations": 0,
"incompleteNodes": 12,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-390-en-light-axe.json",
"violations": 0,
"incompleteNodes": 1,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-390-en-light-axe.json",
"violations": 0,
"incompleteNodes": 12,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-768-nb-light-axe.json",
"violations": 0,
"incompleteNodes": 1,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-768-nb-light-axe.json",
"violations": 0,
"incompleteNodes": 12,
"incompleteRules": [
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1024-en-dark-axe.json",
"violations": 0,
"incompleteNodes": 2,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1024-en-dark-axe.json",
"violations": 0,
"incompleteNodes": 13,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1440-en-light-axe.json",
"violations": 0,
"incompleteNodes": 2,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1440-en-light-axe.json",
"violations": 0,
"incompleteNodes": 13,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-status-1920-nb-dark-axe.json",
"violations": 0,
"incompleteNodes": 2,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
},
{
"path": ".artifacts/phase7/p7-10/system-final-visuals/system-settings-1920-nb-dark-axe.json",
"violations": 0,
"incompleteNodes": 13,
"incompleteRules": [
"aria-prohibited-attr",
"color-contrast"
]
}
],
"frontend": {
"path": ".artifacts/phase7/current/unit/admin-system-dirty-final-20261020T133837Z-command.json",
"sha256": "d06bb477f61c61db5f966fdf34632d84e4132d9384b9d35fdf5798a3434a8fa4",
"command": [
"rtk",
"proxy",
"npm.cmd",
"test",
"--",
"--runInBand",
"--watchAll=false",
"--json",
"--outputFile=E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\unit\\admin-system-dirty-final-20261020T133837Z.json",
"src/admin-system-page.test.tsx"
],
"startedUtc": "2026-10-20T13:38:37.528717+00:00",
"finishedUtc": "2026-10-20T13:38:53.482309+00:00",
"exitCode": 0,
"counts": {
"numPassedTests": 20,
"numFailedTests": 0,
"numPendingTests": 0,
"numTodoTests": 0,
"numPassedTestSuites": 1,
"numFailedTestSuites": 0
}
},
"backend": {
"path": ".artifacts/phase7/current/backend-career/p710-system-contracts-20261020T133136Z/command.json",
"sha256": "44e81e42ccd9dbc61eb2a6da618d48a1a9c47c21aaaefb499d104934ebf5e132",
"command": [
"rtk",
"proxy",
"C:/Users/Connor/.dotnet/dotnet.exe",
"test",
"JobTrackerApi.Tests/JobTrackerApi.Tests.csproj",
"--configuration",
"Release",
"--no-build",
"--filter",
"FullyQualifiedName~AuthAndSystemControllerTests|FullyQualifiedName~MaintenanceJobDispatcherTests|FullyQualifiedName~ApiAuthorizationPostureTests",
"--logger",
"trx;LogFileName=career.trx",
"--results-directory",
"E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\backend-career\\p710-system-contracts-20261020T133136Z"
],
"startedUtc": "2026-10-20T13:31:36.300068+00:00",
"finishedUtc": "2026-10-20T13:31:38.924898+00:00",
"exitCode": 0,
"logSha256": "5823beffd630c5ec8db5d85b288c7a29b92175a9ee53193d177f2727feb44829",
"counts": {
"total": 46,
"passed": 46,
"failed": 0,
"notExecuted": 0
},
"resultSha256": "ffce3255d00f773af12ecd8ab90a8346bb5a97303ece9b9c8f74542a0c727272"
},
"buildId": "EAHpn0GPj6rRy3WtHltbf",
"nativeStats": {
"startTime": "2026-10-20T13:38:27.913Z",
"duration": 36945.229,
"expected": 3,
"skipped": 0,
"unexpected": 0,
"flaky": 0
},
"nativeResultSha256": "eb40e9476189bb8f25513fd8dee80edc52c6d7ae3a8a41ec002e5a5c4eb12c0a"
}
@@ -0,0 +1,104 @@
{
"schemaVersion": 1,
"checkpoint": "p7-10",
"status": "PASS",
"checkedUtc": "2026-10-20T13:40:08.969086+00:00",
"commands": [
{
"name": "secret-scan",
"command": [
"rtk",
"proxy",
"C:\\Users\\Connor\\AppData\\Local\\Programs\\Python\\Python312\\python.exe",
"-X",
"utf8",
"scripts/supply-chain.py",
"scan-secrets"
],
"startedUtc": "2026-10-20T13:40:05.432381+00:00",
"finishedUtc": "2026-10-20T13:40:08.147471+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261020T134005Z/secret-scan.log",
"logSha256Raw": "be5119e6057287d397e87759f855c91e634e3bfac61c8be7584d05592ba2dfcd"
},
{
"name": "working-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--check"
],
"startedUtc": "2026-10-20T13:40:08.147977+00:00",
"finishedUtc": "2026-10-20T13:40:08.236175+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261020T134005Z/working-whitespace.log",
"logSha256Raw": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
{
"name": "staged-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--cached",
"--check"
],
"startedUtc": "2026-10-20T13:40:08.236676+00:00",
"finishedUtc": "2026-10-20T13:40:08.329638+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261020T134005Z/staged-whitespace.log",
"logSha256Raw": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
{
"name": "phase7-whitespace",
"command": [
"rtk",
"proxy",
"git",
"diff",
"--check",
"b5319981ad3d1bd635daff861453d23c0de5320b"
],
"startedUtc": "2026-10-20T13:40:08.329638+00:00",
"finishedUtc": "2026-10-20T13:40:08.521089+00:00",
"exitCode": 0,
"log": ".artifacts/phase7/current/static/20261020T134005Z/phase7-whitespace.log",
"logSha256Raw": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
}
],
"untrackedSecretScan": {
"files": 0,
"findings": 0
},
"documentation": {
"files": 34,
"relativeLinks": 635,
"errors": []
},
"preservation": {
"groups": 57,
"statuses": {
"PARTIAL": 56,
"PASS": 0,
"FAIL": 0,
"DEFERRED": 1
},
"originalRoutesPreserved": true,
"currentConcreteRoutes": 33
},
"production": {
"main": "d1fcd2308755dfc112a2bd6a736dd763bbc895f9",
"originMain": "d1fcd2308755dfc112a2bd6a736dd763bbc895f9",
"status": "NO-GO",
"qualification": "Local fetched refs; direct push observation recorded separately."
},
"hashPolicy": "Portable JSON UTF8 LF; raw log hashes measure exact saved bytes.",
"limits": [
"Pattern scanner skips binary and files over2MiB; not historical Git/production secrets.",
"Local links check target existence, not URL/heading anchors.",
"Static evidence is not runtime/manual/device/provider/production acceptance."
]
}