- CURRENT_TASK rolls forward — PR #153 closed out, no active task, with recommended next moves (promote e2e gate to required, pick from TODO). - HANDOFF rewritten — new home position is `main`; documents the e2e job's stub ANTHROPIC_API_KEY convention so future AI-touching e2e tests know what to expect. - SESSION_LOG entry extended with the CI env-var diagnosis, the fix, the merge, and pointers to the natural next pickups. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
29 lines
2.3 KiB
Markdown
29 lines
2.3 KiB
Markdown
<!-- Keep under ~2K tokens. Old handoffs live in SESSION_LOG.md. Do not let this file accumulate history. -->
|
|
|
|
# HANDOFF.md
|
|
|
|
**Last updated:** 2026-04-26 04:55 EDT
|
|
|
|
**Active task:** None — pick from [`TODO.md`](TODO.md). See [`CURRENT_TASK.md`](CURRENT_TASK.md) for recommended next moves.
|
|
|
|
**Branch:** `main` is the home position. Recent merges: PR #150 (CI recovery, `87bb20b`), PR #153 (prefill `currentChatRef` fix, `68fcdc6`).
|
|
|
|
## Where things stand
|
|
|
|
- CI is healthy on `main`: backend, frontend, and e2e all green on the latest commits.
|
|
- Branch protection on `main`: PR-only merges, force-push blocked, **`CI / frontend (pull_request)` required**, **`CI / backend (pull_request)` required**, `CI / e2e (pull_request)` not yet required.
|
|
- Two consecutive PR runs (#150, #153) finished green on e2e. The "promote e2e to required" gate from the prior task is now satisfiable.
|
|
- Backend AI-gated endpoints (`POST /ai-sessions`, `/chat`, `/respond`, etc.) call `_require_ai_enabled()` and return 503 if no provider key is set. The e2e CI job now sets a stub `ANTHROPIC_API_KEY` so any future test that exercises those flows can rely on it; tests should still stub the actual AI calls in the browser via `page.route` so no real Anthropic traffic occurs.
|
|
|
|
## Immediate next steps
|
|
|
|
1. (Optional, ops-only) Promote `CI / e2e (pull_request)` to required on `main` in Gitea branch protection.
|
|
2. Pick the next backlog item from `TODO.md`. Top of "Up next" is the `data-testid` e2e-stability audit; the new `currentChatRef` silent-return audit (added to backlog in this session) is a natural pairing with the bug fix that just shipped.
|
|
|
|
## Useful breadcrumbs
|
|
|
|
- The fix that just landed: [`frontend/src/pages/AssistantChatPage.tsx`](../frontend/src/pages/AssistantChatPage.tsx) — `currentChatRef.current = session.session_id` after `setActiveChatId` in the dashboard prefill effect.
|
|
- Regression test: [`frontend/e2e/assistant-chat-prefill.spec.ts`](../frontend/e2e/assistant-chat-prefill.spec.ts).
|
|
- E2e env convention: [`.gitea/workflows/ci.yml`](../.gitea/workflows/ci.yml) — `ANTHROPIC_API_KEY` is stubbed in the e2e job env. Tests that exercise AI-gated endpoints should stub the actual AI calls in the browser, not rely on a real key.
|
|
- Silent-return follow-up entry: [`.ai/TODO.md`](TODO.md), Backlog section.
|