# Owner declaration — fi-daily-research-brief (FI-WP-0005-T01) # # Answers rein-aharness d0b45acb / REINAH-WP-0003-T04: the owner-approved # replacement for the profile-absent `fi-research-brief` route. This file is # FI's authority over WHAT runs and under WHICH grant. It does not schedule # (activity-core), pick a rein/sandbox/model (glas-harness) or execute # (rein-aharness). Where another layer has not shipped the needed piece yet, # the field names the FI-WP-0005 task that tracks it. declaration_version: "1" definition_id: fi-daily-research-brief owner: freedom-intelligence approved_by: Bernd Worsch approved_at: "2026-09-22" status: proposed # -> active at FI-WP-0005-T08 cutover execution: shape: agent # operator decision 2026-09-22 (option B) harness_profile_ref: harness.fi-research-brief@1.0.0 # requested, FI-WP-0005-T05; not yet in the Glas catalog selection: harness_profile_ref only. No label or approach_hint routing, no fallback to the compatibility executor once cut over. inputs: # Read from the checked-out workspace at the run's base commit. brief_date: type: date tz: Europe/Berlin source: activity-core due item (context.item.date) repository_files: - docs/sources-allowlist.md - docs/daily-brief-playbook.md - briefs/_template.md - inventory/RESERVE-STATUS.md - research/2026-07-24-baseline-field-survey.md - research/2026-07-24-nas-strategic-collection-plan.md repository_globs: - inventory/catalog/*.yaml # authority for sizes, licenses, collection status prior_briefs: names: last 5 by date, excluding brief_date full_text: most recent 1 git_log: last 12 commits, oneline network: egress_hosts: docs/sources-egress.yaml # FI-WP-0005-T03; model route is profile-owned secrets: none. The run reads no FI credential. Model credentials stay with the profile's owner route (Glas / sand-boxer). outputs: artifact: briefs/{yyyy}/{mm}/{date}.md format: briefs/_template.md, axes A–D, collection-candidate section exactly_one_new_file: true must_not_modify_existing_files: true repository_grant: # Grant v1 fields (activity-core RepositoryGrant). v1 rejects publish=true, # so publication rides on grant v2 (FI-WP-0005-T04). version: "2" # requested; v1 shape below validated against activity-core b63131e+ allowed_paths: - briefs/** commit_count: {min: 1, max: 1} publication: remote: origin ref: main mode: fast-forward-only decision: docs/decisions/2026-09-22-brief-origin-publication.md commit_message: "FI daily research brief {date}" quality_rules: # Acceptance for canary comparison (FI-WP-0005-T07) and prompt contract. - inventory/catalog is the authority. Do not re-announce cataloged models as new, and never state sizes or licenses that contradict the catalog. - Every parameter count, size, price or benchmark claim cites a primary source that was fetched in this run. If it is not verifiable, say so instead of estimating. - Deltas only, measured against prior briefs and the baseline, not a resurvey. - Cover axes A–D, or state explicitly that an axis had no delta. - Rumor (social media, unsourced aggregators) is not reported as confirmed. - No credentials, customer data or model weights in the brief. model: # FI states requirements; the Glas profile pins provider/model/route. model_class: frontier required_capabilities: [tool_use, web_fetch_via_https_proxy, long_context] limits_hint: {timeout_seconds: 1800, max_turns: 60} constraints: - No Binky-named variables (BRIEF_DAILY_MODEL, MAIL_TRIAGE_MODEL) and no process-environment model selection. The profile version is the only selector. - The playbook rule "no Claude Code / Codex on railiance01" means no host-installed agent. A pinned agent executable inside the Glas sandbox is acceptable only if the profile owner confirms it is not a host installation. Operator to confirm (FI-WP-0005-T05). completion: event: fi_daily_brief required_detail: date: brief_date path: outputs.artifact pushed: true origin_sha: 40-hex commit on origin/main that contains the artifact harness_profile_ref: execution.harness_profile_ref due_resolution: published-artifact resolver (FI-WP-0005-T04). The day clears only if the artifact is on origin/main AND the event says pushed=true. In the interim, fi_brief_status (activity-core 289aff3), same semantics. on_failure: executor_run ok=false, no fi_daily_brief, day stays due. independent_audit: scripts/verify_brief_durability.py --require-date {date} rollback: pins: - glas profile version (previous harness.fi-research-brief@x.y.z) - this declaration and the definition, by git revision in this repo procedure: pin the previous profile version or revert the definition revision, then sync activity-core definitions. Until the legacy expiry (2026-12-31) the compatibility executor rein-aharness@11020e8 remains a manual one-shot recovery. There is no host timer (FI-WP-0005-T06). evidence_required: one exercised rollback at cutover (FI-WP-0005-T08)