Files
jobtrackingapp/docs/redesign/phase-7/DEBT.md
T

16 KiB
Raw Blame History

Phase 7 — Retained debt and mandatory gates

This is the current entry disposition of every RD01–RD28 obligation in the Phase5 debt register, reconciled with successor dispositions, Phase6 final report and exact handoff. Historical records stay intact. This table updates scoped outcomes rather than copying obsolete source descriptions as current facts.

Production remains NO-GO, main unchanged. Independent bounded development can continue with explicit conditions; a demonstrated severe shared/security/data failure blocks its dependent propagation. Actual provider/production/destructive actions retain separate authority.

Every retained debt

ID Current entry disposition Dependency / permitted Phase7 boundary
RD01 F04 actual production ingress/topology/trusted socket peer/TLS/IPv6/firewall/client identity remains OPEN Release gate; local ingress tests do not supply actual deployed proof
RD02 Current complete DB/files/CV/export/DataProtection/tombstone recovery set and isolated restore UNVERIFIED Release/lifecycle gate; backup download is not restore evidence
RD03 Effective provider/schema/configuration/secrets/startup and F19 fallback UNVERIFIED Release gate; no DDL/cutover or provider assumption hidden in presentation
RD04 Isolated Linux failure/rollback rehearsal and complete prior images/config UNVERIFIED Release gate; production restore/restart not authorised
RD05 Protected CI/runner/deployed SHA/authenticated smoke identity UNVERIFIED Release gate; repository main identity is not deployed identity
RD06 Human reader/state/name/contrast and contextual axe acceptance remain OPEN Applicable M01–M12; current52+267 inventories below supersede old counts; no conformance claim
RD07 Physical touch/software keyboard/mobile AT/forced-colors/text-spacing/alternate-browser acceptance NOT VERIFIED Applicable actual operators/devices; finite emulation/zoom does not replace them
RD08 P5-13 model semantics/review UI remains DEFERRED/UNQUALIFIED/withheld; frozen32 cases,0/366 configured-target calls,0human reviews PRES-C11 and M13 do-not-execute; no automatic model qualification or UI activation
RD09 Production CV proposal503/no-provider/no-write has local contract proof; actual deployed withholding unverified Preserve guard and unrelated existing AI; no unqualified generation/Apply
RD10 Actual production Linux/fonts/portrait/crop/print/other-browser output qualification UNVERIFIED Local original16/36+8/24 oracle remains passing and finite
RD11 Language preference500 server root remains OPEN; P6 now shows local/account scope failure, explicit retry and latest-choice race protection P7-09 retains repaired feedback; do not claim concurrency/server cause fixed
RD12 Notification-setting SQLite locking/server contention remains OPEN P7-09 retains draft/in-page error; diagnose intended-provider writes before stronger reliability claim
RD13 Historical Rules500 cause unconfirmed/OPEN; prior durable error/retry/discard/internal-draft repair retained P7-09 keeps Rules save owner/draft lifetime; no generic retry hides root
RD14 Command/dialog focus timing incident cause remains unproven All changed modal/shell owners require actual trap/restore/transition proof; clean rerun is not diagnosis
RD15 CV section expansion historical intermittent cause remains unproven Retain failed observation and original assertions; investigate if reproduced
RD16 Scoped P6 company-error defect repaired: durable dialog-local accessible alert, retained draft and retry readback; focused/integrated ordinary cases pass P7-05 must preserve it; whole actual-reader/dialog/contact/date acceptance remains PARTIAL
RD17 Complete Board result grouping/rendering remains O(N); measured200/1,000 observations prove capacity cost, not a budget Preserve full membership/query parity; separately bounded measured capacity work, no hidden result cap
RD18 Board/CV physical selection/drag/drop/cancel/browser variants NOT VERIFIED Applicable M03/M06/M12 physical evidence and named keyboard alternatives; no invented cross-section feature
RD19 followMode producers/query metadata retained; reviewed consumer remains DEFERRED P7-06F requires explicit mode→draft/review action/fallback before implementation; no auto-send/resend
RD20 P5-05 optional read-only quick preview remains DEFERRED; unsupported NEW/OD and Phase8 scope remain reserved No second full editor or early Dashboard order/resize/reset/cross-device widget framework
RD21 Canonical profile/job stale-save and creation-intent idempotency remain OPEN, separate from verified CV revision Resolve or explicitly bound concurrency before save/history owner expansion; P7-03 retains current presentation-only behavior
RD22 F20 enabled-worker outage recovery/durability remains OPEN Inspect intended gates; recovery/no-loss/no-duplicate proof before new enabled producers; no worker activation
RD23 F21 calendar offset/DST/date-only semantics remain OPEN P7-05/06 retains existing links; dedicated contract/provider proof before semantic changes or scheduling claims
RD24 Billing/deletion/retention/tombstone/provider-cleanup policy/configuration UNVERIFIED P7-09 presentation only; no checkout/deletion/restore activation or guessed policy
RD25 Real OAuth/Turnstile/mail/calendar/model/signup delivery/reconnect/privacy semantics remain finite/unqualified Current provider protocols retained; actual authorised sandbox/human evidence for affected acceptance; never auto-resend uncertain delivery
RD26 Legacy Job/Application expand-verify-contract cutover remains OPEN No compatibility column/read/write removal; separately authorised production/restore reports and rollback
RD27 Actual monitoring/alerts/recovery owner/runbook coverage UNVERIFIED Release failure-detection/recovery gate; do not fabricate centralized sink/alerts
RD28 Evidence scope/failure provenance and original closures must be preserved P2-D01 ordinary pass; no assertion relaxation/skip; inherited old attachment-loss limits remain explicit

