2026-07-24 00:15:27 +02:00
|
|
|
|
---
|
|
|
|
|
|
id: fi-daily-research-brief
|
|
|
|
|
|
name: Freedom Intelligence Daily Research Brief
|
2026-07-28 01:30:55 +02:00
|
|
|
|
enabled: true
|
2026-07-24 00:15:27 +02:00
|
|
|
|
owner: custodian-agent
|
|
|
|
|
|
governance: custodian
|
2026-07-28 01:30:55 +02:00
|
|
|
|
status: active
|
2026-07-24 00:15:27 +02:00
|
|
|
|
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 A–D, 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"]
|
|
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-28 01:30:55 +02:00
|
|
|
|
## Enable checklist (completed 2026-07-28)
|
2026-07-24 00:15:27 +02:00
|
|
|
|
|
2026-07-28 01:30:55 +02:00
|
|
|
|
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).
|