Skip to content

Add grouped Live Feed to the Scientist dashboard - #84

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/scientist-live-feed
Oct 13, 2026
Merged

Jammy2211 merged 1 commit into
mainfrom
feature/scientist-live-feed

Conversation

@Jammy2211

Copy link
Copy Markdown
Contributor

Summary

Add Live Feed between Projects and Dashboards on canonical PyAutoScientist. It shows five compact task rows with board links, recorded stage and time; explicitly linked issue/PR activity shares a row, history expands underneath, and new snapshots wait behind Show updates while someone is reading. Independent MyScientist/Embryo previews are unchanged.

Scripts Changed

  • scripts/activity_feed.py: public-repository verification, bounded issue/comment/PR collection, normalized derived history, explicit grouping, coverage and static snapshot.
  • scripts/live_feed.js: one-minute foreground refresh, stable reading controls, Show more, safe links and last-good fallback.
  • scripts/organism_board.py: canonical-only placement and no-JavaScript publication snapshot.
  • .github/workflows/organism_board.yml: five-minute best-effort collection, a two-minute request-time budget, and a derived cache branch; existing Pages publication serves activity.json.
  • Renderer/collector/browser tests and reporting documentation.

Coverage and operational limits

Recorded public development activity only; no scientific run execution or interpretation. No raw comments, prompts or credentials are published. A source cursor advances only on complete collection; partial batches retain verified events and resume without repeated PR-detail requests. Request budgets rotate repositories and report gaps. The 5-minute schedule is an attempt interval, not a per-repository delivery guarantee. Initial backfill is seven days; retained snapshot history is bounded to 30 days, 1500 events/source, 200 tasks and 20 displayed events/task.

The workflow uses existing PAT_PYAUTOLABS when available (180 requests/cycle), otherwise github.token (60). Its dedicated scientist-activity-cache branch stores normalized derived data only; no history rewrite. Nothing has been deployed or scheduled from this feature branch.

Validation

  • Full Python suite: 162 passed before the final board-mapping regression was added; final targeted collector/renderer/instance suite: 49 passed, including that regression.
  • Existing overview JavaScript tests: 7 passed.
  • Real Chromium: six width/theme cases, expanded history, deferred updates, preserved disclosures, Show more, unsafe-response fallback, no horizontal overflow or browser errors; no-JavaScript snapshot checked.
  • Read-only live API pilot: PyAutoScientist, 37 grouped tasks, complete source coverage in 37 requests. This is not a claim of full-organism production coverage.
  • Workflow YAML parsed, JS syntax and diff checks passed.
  • Heart readiness STALE solely release validation incomplete: no rehearsal for current source; no red/yellow readiness reasons. Development shipping permitted.

Tier: judge — human /prm. After merge, publish via the Scientist Dashboard workflow and verify live feed and source coverage; no MyScientist rollout in this PR.

Closes #83.

@Jammy2211
Jammy2211 merged commit 094ad00 into main Oct 13, 2026
1 check passed
@Jammy2211
Jammy2211 deleted the feature/scientist-live-feed branch October 13, 2026 21:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: grouped Scientist live activity feed

1 participant