The IF-CV-UNSAVED-01 recoverable-draft/Unsaved intermittent trace obligation also remains open under the CV revision/evidence boundary; successful native held-PUT/history runs do not diagnose every historical incident. Dashboard measured duplicate source reads/layout shifts remain bounded follow-up candidates, not proven backend defects or comparative performance improvements.

Current accessibility inventory and triage

Actual final Phase6 report SHA256 is a908c30a8435448b00849171e3cb9ce68b96570f60c3da086409e434d1bcd82a; measured source/export are bd47214bdcd74336788dca0f294b8ddb9403cac1 / 2LDblja_XnSBWSuY6ys_V. The aggregate retains exact attachment hashes/counts and detailed or representative contexts; complete raw node vectors remain in its identified source report.

Scope Snapshots Violation-node occurrences Incomplete occurrences
Detailed all-enabled 52 11 435
Retained WCAG-tagged/domain-scoped 267 0 2,038
Combined mixed scope 319 11 2,473

Counts repeat across states and are not unique defects, all-enabled coverage for319, or a like-for-like Phase5 comparison. Pre-CSS49/11/342 evidence stays historical; the final repaired source52 adds two label and one settled-touch states. Restored modal workflows add16 retained-rule checkpoints versus the first failed full run's251.

Category Detailed52 Retained267 Combined319 Required contextual treatment
landmark-unique violations 5 0 5 CV parent main/paper-frame context; preserve white print document boundaries and actual reader landmark review
heading-order violations 2 0 2 AddJob step heading and workspace Strategy snapshot; bounded semantic owner repair if reproduced, not renderer changes
aria-command-name violations 4 0 4 First emulated-touch drawer sample retains four; settled named/focused drawer has0 with Escape restoration. Do not invent transition cause or spoken acceptance
color-contrast incomplete 394 1,766 2,160 Overlap/obscured/short-text contexts need M11 measurement; tagged checks include1,380 overlap/193 partly obscured/189 short-text/4 partly obscuring nodes
aria-prohibited-attr incomplete 28 209 237 Disabled CV labels/checklist wrappers; review contextual name/state under M09/M11
aria-hidden-focus incomplete 10 41 51 Menu/root/popover/drawer/current-state focusability; tagged contexts #menu24/#root12/popover4/drawer1; evaluate trap/isolation/return
aria-valid-attr-value incomplete 2 18 20 Command-dialog missing-label-ID/lifetime context; inspect actual lifecycle and reader names
target-size incomplete 1 0 1 Actual physical target/context under M12; no blanket spacing waiver
th-has-data-cells incomplete 0 4 4 Four list-error light/dark EN/NB captures target table and report missing/empty data cells; M11 error/header/data context and M09 recovery, no established application defect from incomplete alone

