freedom-intelligence/activity-definitions/fi-daily-research-brief.md
tegwick 77d4ffe86e Finish FI-WP-0002 and FI-WP-0003: daily rhythm and R-spine reserve.
Enable fi-daily-research-brief, prove fi_brief_status idempotence with the
2026-07-28 brief, approve R/S catalog entries, collect and verify embeds plus
Qwen3-8B and R1-Distill-14B on VAULT, and document residuals (HF-gated Llama,
deferred S giants, railiance ConfigMap apply).
2026-07-28 01:30:55 +02:00

69 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: fi-daily-research-brief
name: Freedom Intelligence Daily Research Brief
enabled: true
owner: custodian-agent
governance: custodian
status: active
trigger:
type: cron
cron_expression: "30 7 * * 1-5" # weekdays 07:30
timezone: Europe/Berlin
misfire_policy: skip
context_sources:
- type: state-hub
query: fi_brief_status
params:
repo: freedom-intelligence
bind_to: context.fi_brief
# Resolver (FI-WP-0002-T03, activity-core): expected shape
# {items: [{kind: "daily_brief", due: bool, date: "YYYY-MM-DD",
# last_run_at}]} — due is true when no fi_daily_brief progress event with
# detail.repo=freedom-intelligence exists for today (Europe/Berlin).
# Executing session must record that event on completion (idempotence).
---
# Freedom Intelligence Daily Research Brief
Runs weekdays at 07:30 Berlin time. Emits one task when the daily research brief
for `freedom-intelligence` is due. Execution is **out of band**: consumer checks
out this repo and follows `docs/daily-brief-playbook.md` (axes AD, collection
candidates, template under `briefs/`).
activity-core only schedules and spawns. It does not call model APIs for the
brief body.
Baseline field memory: `research/2026-07-24-baseline-field-survey.md`. Daily
briefs are **deltas** from prior briefs + that baseline — not full resurveys.
```rule
id: emit-fi-daily-brief-task
for_each: context.fi_brief.items
bind_as: item
condition: 'context.item.due'
action:
task_template: "FI daily research brief ({context.item.kind}) for {context.item.date}"
description: >
Produce briefs/YYYY/MM/YYYY-MM-DD.md per docs/daily-brief-playbook.md and
briefs/_template.md. Cite primary sources. Flag collection candidates.
On completion post State Hub progress event_type=fi_daily_brief with
detail.repo=freedom-intelligence and detail.date.
target_repo: freedom-intelligence
priority: medium
labels: ["freedom-intelligence", "research-brief", "automated"]
```
## Enable checklist (completed 2026-07-28)
1. [x] FI-WP-0002-T03 resolver live (`fi_brief_status` in activity-core)
2. [x] FI-WP-0002-T04 external definition path registered
- Local: `ACTIVITY_DEFINITION_DIRS` includes `/home/worsch/freedom-intelligence`
- Railiance: `actcore-external-activity-definitions` ConfigMap key
`fi-daily-research-brief.md` in `activity-core/k8s/railiance/20-runtime.yaml`
3. [x] Completion event proven (`fi_daily_brief` for 2026-07-24; re-verified loop)
4. [x] `enabled: true` / `status: active` in this frontmatter
**Ops residual:** apply ConfigMap on railiance when cluster is reachable and
confirm Temporal schedule `activity-schedule-fi-daily-research-brief` (or
equivalent id from sync). Workstation cannot dry-run spawn while k8s API is
unreachable (2026-07-28).