> 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/phase37-session01-g8-runtime-fx/tasks.md).

# Task Checklist

**Session ID**: `phase37-session01-g8-runtime-fx` **Total Tasks**: 22 **Estimated Duration**: 3-4 hours **Created**: 2026-06-28

***

## Progress Summary

| Metric          | Value    |
| --------------- | -------- |
| Tasks Completed | 22 / 22  |
| Current Task    | Complete |
| Blockers        | 0        |

***

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

***

## Setup (3 tasks)

* [x] T001 \[S3701] Verify G8 source, alpha derivative, current crop manifest, and packer prerequisites before edits (`docs/ongoing-projects/generated/ai-rogue-visual-audio-assets/source/ai-rogue-combat-fog-accessibility-source.png`, `docs/ongoing-projects/generated/ai-rogue-visual-audio-assets/alpha/ai-rogue-combat-fog-accessibility-alpha.png`, `scripts/extensions/ai-rogue/pack-visual-assets.py`)
* [x] T002 \[S3701] Create the G8 implementation ledger with candidate review, manifest decisions, validation commands, and browser evidence sections (`.spec_system/specs/phase37-session01-g8-runtime-fx/implementation-notes.md`)
* [x] T003 \[S3701] Baseline existing gameplay/UI atlas frame counts and G8 available source-cell risks before modifying the manifest (`src/assets/ai-rogue/gameplay-atlas.json`, `src/assets/ai-rogue/ui-atlas.json`, `docs/ongoing-projects/generated/ai-rogue-visual-audio-assets/crop-manifest.json`)

***

## Foundation (5 tasks)

* [x] T004 \[S3701] Extend accepted and rejected G8 crop decisions for status pips, entity overlays, combat FX, fog/reveal pieces, high-contrast markers, and reduced-motion static frames with no-baked-text review (`docs/ongoing-projects/generated/ai-rogue-visual-audio-assets/crop-manifest.json`)
* [x] T005 \[S3701] Run the visual packer and refresh gameplay/UI atlas outputs plus the docs preview while preserving the two-atlas model (`scripts/extensions/ai-rogue/pack-visual-assets.py`, `src/assets/ai-rogue/gameplay-atlas.png`, `src/assets/ai-rogue/gameplay-atlas.json`, `src/assets/ai-rogue/ui-atlas.png`, `src/assets/ai-rogue/ui-atlas.json`, `docs/extensions/ai-rogue/generated/ai-rogue-production-atlas-preview.png`)
* [x] T006 \[S3701] Update typed G8 gameplay/UI frame-name unions, required frame groups, and atlas validation contracts with exhaustive frame handling (`src/extensions/ai-rogue/runtime/types-assets.ts`, `src/extensions/ai-rogue/runtime/assets.ts`)
* [x] T007 \[S3701] Add typed status visual mapping helpers for status pips, entity overlays, repair, cleanse, and fallback labels (`src/extensions/ai-rogue/runtime/status.ts`)
* [x] T008 \[S3701] Add render preference selection helpers for normal, high-contrast, and reduced-motion G8 frame choices without simulation mutation (`src/extensions/ai-rogue/runtime/render-model.ts`, `src/extensions/ai-rogue/runtime/renderer-layers.ts`)

***

## Implementation (9 tasks)

* [x] T009 \[S3701] Wire visible status and entity overlay projection for jammed, burning, shielded, overclocked, leaking, lagged, traced, corrupted, forked, and rooted states with types matching declared contracts; exhaustive enum handling (`src/extensions/ai-rogue/runtime/render-model.ts`, `src/extensions/ai-rogue/runtime/status.ts`)
* [x] T010 \[S3701] Wire HUD status pips and descriptor frames for active status/equipment readability with product-facing copy only and diagnostics confined to tests or notes (`src/extensions/ai-rogue/runtime/render-hud.ts`)
* [x] T011 \[S3701] Wire combat feedback frame selection for Strike, Surge, Trace Lance, Phase Step, shield block/break, repair, cleanse, crash, and objective feedback without changing event semantics (`src/extensions/ai-rogue/runtime/render-model.ts`, `src/extensions/ai-rogue/runtime/effects.ts`)
* [x] T012 \[S3701] Wire fog, explored-memory, reveal shimmer, and high-contrast marker projection with deterministic ordering and fallback behavior (`src/extensions/ai-rogue/runtime/render-model.ts`, `src/extensions/ai-rogue/runtime/renderer-layers.ts`)
* [x] T013 \[S3701] Update transient effect routing for G8 impact sprites and reduced-motion static variants with cleanup on scope exit for all acquired resources (`src/extensions/ai-rogue/runtime/effects.ts`, `src/extensions/ai-rogue/runtime/effects-transient.ts`)
* [x] T014 \[S3701] Preserve simulation ownership by keeping G8 visual choices derived from existing snapshots, statuses, preferences, and events only (`src/extensions/ai-rogue/runtime/types-simulation.ts`, `src/extensions/ai-rogue/runtime/simulation.ts`)
* [x] T015 \[S3701] \[P] Update focused atlas contract tests for required G8 frames, atlas counts, and TexturePacker metadata (`src/extensions/ai-rogue/runtime/__tests__/assets.test.ts`)
* [x] T016 \[S3701] \[P] Update focused render/status tests for G8 status overlays, combat FX, fog/reveal, high-contrast, reduced-motion, and deterministic sprite ordering (`src/extensions/ai-rogue/runtime/__tests__/render-model.test.ts`, `src/extensions/ai-rogue/runtime/__tests__/status-expanded.test.ts`)
* [x] T017 \[S3701] Update visual asset documentation with G8 accepted/rejected decisions, atlas counts, validation evidence, and remaining caveats (`docs/extensions/ai-rogue/visual-assets.md`)

***

## Testing (5 tasks)

* [x] T018 \[S3701] Run the packer, typecheck, and asset-size validation and record command results (`scripts/extensions/ai-rogue/pack-visual-assets.py`, `bun run typecheck`, `scripts/check-asset-sizes.sh`)
* [x] T019 \[S3701] Run focused Vitest suites for assets, render-model, status-expanded, effects, and runtime behavior touched by G8 changes (`src/extensions/ai-rogue/runtime/__tests__/assets.test.ts`, `src/extensions/ai-rogue/runtime/__tests__/render-model.test.ts`, `src/extensions/ai-rogue/runtime/__tests__/status-expanded.test.ts`)
* [x] T020 \[S3701] Run desktop AI Rogue browser proof for visible G8 runtime FX, high-contrast, reduced-motion, and product-facing copy only (`tests/e2e/ai-rogue-runtime.spec.ts`)
* [x] T021 \[S3701] Run mobile AI Rogue browser proof for visible G8 runtime FX, compact input, no horizontal overflow, and responsive readability (`tests/e2e/ai-rogue-mobile.spec.ts`)
* [x] T022 \[S3701] Validate ASCII, LF line endings, diff whitespace, and completion notes before handoff (`git diff --check`, `.spec_system/specs/phase37-session01-g8-runtime-fx/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 `implement` to start 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/archive/sessions/phase37-session01-g8-runtime-fx/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.
