> 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/phases/phase_15/session_08_documentation_compatibility_validation.md).

# Session 08: Documentation Compatibility And Validation Sweep

**Session ID**: `phase15-session08-documentation-compatibility-validation` **Status**: Complete **Estimated Tasks**: \~12 **Estimated Duration**: 2-3 hours

***

## Objective

Synchronize documentation, compatibility expectations, command hints, and final validation gates for the scheduler config and aggregate split.

This session is also the catch-all for any valuable details from the folded ongoing-project plan that cannot be added to frozen Session 01. Do not reopen Session 01; if the engineer's implementation missed a config-contract detail, fix or document it here during final validation.

***

## Scope

### In Scope (MVP)

* Scheduler and aggregate runbook updates
* `.env.local.example` and data docs updates
* Command hints and status copy verification
* Compatibility proof for `bun run aggregate`
* Focused tests, script typecheck, and diff hygiene checks
* Phase closeout notes and any explicit Session 07 deferral
* Final verification that all folded source-plan details exist in phase 15 PRD or session stubs

### Out of Scope

* New scheduler features beyond the phase scope
* SQLite observation store implementation
* Public source expansion or AI planner work

***

## Detailed Tasks

1. Synchronize scheduler and aggregate runbooks.
2. Synchronize `.env.local.example` and data docs.
3. Verify command hints and status copy for `aggregate`, `agent-aggregate`, `trend-finder`, and `dream`.
4. Prove `bun run aggregate` remains a compatibility command with unchanged public behavior.
5. Verify scoped scheduler jobs preserve the other live-data branch during writes.
6. Verify scheduler status distinguishes registry defaults, local timer intent, latest run state, and generated-data freshness.
7. Verify the cadence strategy is documented: `agent-aggregate` every 4 hours, `trend-finder` daily, and `dream` daily at 07:00.
8. Verify `data/` remains the place for scheduler settings and `.env.local` remains the place for secrets, runtime provider settings, and process-level activation such as `AI_OS_DREAM_ENABLED=true`.
9. Audit the frozen Session 01 deliverables after they land and carry forward any remaining gaps from the original config plan: `data/ai-os.scheduler.example.json`, private `data/ai-os.scheduler.json` ignore coverage, `data/README_data.md`, `scripts/lib/scheduler/config.ts`, `version: 1` contracts, registry job ID validation, cadence candidate validation, strict Dream `HH:MM` validation, unsafe field rejection, missing/loaded/invalid read states, fallback to registry defaults, sanitized invalid-config warnings, `buildSchedulerOperatorStatus` configured cadence projection, `enabledByDefault` vs `timerEnabled`, focused parser/status tests, runbook updates, and `.env.local.example` split documentation.
10. Confirm secrets, raw source payloads, prompts, auth paths, private machine paths, command bodies, Apify tokens, provider auth paths, Actor inputs, and source dumps are not exposed in status output, logs intended for summaries, browser metadata, or committed templates.
11. Record Session 07 completion or explicit deferral in the phase record.
12. Confirm the former ongoing-project plan can be deleted without losing implementation details, decisions, risks, or validation gates.

***

## Validation Checklist

* [ ] `bun run test -- scripts/lib/__tests__/scheduler-registry.test.ts`
* [ ] `bun run test -- scripts/lib/__tests__/scheduler-operator-status.test.ts`
* [ ] `bun run test -- scripts/lib/__tests__/scheduler-status-cli.test.ts`
* [ ] `bun run test -- scripts/lib/__tests__/scheduler-runner.test.ts`
* [ ] Scheduler config parser tests
* [ ] Live-data merge writer tests
* [ ] Scoped aggregate handler tests
* [ ] Trend Finder scheduler handler tests
* [ ] `bun run typecheck:scripts`
* [ ] `git diff --check`

***

## Prerequisites

* [ ] Session 06 complete.
* [ ] Session 07 complete or explicitly deferred in the phase record.

***

## Deliverables

1. Synchronized docs and examples.
2. Final validation record.
3. Updated phase tracker and compatibility notes.

***

## Handoff Gate

* [ ] Runbooks, `.env.local.example`, data docs, command hints, and validation checklist are synchronized.
* [ ] Focused tests, `bun run typecheck:scripts`, and `git diff --check` pass.
* [ ] The folded ongoing-project plan has no remaining unique requirements.

***

## Success Criteria

* [ ] Runbooks, env examples, data docs, and command hints are aligned.
* [ ] Focused tests and `bun run typecheck:scripts` pass.
* [ ] `git diff --check` passes.
* [ ] Phase 15 is ready for validation and updateprd.


---

# 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/phases/phase_15/session_08_documentation_compatibility_validation.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.
