freedom-intelligence/activity-definitions/fi-daily-research-brief.md
tegwick 46cfcd7a51 Align FI recurrence with activity-core + rein-aharness (drop workstation cron).
Document the three-layer model, add railiance-rhythm executor install, and
point playbooks at rein-aharness fi-research-brief instead of local crontab.
2026-08-03 17:53:07 +02:00

66 lines
2.5 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
1. [x] Resolver `fi_brief_status` in activity-core
2. [x] ConfigMap projection + Temporal schedule (weekdays 07:30 Europe/Berlin)
3. [x] Completion event `fi_daily_brief` proven
4. [x] `enabled: true` / `status: active`
5. [x] Executor: `rein-aharness fi-research-brief` + `scripts/railiance-rhythm/`
(install on railiance01; not workstation cron)
Layers: activity-core (when/what/where) → rein-aharness (execute) → this repo.
See `docs/recurrence-ops.md` and `activity-core/docs/recurring-automations-playbook.md`.