docs(ai): record strategy queue evidence
This commit is contained in:
@@ -1,18 +1,18 @@
|
||||
# JobTracker session handoff
|
||||
|
||||
Updated: 2026-08-03
|
||||
Updated: 2026-08-09
|
||||
|
||||
- **Exact current task:** AI-002 — revalidate and implement the central local-first Ollama/provider routing policy using PROD-002 task classes, POL-002 consent gates and AI-001 execution context.
|
||||
- **Last completed step:** AI-001 added reusable Pro/privacy admission, bounded priority/capacity, typed default-off worker, owner/policy/cancellation recheck, heartbeat/timeout/retry handling and configuration. POL-002 immediately before it added persistent AI opt-out/external consent plus backend/sidecar gates. AI-002 is the sole `IN PROGRESS` item.
|
||||
- **Files currently modified:** all prior uncommitted programme work plus AI privacy settings/policy/controller/migration/UI/sidecar changes, `AiOperationQueue.cs`, queue tests/configuration and new architecture/verification/evidence/tracking documents. Pre-existing unrelated changes remain preserved.
|
||||
- **Commands already run this session:** targeted source tracing; backend builds; EF migration scaffold/pending-model/script/update attempts; focused/full backend tests; focused/full frontend tests; frontend production build; sidecar pytest; Compose config; diff checks. Exact POL-002 commands/results are V-089–V-095; AI-001 are V-096/V-097.
|
||||
- **Test results:** backend 581/581; AI-001 focused queue/state/API 17/17; frontend 47/47 suites and 158/158 tests plus production build; Python sidecar 18/18; Compose config and diff check pass. Browser was not run.
|
||||
- **Services currently running:** no process started in this session remains. The attempted temporary API launch command was rejected before execution. Pre-existing Docker development containers previously observed were not changed.
|
||||
- **Temporary files or processes:** no process remains. `tmp/pol002-migration.db` is a disposable partial SQLite migration rehearsal; it contains no user data and stopped at the pre-existing historical migration-chain defect. No startup-test files were created because the launch command was rejected.
|
||||
- **Production changes currently active:** none. No provider/model call, deployment, production configuration, model pull, paid service or production migration occurred.
|
||||
- **Rollback status:** all changes are repository-only and uncommitted. Set `EXTERNAL_AI_ENABLED=false` and `WORKER_AI_OPERATIONS_ENABLED=false` for immediate local-only/inactive behavior. The AI preference migration is additive; application rollback should retain its columns. AI-001 adds no schema.
|
||||
- **Uncommitted changes:** the worktree remains broadly dirty from user/prior programme work, including original `D .agent.md`, `?? AGENTS.md`, audit/todo trees and all completed package changes. Do not revert, reset, bulk-format or commit unrelated files.
|
||||
- **Known failures:** browser localhost denied; MariaDB/SMTP/production unavailable; SEC-006 package upgrades need explicit internet permission; direct clean EF-only SQLite migration fails before the new preference migration because historical `AddJobEntityAndProspectStages` expects startup reconciliation. No real AI task handler is registered and all AI workers remain off.
|
||||
- **Exact next action:** trace every `/summarize` and `/cv/*` call into one AI-002 task-routing matrix, then add actual-provider/result metadata and local health/circuit/fallback decisions to the AI-001 execution path without changing Strategy/CV producers yet.
|
||||
- **Work that can continue independently:** AI-002 repository adapter/routing tests with fake transports; then AI-003/004 typed producers/handlers. UX-001/QA-001 can proceed after foundations. SEC-006/007 require package-index permission; PROD-001/003/004 require production access.
|
||||
- **Decisions still required from the user:** none for repository-only AI-002 fake/local work. External/paid provider calls, package upgrades and production rollout/access still require explicit authority/configuration; SEC-009 deletion/retention needs the recorded retention/legal decision.
|
||||
- **Exact current task:** AI-004 — revalidate the CV upload/reprocess/rebuild/improve browser-to-parser-to-model path and migrate long work to the shared durable operation contract without bypassing human review.
|
||||
- **Last completed step:** AI-003 replaced synchronous Focus Plan GET generation with typed `strategy.snapshot` admission/handler/result persistence and explicit queue/cancel/retry/failure/completion UI. Implementation commit: `a621226`; evidence: V-101–V-103 and `docs/verification/ai-003-strategy-snapshot-queue.md`.
|
||||
- **Files currently modified:** none after the AI-003 implementation and tracking commits. Preserve any new user edits discovered on resume.
|
||||
- **Commands already run:** bounded source/document tracing; backend builds; focused backend tests; focused frontend tests; full backend/frontend suites; frontend production build; diff/status checks; staged and committed only AI-003 files. Exact results are V-101–V-103.
|
||||
- **Test results:** backend 592/592; AI-003 focused backend 34/34; frontend 47/47 suites and 160/160 tests; AI-003 UI 6/6; production frontend build pass; diff check pass. Fake model/synthetic data only.
|
||||
- **Services currently running:** none started by this session. The prior Node/Jest/build processes exited. Pre-existing Docker services were not changed.
|
||||
- **Temporary files or processes:** no new temporary file or process remains. A sandboxed build initially attempted a blocked NuGet restore; the approved build path reused/restored the existing local cache and passed. No dependency declaration changed.
|
||||
- **Production changes currently active:** none. No deployment, provider/model call, model pull, paid service, production migration or external payload occurred.
|
||||
- **Rollback status:** keep `Workers:AiOperationsEnabled=false`, revert `a621226`, and cancel/drain any queued `strategy.snapshot` rows before removing the handler. No AI-003 schema/dependency change; existing additive operation/note tables can remain.
|
||||
- **Uncommitted changes:** none expected after the tracking commit. Confirm with `git status --short --branch` before AI-004 edits.
|
||||
- **Known failures:** browser localhost denied; MariaDB/SMTP/production unavailable; SEC-006 upgrades require explicit internet/package-index permission; historical clean EF-only SQLite chain still requires startup reconciliation; Jest reports the existing force-exit/open-handle notice. Cross-feature monthly AI usage accounting is incomplete.
|
||||
- **Exact next action:** trace `ProfileCvController` upload/reprocess/rebuild/improve, `CvProcessingQueue`/worker, extraction-run/artifact persistence, sidecar parser/model calls, frontend polling and nginx/Traefik timeouts; classify which work is already durable and where 504 exposure remains before changing code.
|
||||
- **Work that can continue independently:** AI-004 repository tracing, safe synthetic fixtures, typed operation integration and fake-provider/parser tests. UX-001/QA-001 can follow foundations. SEC-006/007 await package-index permission; PROD-001/003/004 await production access.
|
||||
- **Decisions still required from the user:** none for repository-only AI-004 work using synthetic data/fakes. Internet/package upgrades, private CV access, external/paid providers and production actions still require the existing explicit authority and safety gates; SEC-009 retention/legal policy remains unresolved.
|
||||
|
||||
Reference in New Issue
Block a user