Fill out Prioritized Task List and Deployment Plan
This commit is contained in:
@@ -1,29 +1,42 @@
|
||||
# Prioritized Task List
|
||||
# Prioritized Task List — Athena MVP
|
||||
|
||||
**Status**: Stub
|
||||
**Branch**: MVP-milestone
|
||||
**Last Updated**: 2026-07-08
|
||||
Tied to the personas and requirements in `MVP-PRD.md`. Ordered by phase; within each phase, roughly in the order they should be tackled.
|
||||
|
||||
## Phase 1: Get Running Daily (Highest Priority)
|
||||
|
||||
- [ ]
|
||||
## Phase 1: Get Running Daily
|
||||
- [ ] Verify the cron entry (`oracle-pipeline.sh`) fires reliably at 13:00 UTC under Hermes
|
||||
- [ ] Confirm `pipeline.py` runs the full ingest → store → summarize → score cycle without manual intervention
|
||||
- [ ] Add a lock/guard so a slow run can't overlap with the next day's cron trigger
|
||||
- [ ] Validate all 6 adapters (arxiv, github, huggingface, hackernews, reddit, rss_feeds) independently — one adapter failing shouldn't kill the whole run
|
||||
- [ ] Confirm environment-only secrets (`GITHUB_TOKEN`, `HUGGINGFACE_TOKEN`) resolve correctly in the cron context (cron environments are often stripped down compared to an interactive shell)
|
||||
|
||||
## Phase 2: Core Functionality
|
||||
|
||||
- [ ]
|
||||
- [ ] Confirm `schema.sql` initializes `oracle.db` cleanly and stays idempotent across repeated runs
|
||||
- [ ] Verify `theme_scan.py`'s 4-theme tagging (tool-call, context, compute, trust) against a few real days of data
|
||||
- [ ] Confirm the falsification counter (new arrivals per cycle) is genuinely idempotent — re-running against unchanged data must yield 0 new
|
||||
- [ ] Wire `summarize.py` to degrade gracefully when the Ollama endpoint (`llama3.2:1b`) isn't reachable — ingestion, scoring, and theme-scan must keep running without it
|
||||
- [ ] Confirm `archive.py`'s cold-storage rotation doesn't delete data still needed inside the 7-day falsification window
|
||||
|
||||
## Phase 3: Observability & Reliability
|
||||
|
||||
- [ ]
|
||||
- [ ] Add structured logging per pipeline stage (ingest, store, summarize, score) with pass/fail per adapter
|
||||
- [ ] Surface theme-scan counts (new arrivals per theme per cycle) somewhere inspectable, not just buried in log files
|
||||
- [ ] Add a daily heartbeat/health check so a silent failure (e.g. cron didn't fire at all) is detectable rather than just showing up as missing data later
|
||||
- [ ] Decide and implement retry/backoff behavior for adapters that hit rate limits (especially GitHub without a token: 60/hr)
|
||||
|
||||
## Phase 4: Human Consumption Layer
|
||||
|
||||
- [ ]
|
||||
- [ ] Extend `query.py` to support Bob's cross-source convergence lookups and Alice's curated-research pulls
|
||||
- [ ] Define the output format(s) for a "trend confirmed" vs. "trend killed" verdict (per the 7-day dead-thesis rule)
|
||||
- [ ] Decide how Alice's content pipeline actually consumes Athena's output — file drop, API, direct DB read — this is currently undefined
|
||||
|
||||
## Phase 5: Validation & UAT
|
||||
- [ ] Run the pipeline unattended for at least one full 7-day falsification window
|
||||
- [ ] Manually verify at least one theme through to a real "confirmed" or "killed" verdict
|
||||
- [ ] Walk Bob's and Alice's user stories from `MVP-PRD.md` end-to-end against real output, not synthetic data
|
||||
- [ ] Confirm memory stays under the 150MB cap under real daily load, not just in a light dev test
|
||||
|
||||
- [ ]
|
||||
## Phase 6: Hermes Integration
|
||||
- [ ] Confirm `oracle-pipeline.sh`'s contract matches what Hermes cron expects (exit codes, output location)
|
||||
- [ ] Decide how Hermes is notified on pipeline failure vs. success — not yet specified
|
||||
- [ ] Confirm the non-root execution requirement is actually satisfied inside the Hermes-invoked environment, not just in local Docker testing
|
||||
|
||||
## Optional: Hermes Integration
|
||||
|
||||
- [ ]
|
||||
---
|
||||
*Draft prepared by Claude from the MVP-PRD, Personas doc, and README/whitepaper on `main`. Open items flagged "not yet specified" need a decision before Phase 4–6 can be considered done.*
|
||||
|
||||
Reference in New Issue
Block a user