> 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/archive/sessions/phase27-session09-competitor-lens-and-creator-angle-pack/tasks.md).

# Task Checklist

**Session ID**: `phase27-session09-competitor-lens-and-creator-angle-pack` **Total Tasks**: 24 **Estimated Duration**: 3-4 hours **Created**: 2026-06-13

***

## Legend

* `[x]` = Completed
* `[ ]` = Pending
* `[P]` = Parallelizable (can run with other \[P] tasks)
* `[SNNMM]` = Session reference (NN=phase number, MM=session number)
* `TNNN` = Task ID

***

## Progress Summary

| Category       | Total  | Done   | Remaining |
| -------------- | ------ | ------ | --------- |
| Setup          | 3      | 3      | 0         |
| Foundation     | 6      | 6      | 0         |
| Implementation | 11     | 11     | 0         |
| Testing        | 4      | 4      | 0         |
| **Total**      | **24** | **24** | **0**     |

***

## Setup (3 tasks)

Initial configuration and environment preparation.

* [x] T001 \[S2709] Verify Session 09 prerequisites and source compliance boundary (`.spec_system/PRD/phase_27/session_09_competitor_lens_and_creator_angle_pack.md`)
* [x] T002 \[S2709] Confirm current focused test commands and changed-file test targets (`package.json`)
* [x] T003 \[S2709] Create implementation-notes scaffold for session progress tracking (`.spec_system/specs/phase27-session09-competitor-lens-and-creator-angle-pack/implementation-notes.md`)

***

## Foundation (6 tasks)

Core structures and base implementations.

* [x] T004 \[S2709] \[P] Extend Trend Finder schema with lens competitors, evidence competitor metadata, and angle-pack topic fields using additive defaults (`src/extensions/trend-finder/schema.ts`)
* [x] T005 \[S2709] \[P] Extend browser Creator Lens normalization, draft persistence, keying, and save payloads for bounded competitor names with state reset on re-entry (`src/extensions/trend-finder/creator-lens-storage.ts`)
* [x] T006 \[S2709] \[P] Extend saved Creator Lens config validation for bounded competitors with strict unknown-field rejection and explicit error mapping (`scripts/lib/ai-runtime/creator-lens-config.ts`)
* [x] T007 \[S2709] \[P] Create competitor matching helper for normalized public YouTube channel-title entities with deterministic ordering (`scripts/extensions/trend-finder/competitor-matching.ts`)
* [x] T008 \[S2709] Extend analyst prompt, schema hint, output schema, and validation for angle-pack fields with types matching declared contract and exhaustive field handling (`scripts/lib/ai-runtime/trend-analyst.ts`)
* [x] T009 \[S2709] Extend fallback topic composition for contrarian angle, plain explainer, and suggested title with deterministic evidence-derived text (`scripts/extensions/trend-finder/topics.ts`)

***

## Implementation (11 tasks)

Main feature implementation.

* [x] T010 \[S2709] Wire competitor matching into Apify normalization and collector evidence projection with schema-validated input and explicit error mapping (`scripts/extensions/trend-finder/sources/apify-normalizers.ts`)
* [x] T011 \[S2709] Apply competitor matches and angle-pack fallback through collector scoring, warnings, and browser payload assembly with timeout-safe failure-path handling (`scripts/extensions/trend-finder/collector.ts`)
* [x] T012 \[S2709] Extend Creator Lens draft hook and panel editor for competitor lists with duplicate-trigger prevention while save is in-flight (`src/extensions/trend-finder/hooks/use-creator-lens-draft.ts`)
* [x] T013 \[S2709] Render accessible competitor-list controls and validation feedback in the Creator Lens panel with focus management and input support (`src/extensions/trend-finder/components/creator-lens-panel.tsx`)
* [x] T014 \[S2709] Project competitor chips and angle-pack copy through Trend Finder view models with bounded text and deterministic ordering (`src/extensions/trend-finder/view-model.ts`)
* [x] T015 \[S2709] Render competitor evidence chips in evidence link rows with platform-appropriate accessibility labels and input support (`src/extensions/trend-finder/components/evidence-links.tsx`)
* [x] T016 \[S2709] Render competitor evidence flags in Workbench expanded evidence rows with deterministic ordering (`src/extensions/trend-finder/components/signal-workbench-table.tsx`)
* [x] T017 \[S2709] Render copy-ready angle block on trend cards with state reset or revalidation on re-entry (`src/extensions/trend-finder/components/trend-card.tsx`)
* [x] T018 \[S2709] Render angle-pack copy on dashboard Brief opportunity cards with explicit empty states (`src/extensions/trend-finder/views/brief-view.tsx`)
* [x] T019 \[S2709] Project angle-pack fields and competitor-safe evidence chips into static Brief rows with sanitized output boundaries (`scripts/extensions/trend-finder/static-brief-export.ts`)
* [x] T020 \[S2709] Render static Brief angle blocks and competitor chips with HTML escaping and copy-safe labels (`scripts/extensions/trend-finder/static-brief-renderer.ts`)

***

## Testing (4 tasks)

Verification and quality assurance.

* [x] T021 \[S2709] \[P] Add focused tests for lens storage, saved config, bridge validation, and competitor matching (`scripts/extensions/trend-finder/__tests__/competitor-matching.test.ts`)
* [x] T022 \[S2709] \[P] Add focused tests for analyst angle validation, collector fallback, static Brief projection, and legacy payload parsing (`scripts/lib/ai-runtime/__tests__/trend-analyst.test.ts`)
* [x] T023 \[S2709] \[P] Add component/view-model tests for Creator Lens editor, evidence chips, Workbench rows, TrendCard, and Brief angle blocks (`src/extensions/trend-finder/components/__tests__/signal-workbench-view.test.tsx`)
* [x] T024 \[S2709] Run focused validation, typechecks, ASCII check, and record results in implementation notes (`.spec_system/specs/phase27-session09-competitor-lens-and-creator-angle-pack/implementation-notes.md`)

***

## Completion Checklist

Before marking session complete:

* [x] All tasks marked `[x]`
* [x] All tests passing
* [x] All files ASCII-encoded
* [x] implementation-notes.md updated
* [x] Ready for the validate workflow step

***

## Next Steps

Run the implement workflow step to begin AI-led implementation.


---

# 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/archive/sessions/phase27-session09-competitor-lens-and-creator-angle-pack/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.
