freedom-intelligence/docs/state-hub-delivery.md
tegwick 8bd2e5ff92 Verify brief publication against live origin and record historical gaps
Assistant: codex
Assistant-Model: gpt-6-astra
Assistant-Session: 01a09cbd-43c1-79f3-809e-1ee97b40b64d
2026-09-14 00:37:51 +02:00

2.8 KiB
Raw Blame History

State Hub / operator delivery

Status: contract defined; optional distribution not fully wired
Related: docs/daily-brief-playbook.md, workplans/FI-WP-0002-activity-core-daily-research.md

Repo registration

Field Value
Hub domain agents
Repo slug freedom-intelligence
Classification .repo-classification.yaml (primary agents, secondary infotech)
Sync statehub fix-consistency --repo freedom-intelligence after workplan edits

Workplans live in git; the hub indexes them after registration + fix-consistency. Do not create workplans via hub create_workplan APIs.


Required: completion evidence for daily rhythm

Every completed brief day (including “no material delta”) should post after the file is on origin/main:

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>"

This is the idempotence signal for activity-core context query fi_brief_status (FI-WP-0002-T03): due=false when an event exists for today (Europe/Berlin) with detail.repo=freedom-intelligence and detail.pushed=true. A hub event without a git file is a false completion (scripts/verify_brief_durability.py).

Inbound automation uses activity_task_spawn from activity-core (state-hub sink). See activity-core/docs/task-emission-consumer-contract.md.


Optional: operator visibility

Channel Use
Progress event (above) Minimum — always for automation health
Inbox message Only when high-priority collection candidates appear
Wiki / Nextcloud Optional human mirror later

Non-goals

  • Freedom Intelligence is not required to be a full State Hub domain yet
  • Do not use ISSUE_SINK_TYPE=rest / Forgejo issues for this rhythm
  • Do not register workplans by hand in the hub (fix-consistency after commit)

Fallback without MCP

HTTP against State Hub API (workstation http://127.0.0.1:8000 or remote tunnel ports). Check health before declaring hub down.


Pin log

Date Change
2026-07-23 Stub created
2026-07-24 fi_daily_brief contract + activity-core linkage documented

Durability audit and historical corrections

See the Git-backed audit contract for live-origin verification, paginated Hub reads, and append-only correction records. --allow-reconciled explicitly acknowledges the five missing September 711 briefs; it never counts them as successful. Use --require-date YYYY-MM-DD to prove a scheduled day has a valid published completion. An unavailable Hub/remote fails the audit.