32 lines
6.7 KiB
Markdown
32 lines
6.7 KiB
Markdown
# A3-IM08 AI and automation validation
|
|
|
|
3 November 2026. Owner approved **"Approve calendar/documents/mail and A3-IM08"**. Isolated `codex/a3-ui-08` starts at accepted IM07 `fba80ef346bc021e675024638dacf9ccef7243db`, with published acceptance receipt `e5a979386d6377138e7ea7fd44958adb22838886`. First bounded context fix `a88310481fbfa7701478043e8bf192ee45c7c28e` is published and independently remotely verified. Its immutable source/evidence record remains `AI_CONTEXT_VALIDATION.md` at that commit.
|
|
|
|
## Result and preservation
|
|
|
|
Settings now has an Automation entry on desktop and mobile, using existing notification preference state and its explicit Save action. Its email-reminder switch is the same persisted preference shown in Notifications; changing sections preserves drafts. Links lead to AI privacy/usage, follow-up thresholds and individual saved-search alerts. Keyboard activation of the AI link focuses the existing settings group. Existing numeric section values and routes remain stable.
|
|
|
|
The copy follows actual service contracts: optional email delivery checks roughly every six hours, confirmed account address, at most one email per application per day. Six day thresholds influence reminders and optional Ghosted status processing; they are not pause switches. Per-search alerts and AI privacy have their existing owners. No workers, providers or backlog orchestration were activated or configured.
|
|
|
|
Section AI proposals now invalidate when context or section name changes, for pending responses and displayed reviews. Whole-document proposals now invalidate when output language changes, without generating again or applying the old result. A Pro account without AI entitlement sees manual-editing guidance and a Settings link instead of an upgrade prompt. Free-plan upgrade behavior and session dismissal remain intact.
|
|
|
|
The existing Career Profile owner, CV null-as-inherit settings, save queue, undo/history, revision preconditions, opaque proposal token and explicit review/apply remain authoritative. UI language stays separate from document output language. No renderer, API, schema, dependency, model configuration or provider permissions changed. Reverting IM08 source commits restores prior presentation; no database rollback is required.
|
|
|
|
## Evidence
|
|
|
|
- **131 distinct frontend cases across eight suites PASSED**. This is the union of Automation45, whole-document studio60, section assistant23, and notice/catalogue6 with three catalogue cases overlapping Automation45. Reports are under `evidence/ai-settings/frontend` and the published `evidence/ai-context/a3-ai-context-green.json`. Older baseline58, parent59, pilot and independent-review reruns are not extra cases. Studio tests emit existing direct-focus React act warnings; this is not a warning-free test claim.
|
|
- **68 local backend cases PASSED**, no failures/skips: notification settings, tenant-bound worker fixtures, AI privacy policy, usage metering and CV AI readiness. Native TRX under `evidence/ai-settings/backend`. InMemory/temp SQLite and mocked/captured providers; no MariaDB, model inference, real email or hosted CI qualification.
|
|
- **16 controlled browser journeys and96 scoped axe scans/captures PASSED**. EN/NB, light/dark,320/390/768/1440. Final report is `evidence/ai-settings/browser/BROWSER.json`; capture refreshes overlap the same cases. Final captures wait for instant scroll-to-top; phones use viewport captures, tablets/desktop full-page captures. Representative phone EN/light and desktop NB/dark images were visually inspected. Six states exercise saved reminder preference, AI preference disabled, manual CV save without inference, proposal review, language-change discard and explicit token apply. Each journey intercepts five mutations and two proposal responses. No canonical-profile write is accepted by the fixture. Actual API/model responses are synthetic; this is not backend end-to-end or semantic AI/translation acceptance.
|
|
- Typecheck, full ESLint, static-export build and scoped browser-script lint PASSED. One initial import-casing error failed build/typecheck and was corrected to tracked `accountPlan`; subsequent checks passed. Initial browser pilot failed because a Select accessible name includes its value; selector corrected, pilot passed. An earlier unavailable export server and an accidental wrong test-runner invocation are not test evidence; package files are unchanged.
|
|
- Independent source review found the same import-casing issue, corrected before final build. No remaining findings in shared drafts/save guards, AI focus, entitlement presentation or language invalidation. Its27 selected tests overlap the131 total. Final harness review found no actionable issues in interception or count assertions. AST-only graph refresh completed; optional SQL parser and symbol-less-file limits remain explicit. Generated graph stays local.
|
|
|
|
Red regressions remain available: context/name changes four failures before the fix; document-language one failure; missing Automation contract three failures; paid-plan notice two failures. Filtered cases were not executed in those red runs. Initial capture/pilot reports do not inflate final coverage.
|
|
|
|
## Open qualifications and next gate
|
|
|
|
Granular user pause for automatic Ghosted status processing is not represented by the existing six-number rules contract. It remains a capability gap; no fake switch or silent schema expansion was introduced. Existing AI preference changes are reflected by server-backed entitlement hydration on a full page reload, as exercised here. The card does not currently refresh the mounted App entitlement context after saving, so internal navigation alone can retain stale presentation until reload; backend enforcement remains authoritative. This existing UX gap is OPEN. Reusing the auth-changed event blindly would set authResolved false and risks unmounting drafts; investigate a safe refresh separately. This increment adds no new session or entitlement authority.
|
|
|
|
NOT RUN: live models, semantic output quality, paid/real providers, physical PDF, native device/screen reader, full integrated security, recovery/restore, hosted CI or production checks. Complete European localisation, Phase10 acceptance, Global Jobs dependencies, public launch and release readiness remain open. Root security policy remains on its isolated security branch.
|
|
|
|
The approved implementation proposal requires **Gate F: owner milestone review before the next increment**. After final publication/readback, request acceptance of IM08 and progression to IM09 account/session/connections/data/admin/processing presentation, preserving RBAC, owner isolation, last-admin/session safeguards and explicit destructive-action confirmation. No main merge, deployment, live-model activation or additional provider authority is included.
|