Settled touch still retains contrast4 and hidden-focus1 (#root) incomplete; it is not blanket accessibility clearance. Applicable manual M01–M12 remain NOT VERIFIED, especially M09 spoken names/errors/state, M11 contextual contrast/forced colors/motion and M12 physical touch/software keyboard/orientation/mobile AT. M13 is deferred AI return/do-not-execute, not the contrast packet.

Use the established accessibility plan: WCAG2.2 AA project target, ordinary text4.5:1/large text3:1/control-focus3:1, visible focus/reflow/labels/errors/live state/reduced motion;44px physical-touch aim distinct from AA24px/spacing rules. No automated conformance certification.

P7-01 public disposition

Public results are pushed in8ad720d with direct development equality verified2026-10-11 18:50:24UTC, main unchanged. Its22 new all-enabled scans independently retain0 violation nodes/31 color-contrast incomplete nodes, all background-overlap checks on input/button contexts. Keep this separate from the319 mixed-scope Phase6 snapshots; repeated nodes are not unique defects or a comparative conformance score. M09 spoken errors/status/route announcements and M11 contextual contrast/forced colors remain mandatory; human reader/browser zoom/physical input are not supplied by the eight inspected PNGs or native geometry.

RD25 has new bounded local proof: actual application registration/SMTP verification/password reset/replay and old-session invalidation pass in fresh synthetic SQLite/keys with a loopback mail capture server. Actual production mail, OAuth/Turnstile/provider consent/privacy/reconnect and delivery remain unverified. Existing English server-authored auth errors in NB samples and possible duplicate route/error announcements remain explicit reader/localisation qualifications. RD06/RD07/RD25 are not closed. At the public gate account identity/security/session/source-isolation work remained in flight; the later conditional disposition is below. No deferred AI activation is implied.

RD28 public runtime provenance is retained in the immutable .artifacts/phase7/p7-01/public-final/ snapshot, including earlier failed SMTP attempts and final export BUILD_ID. Its manifest file references point to that snapshot while raw reports preserve original internal absolute execution paths; commands/hashes/counts are unchanged. This does not erase the separate historical Phase6 attachment-loss qualification.

P7-01 account conditional disposition

Account results add fresh573/89 frontend, account6/public22/auth-boundaries10 and types/lint/build pass. The account8 all-enabled scans retain0 violation nodes/85 incomplete occurrences: contrast84 (74 overlap/8 short-text/2 partial overlap) and hidden-focus1 targeting#root in the failed revoke-others modal. Actual keyboard trap/return and modal-local error/retry assertions pass; M09/M11 remain required, including spoken state and contextual contrast/forced colors. The account-build public22 scans separately retain31 contrast incompletes. Keep these30/116 current finite occurrences separate from the319/2,473 inherited mixed-scope Phase6 records and earlier pre-copy account8/84.

Copy fixes following actual visual review truthfully describe stored profile CV text and natural Microsoft unavailability, without changing Career CV labels, fetching the CV library or exposing setup variables to the product user. Identity-only persist/reload and canonical/sibling no-write evidence do not close Career concurrency/import/override/render/production debts. Fresh full573 supersedes the historical pre-copy571 runtime count; no test is skipped to obtain acceptance. All eight final post-copy PNGs were actually inspected and implemented scope is CONDITIONAL GO; final staged finite hygiene passed and accountad7b419 is normally pushed with actual localHEAD=origin=live receipt2026-10-11 19:16:15UTC; main unchanged, worktree clean at observation. Exact runtime/attempt/build/unit/source/export evidence is frozen under .artifacts/phase7/p7-01/account-final/, with206 path/hash references verified. The immutable public static record is separate from the latest account static checks. RD06/RD07/RD25 and all manual/provider/release obligations stay open.

Evidence and production limits

P7-02 onboarding conditional disposition

Onboarding results add fresh affected32/2, ordinary native13 and separate existing Dashboard/Analytics4 with types/lint/build passing. All13 final PNGs were actually inspected; thirteen all-enabled scans retain0 violation nodes/13 color-contrast incomplete occurrences on the invisible notification badge 0 (shortTextContent). Keep M09/M11 contextual/human qualification and all provider/zoom/physical-input gates open. The connected-mailbox response in the four-complete native case is an explicit stored-connection fixture, not a real grant. Controlled English failure text is server-fixture detail; translated product guidance/fallbacks remain separate.

Actual review demonstrated lost focus when Retry disappeared. Five strengthened existing unit cases and one focused native case reproduced it before the bounded Dismiss-ref/focus correction; final native13 proves retry focus and next action after dismissal/complete recovery. Existing Dashboard summary Retry recovery still captures focus on the shell Skip link with altered scroll; its owner focus restoration remains unqualified. Presentation retry does not diagnose historical Dashboard/Board500 causes or close RD08–RD14. Latest full573/89 is inherited;596/89 is derived573+23 only. Exact source/test/build/export/runner/raw/unit/history are frozen under .artifacts/phase7/p7-02/onboarding-final/,154 file-reference hashes verified; initial pre-focus source/export observations are historical identities rather than claimed snapshots. Implemented onboarding CONDITIONAL GO is final hygiene PASS/push pending; Career overview/evidence and whole P7-02 remain pending,57/32 statuses unchanged.

The early Phase6 runner retained exact failure commands/reports/logs but reused result folders, so not all old screenshots/traces/error-context paths remain resolvable. Later runs archive the whole previous output; current successful attachments have exact provenance. Preserve that limit rather than claiming complete old failure-trace retention. Native Windows Chromium/local SQLite/synthetic fixtures and finite PDF oracles do not establish deployed Linux, human semantics, physical devices, real provider quality or production load.

API transferSize0 is unavailable cross-origin timing information, not zero network bytes. CDP document/node/heap snapshots can retain earlier navigation/CV iframe documents and do not prove leak/growth. The existing measured Board/Dashboard candidates require baseline/comparative evidence before a repair or capacity claim.

Production remains NO-GO until RD01–05/RD27 plus effective schema/configuration/secrets/provider/F19, complete off-host recovery and isolated Linux rollback/deployed smoke requirements have operator evidence and a separate release decision. The workflow deploys on main push; the owner explicitly keeps main unchanged during this mission. No destructive/provider/production action is authorised by this debt table.