> For the complete documentation index, see [llms.txt](https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/.spec_system/specs/phase41-session06-intelligence-action-access/tasks.md).

# Task Checklist

**Session ID**: `phase41-session06-intelligence-action-access` **Total Tasks**: 16 **Estimated Duration**: 3-4 hours **Created**: 2026-07-03

***

Legend: `[x]` completed; `[ ]` pending; `[P]` parallelizable; `[SNNMM]` session ref; `TNNN` task ID.

***

## Setup (2 tasks)

* [x] T001 \[S4106] Verify Session 03 and Session 05 artifacts plus current Intelligence hook, portal, type, and test baselines (`.spec_system/specs/phase41-session03-hermes-route-modes-and-hooks/spec.md`, `.spec_system/specs/phase41-session05-voice-token-bootstrap/spec.md`, `src/hooks/use-hermes-intelligence-voice.ts`, `src/components/hermes/intelligence/intelligence-portal.tsx`)
* [x] T002 \[S4106] \[P] Identify existing legacy Intelligence copy and assertions for admin-disabled, token, broker, provider, and demo states (`src/hooks/use-hermes-intelligence-voice.ts`, `src/components/hermes/intelligence/intelligence-portal.tsx`, `src/hooks/__tests__/use-hermes-intelligence-voice.test.tsx`, `src/components/hermes/intelligence/__tests__/intelligence-portal.test.tsx`, `tests/e2e/hermes-intelligence.spec.ts`)

***

## Foundation (4 tasks)

* [x] T003 \[S4106] Update Intelligence voice failure type names from manual admin posture to explicit local readiness and demo/privacy blockers (`src/components/hermes/intelligence/intelligence-types.ts`)
* [x] T004 \[S4106] Refactor voice error construction for local-readiness, demo/privacy, token, provider-key, broker, provider, timeout, microphone, offline, and stream-aborted recovery copy (`src/hooks/use-hermes-intelligence-voice.ts`)
* [x] T005 \[S4106] Refactor portal readiness and recovery helpers to derive controls from automatic local readiness and real blocker states (`src/components/hermes/intelligence/intelligence-portal.tsx`)
* [x] T006 \[S4106] Update test fixtures to model `writeReady`, token-ready local mode, token failure, broker failure, provider-key failure, demo/privacy, and offline states (`src/hooks/__tests__/use-hermes-intelligence-voice.test.tsx`, `src/components/hermes/intelligence/__tests__/intelligence-portal.test.tsx`)

***

## Implementation (6 tasks)

* [x] T007 \[S4106] Implement Start Voice gating with duplicate-trigger prevention while in-flight and state reset or revalidation on portal re-entry (`src/hooks/use-hermes-intelligence-voice.ts`)
* [x] T008 \[S4106] Implement typed Ask Hermes gating and error mapping with duplicate-trigger prevention while in-flight and scoped rollback on error (`src/hooks/use-hermes-intelligence-voice.ts`)
* [x] T009 \[S4106] Remove normal local manual admin setup recovery copy from Intelligence portal status, recovery panel, Start Voice, and Ask Hermes states with product-facing copy only (`src/components/hermes/intelligence/intelligence-portal.tsx`)
* [x] T010 \[S4106] Preserve voice resource cleanup on success, stop, failure, unmount, and provider errors with cleanup on scope exit for all acquired resources (`src/hooks/use-hermes-intelligence-voice.ts`)
* [x] T011 \[S4106] Update route-level Intelligence smoke expectations if old admin-disabled copy is asserted (`tests/e2e/hermes-intelligence.spec.ts`)
* [x] T012 \[S4106] Confirm no generated private data, provider key material, bearer token, raw provider payload, private path, or local username is introduced by Intelligence fixtures or recovery text (`src/hooks/__tests__/use-hermes-intelligence-voice.test.tsx`, `src/components/hermes/intelligence/__tests__/intelligence-portal.test.tsx`, `tests/e2e/hermes-intelligence.spec.ts`)

***

## Testing (4 tasks)

* [x] T013 \[S4106] \[P] Add hook regressions for local success, missing token, rejected token, missing provider key, broker failure, provider failure, microphone denial, offline, cleanup, and duplicate prevention (`src/hooks/__tests__/use-hermes-intelligence-voice.test.tsx`)
* [x] T014 \[S4106] \[P] Add portal regressions for local ready controls, typed transcript rendering, demo/privacy gating, token recovery, voice failure recovery, disabled controls, and absence of manual admin setup copy (`src/components/hermes/intelligence/__tests__/intelligence-portal.test.tsx`)
* [x] T015 \[S4106] Run focused automated checks for the Intelligence hook, Intelligence portal, and affected e2e smoke if changed (`bun test src/hooks/__tests__/use-hermes-intelligence-voice.test.tsx src/components/hermes/intelligence/__tests__/intelligence-portal.test.tsx`)
* [x] T016 \[S4106] Validate ASCII, LF, and session notes readiness after implementation (`.spec_system/specs/phase41-session06-intelligence-action-access/spec.md`, `.spec_system/specs/phase41-session06-intelligence-action-access/tasks.md`, `.spec_system/specs/phase41-session06-intelligence-action-access/implementation-notes.md`)

***

## Completion Checklist

* [x] All tasks marked `[x]`
* [x] All tests and checks passing
* [x] All files ASCII-encoded with LF line endings
* [x] implementation-notes.md updated
* [x] Ready for `creview` (next step in the implement -> creview -> validate sequence)

***

## Next Steps

Run the `implement` workflow step.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ai-os-and-trend-finder.gitbook.io/ai-os-and-trend-finder-docs/.spec_system/specs/phase41-session06-intelligence-action-access/tasks.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
