4 Commits

Author SHA1 Message Date
wangdl
a532b5163b fix(P2-06): remove @Optional() silent skip from AiInteractive/Background workers
All checks were successful
Deploy API Server / build-and-unit (push) Successful in 34s
Deploy API Server / current-integration (push) Successful in 3m2s
Deploy API Server / backward-compat (push) Successful in 0s
Deploy API Server / deploy (push) Successful in 1m3s
Engine is now a hard dependency — DI resolution failure prevents Worker
startup (fail-fast) instead of silently skipping all Unified Jobs.

Changes:
- ai-interactive.worker.ts: remove @Optional(), silent return guard
- ai-background.worker.ts: remove @Optional(), silent return guard
- docs: mark P2-06 as fixed

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 15:45:33 +08:00
wangdl
4f74c09d0f docs(M-AI-04-GATE): record P2-06 (@Optional silent skip) and P2-07 (Engine hardcoded active_recall) as technical debt
Some checks failed
Deploy API Server / build-and-unit (push) Successful in 35s
Deploy API Server / current-integration (push) Successful in 30s
Deploy API Server / backward-compat (push) Successful in 0s
Deploy API Server / deploy (push) Has been cancelled
P2-06: AiInteractiveJobWorker @Optional() + silent return — must remove
       before production Unified to prevent silent job skipping.
P2-07: Engine if (jobType === active_recall) ×4 — should refactor
       to Definition lifecycle hooks or Observer pattern. Does not block M-AI-05.

Also update P1-01/P1-02 to reflect BATCH-02 fixes.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 15:43:29 +08:00
wangdl
f8bd950f1a fix(M-AI-04-GATE-FIX-02): Worker AiJobModule, Projector observability, E2E fail-closed
Some checks failed
Deploy API Server / build-and-unit (push) Successful in 35s
Deploy API Server / backward-compat (push) Has been cancelled
Deploy API Server / deploy (push) Has been cancelled
Deploy API Server / current-integration (push) Has been cancelled
P1-01: WorkerModule imports AiJobModule → AI_JOB_EXECUTION_ENGINE resolved
       → AiInteractiveJobWorker can execute Unified Jobs (not silently skip)
P1-02: Engine PROJECT phase wrapped in try-catch → incrementProjectorFailed
       on ActiveRecall projector errors (independent of executor failures)
P2-01: E2E beforeAll fail() → throw new Error() → no ReferenceError risk

Observability coverage after fix:
- Creation: incrementUnifiedRequests, logRequest, logJobCreated, logJobCreateFailed 
- Execute success: incrementUnifiedExecuteSuccess, logExecutionCompleted 
- Execute failure: incrementUnifiedExecuteFailed, incrementUnifiedRetry, logExecutionFailed 
- Projector failure: incrementProjectorFailed  (NEW)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 15:29:33 +08:00
wangdl
a5ad0bc9f2 docs(M-AI-04-08-GATE): final acceptance audit — CONDITIONAL PASS
All checks were successful
Deploy API Server / build-and-unit (push) Successful in 34s
Deploy API Server / current-integration (push) Successful in 29s
Deploy API Server / backward-compat (push) Successful in 0s
Deploy API Server / deploy (push) Successful in 1m1s
Gate report: docs/architecture/m-ai-04-gate-audit.md
- 29 acceptance criteria: all passed
- 1 P0 fixed (cross-user ownership)
- 6 P1 archived (0 block test-env Unified)

Condition: test-env Unified only, production stays Legacy.
CI Docker ready → upgrade to PASS.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-21 15:16:26 +08:00