> 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/phase28-session04-topic-noise-gate-and-visibility-bands/tasks.md).

# Task Checklist

**Session ID**: `phase28-session04-topic-noise-gate-and-visibility-bands` **Total Tasks**: 23 **Estimated Duration**: 3-4 hours **Created**: 2026-06-14

***

## 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     | 5      | 5      | 0         |
| Implementation | 10     | 10     | 0         |
| Testing        | 5      | 5      | 0         |
| **Total**      | **23** | **23** | **0**     |

***

## Setup (3 tasks)

Initial verification and implementation notes.

* [x] T001 \[S2804] Verify prerequisite sessions, source mapping, and target-file paths before edits (`.spec_system/PRD/phase_28/session_04_topic_noise_gate_and_visibility_bands.md`)
* [x] T002 \[S2804] Create implementation-notes shell for scope decisions, validation commands, and deferred items (`.spec_system/specs/phase28-session04-topic-noise-gate-and-visibility-bands/implementation-notes.md`)
* [x] T003 \[S2804] Compare Trends-Finderz topic-quality and visibility constants to current Trend Finder contracts without adding dependencies (`EXAMPLES/trends-finderz/lib/trends/topic-quality.ts`)

***

## Foundation (5 tasks)

Core contracts and pure deterministic helpers.

* [x] T004 \[S2804] Define bounded topic-quality, noise-risk, gate-status, visibility-band, and reason-code schema contracts with additive legacy defaults (`src/extensions/trend-finder/schema.ts`)
* [x] T005 \[S2804] Create deterministic topic-quality helper with text normalization, generic/filler term penalties, pattern penalties, and source-confirmation scoring with schema-validated input and explicit error mapping (`scripts/lib/ai-runtime/topic-quality.ts`)
* [x] T006 \[S2804] Add visibility-band derivation, machine-readable reason codes, bounded noise downrank, and early-hidden-gem rescue with exhaustive enum handling (`scripts/lib/ai-runtime/topic-quality.ts`)
* [x] T007 \[S2804] \[P] Extend risk-flag derivation for generic-or-vague and high-noise topic flags with schema-validated input and explicit error mapping (`scripts/lib/ai-runtime/risk-flags.ts`)
* [x] T008 \[S2804] Add topic-quality, visibility-band, reason-label, and suppressed-summary view-model projections with bounded result counts and deterministic ordering (`src/extensions/trend-finder/view-model.ts`)

***

## Implementation (10 tasks)

Runtime wiring and user-facing surfaces.

* [x] T009 \[S2804] Wire topic-quality helper into scored topic construction with bounded downrank, fallback-mode behavior, and no raw source leaks (`scripts/lib/ai-runtime/scoring.ts`)
* [x] T010 \[S2804] Feed topic-quality outputs into risk-flag construction and preserve hidden-gem status when rescue rules apply (`scripts/lib/ai-runtime/scoring.ts`)
* [x] T011 \[S2804] Persist parsed topic-quality and visibility fields through payload parsing with bounded reason arrays and legacy-safe defaults (`src/extensions/trend-finder/schema.ts`)
* [x] T012 \[S2804] Render noise-risk, quality-gate, and visibility chips on Trend cards with platform-appropriate accessibility labels and input support (`src/extensions/trend-finder/components/trend-card.tsx`)
* [x] T013 \[S2804] \[P] Create suppressed-noise summary component with bounded counts, top reason codes, empty state, and accessible labels (`src/extensions/trend-finder/components/suppressed-noise-summary.tsx`)
* [x] T014 \[S2804] Update Trends view to default-hide suppressed rows behind an explicit show/hide affordance with empty, error, offline, and manual-visibility states preserved (`src/extensions/trend-finder/views/trends-view.tsx`)
* [x] T015 \[S2804] Add Signal Workbench row fields, facets, filters, and sort keys for visibility band and noise risk with validated filters and deterministic ordering (`src/extensions/trend-finder/signal-workbench-model.ts`)
* [x] T016 \[S2804] Add Signal Workbench visibility/noise controls with accessible labels, focus management, and keyboard input support (`src/extensions/trend-finder/components/signal-workbench-controls.tsx`)
* [x] T017 \[S2804] Update Trend Finder fixtures with representative quality, visibility, reason-code, and rescued-hidden-gem examples while preserving legacy parse coverage (`src/extensions/trend-finder/fixtures.ts`)
* [x] T018 \[S2804] Document shipped topic-quality gate, visibility bands, reason codes, and display-only suppression without planned-feature language (`docs/extensions/trend-finder-scoring.md`)

***

## Testing (5 tasks)

Verification and quality assurance.

* [x] T019 \[S2804] \[P] Write unit tests for topic quality, noise risk, gate status, visibility reasons, and hidden-gem rescue (`scripts/lib/ai-runtime/__tests__/topic-quality.test.ts`)
* [x] T020 \[S2804] \[P] Add scoring integration tests for noise downrank, fallback-mode quality bounds, risk flags, and payload retention (`scripts/lib/ai-runtime/__tests__/scoring.test.ts`)
* [x] T021 \[S2804] \[P] Add schema and view-model tests for legacy defaults, reason labels, and suppressed summary projection (`src/extensions/trend-finder/__tests__/view-model.test.ts`)
* [x] T022 \[S2804] \[P] Add Signal Workbench model tests for visibility/noise filters, deterministic ordering, and rescued hidden-gem rows (`src/extensions/trend-finder/__tests__/signal-workbench-model.test.ts`)
* [x] T023 \[S2804] Run focused tests plus ASCII validation and record results with any residual risks (`.spec_system/specs/phase28-session04-topic-noise-gate-and-visibility-bands/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/phase28-session04-topic-noise-gate-and-visibility-bands/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.
