freedom-intelligence/docs/daily-brief-playbook.md
tegwick a78187c33e Make the sensing loop durable and pin the reserve to Scaleway
The weekday brief only counts when the file is on origin/main. Hub
events without git objects are failures. The open-weight SoT moves
from the VAULT 850 GiB quota to a dedicated Scaleway bucket (One Zone
IA for R, Glacier for S) so V4-Flash and K3 are economically in-scope.

Catalogs the real DeepSeek-V4-Flash-0731 (MIT ~167 GiB MoE, not 12B)
and nominates Qwen3.8-27B. Bucket create remains FI-WP-0004-T08.

Assistant: grok
Assistant-Session: 01a09c6a-1cfc-75b1-a78d-c13eaf22241d
2026-09-13 22:45:43 +02:00

4.9 KiB
Raw Blame History

Daily research brief — playbook

Audience: operator or agent executing target_repo: freedom-intelligence
Template: briefs/_template.md
Baseline memory: research/2026-07-24-baseline-field-survey.md
Sources: docs/sources-allowlist.md


Purpose

Produce one curated brief per active day covering axes AD when there is signal. Briefs are deltas from the baseline survey and prior briefs — not full resurveys.


Idempotence

Rule Detail
One brief per date Path briefs/YYYY/MM/YYYY-MM-DD.md
Calendar Prefer Europe/Berlin date in front matter
Skip empty days Either omit file or write *No material delta.* in Headline deltas
Automation due bit Cleared only by State Hub event fi_daily_brief after the brief exists on origin/main
Hub without git A fi_daily_brief event with no matching file is a false completion. Run scripts/verify_brief_durability.py.

Manual procedure

  1. Orient

    • Read last 12 briefs if any; skim baseline § executive snapshot if first week
    • git pull on freedom-intelligence
  2. Scan (docs/sources-allowlist.md) — 3060 minutes cap

    • Capture only items that change capability, cost, access, or operability
  3. Draft

    mkdir -p briefs/$(date +%Y/%m)
    cp briefs/_template.md briefs/$(date +%Y/%m)/$(date +%Y-%m-%d).md
    
    • Fill front matter (status: final when done)
    • Leave empty sections as *(none)*
    • Cite primary URLs
  4. Collection candidates

    • Use inventory field names; set priority
    • Do not re-nominate a model already in inventory/catalog/
    • Do not invent parameter counts; cite the model card or mark unverified
    • If nominating: add or update inventory/catalog/{id}.yaml with status: candidate and collection.brief_refs
  5. Lab implications

    • Link open workplans (FI-WP-*) only when action is real
  6. Commit and push — brief + any catalog YAML must land on origin/main. A local-only commit does not complete the day.

  7. Completion evidence (required for activity-core rhythm)

    Post State Hub progress only after origin has the commit:

    event_type: fi_daily_brief
    author: <agent-or-operator>
    summary: "FI daily brief YYYY-MM-DD"
    detail:
      repo: freedom-intelligence
      date: "YYYY-MM-DD"
      path: "briefs/YYYY/MM/YYYY-MM-DD.md"
      collection_candidates: 0
      pushed: true
      origin_sha: "<full sha>"
    

    If the brief is written but push fails, post event_type: executor_run with ok: false so due stays true.

    Workstation API often http://127.0.0.1:8000; remote tunnel ports per Custodian docs. See docs/state-hub-delivery.md.


Automation consumer (activity-core design)

Organizer: activity-core (when / what / where) — not workstation cron.
Executor: rein-aharness on railiance01 (fi-research-brief).
Org playbook: activity-core/docs/recurring-automations-playbook.md.

When activity-core emits activity_task_spawn with target_repo: freedom-intelligence and labels including research-brief:

  1. Railiance host timer (or manual) runs
    rein-aharness fi-research-brief --target-repo ~/freedom-intelligence
  2. llm-connect drafts the brief; harness commits, pushes to origin, then posts fi_daily_brief with pushed=true
  3. Idempotency: one brief file per date on origin; resolver clears due only then. Local commit without push must not clear due.

Do not install Claude Code / Codex on railiance01 for this rhythm.

Piece Location
Definition activity-definitions/fi-daily-research-brief.md
Ops docs/recurrence-ops.md
Executor install scripts/railiance-rhythm/install-on-railiance.sh
Workplan FI-WP-0002 (finished)
Resolver fi_brief_status in activity-core

Ops: load this repos definitions

# Dev
export ACTIVITY_DEFINITION_DIRS=.../freedom-intelligence
make -C ~/activity-core sync-activity-definitions

# Production: ConfigMap actcore-external-activity-definitions
# then POST /admin/sync?definitions=true&schedules=true

Quality bar

Check Pass
Signal No filler paragraphs
Sources At least one primary URL per non-empty axis row
Honesty Benchmarks marked directional; prices “verify before budget”; sizes from the card
Collection License + real size/class; never re-announce a cataloged id as a new release
Axes C and D must be scanned; *(none)* is allowed only after a look
Length Prefer one screen to three; deep dives go under research/

First daily after baseline

The baseline survey (2026-07-24) already covers the field. The first daily should only list changes after that documents research window. If nothing moved, a short no-delta brief still completes the rhythm and posts fi_daily_brief.