InfraFabric productization pack v9

Rendered from repo-local docs/240-infrafabric-productization-pack-v9-singlefile-2026-02-01T151451Z.md. This page is presentation only; treat the document’s own black/white section as authoritative.

InfraFabric Productization Pack (single-file) (v9)

Project homepage
https://infrafabric.io

LLM review access (task board, session ledger, registry)
https://infrafabric.io/llm/

Turn a dossier into review surfaces: boring, verifiable, and hard to misread.

Constitutional for whom? Constitutional AI makes principles legible at training time; the follow-up is runtime. If a runtime decision can’t be audited by the people it affects, the constitution is for the architects, not the subjects. This pack turns that question into review surfaces: receipts, contracts, and black/white boundaries.

Implementation disclosure: the author does not hand-write production code; LLMs implement under supervision to enforce architectural constraints (scalable oversight).

Document: 240-infrafabric-productization-pack-v9-singlefile-2026-02-01T151451Z

Generated (UTC): 2026-02-01T15:14:51Z

Author: Danny Stocker (InfraFabric)

Status: ADDENDUM (single-file productization pack; designed to be readable with zero dossier context)

Black/white boundary:

  • Receipts (when present) can prove the bytes you downloaded match a public hash (and signatures only when present and verifiable).
  • Receipts do not prove factual correctness, safety, compliance, or intent.

This pack is intentionally “boring and testable”: it distills the original research into reviewable surfaces (registry-driven names/status, deterministic scripts, stable URLs, schema contracts). It does not claim production deployments beyond what is already publicly accessible.


Patches (v8 → v9) (THIS UPDATE)

Patches:

  • Added: regulatory doctrine spine (docs/239-regulatory-design-patterns-infrafabric.md) with explicit VERIFIED vs NORMATIVE vs HYPOTHESIS labeling and an actor model (subjects/operators/payers/frontier labs).
  • Updated: early reading order now points to the regulatory doctrine before deeper module dives.
  • Unchanged (explicit): registry-derived status cut (shipped/preview/roadmap) and the “Proof in 60 seconds” receipt lane.
  • Known gaps (deferred): publishing + pointer wiring to /llm/registry/website is handled in follow-up rollout tasks (see IF-932).

Doctrine (read before the rest):

  • docs/239-regulatory-design-patterns-infrafabric.md

Verify (public, GET-only):

curl -fsS https://infrafabric.io/llm/conformance.json.txt | python3 -m json.tool > /dev/null
curl -fsS https://infrafabric.io/llm/if.registry.json.txt | python3 -m json.tool > /dev/null

Files touched (IF-931):

  • docs/239-regulatory-design-patterns-infrafabric.md
  • docs/240-infrafabric-productization-pack-v9-singlefile-2026-02-01T151451Z.md
  • docs/241-infrafabric-system-explainer-v3-2026-02-01T151451Z.html
  • docs/242-infrafabric-regulatory-spine-addendum-03b-v1.0-2026-02-01T151451Z.md
  • /root/tmp/if-931-openclaw-evidence/** (local evidence capture; public-safe bytes)

Files not touched (explicit):

  • docs/236-infrafabric-productization-pack-v8-singlefile-2026-02-01T125116Z.md (frozen)
  • docs/237-infrafabric-system-explainer-v2-2026-02-01T125116Z.html (frozen)
  • Anthropic dossier uncut bytes (published separately; not modified in-place)

Reader paths (pick one)

Pick your hat; the receipts don’t change.

If you read 3 minutes:

  • Read “Reality cut” (shipped vs preview vs roadmap).
  • Read the if.trace proof lane (60 seconds).
  • Skim the if.gov and if.bus sections (they define the governance + transport thesis).

If you are security/compliance:

  • Read the black/white boundary and the “Proof in 60 seconds” lane.
  • Skim if.security and the embedded if.bus.security_signal + if.bus.budget_event examples.

If you are platform/product:

  • Start at if.apiif.bus (adapter payloads into a stable envelope).
  • Read the embedded contract excerpt (envelope + control plane + DLQ + budgets).

If you are wellbeing/UX:

  • Read if.emotion (explicit non-clinical boundary + “no action without human review” invariant).
  • Skim if.gov (decision packs as auditable unit-of-record).

Reality cut (registry-derived)

Status is an evidence level, not a mood.

Shipped (public surface exists):

  • if.trace
  • if.shadowrt
  • if.llm
  • if.whitepapers.bible
  • if.emotion

Preview (demo artifacts exist; not “live production” claims):

  • if.gov
  • if.typeset
  • if.api
  • if.bus
  • if.blackboard
  • if.context
  • if.discover
  • if.kb
  • if.security.secrets.detect
  • if.skills
  • if.story

Roadmap (spec and/or packs exist; no deployed runtime claimed):

  • if.security
  • if.knowledge
  • if.intelligence
  • if.mcp
  • if.research
  • if.swarm
  • if.gov.triage
  • if.gov.council
  • if.gov.council.extended

Status definitions (registry):

  • shipped: deployed public surface exists; no-login review is possible.
  • preview: reviewable artifacts exist; not a claim of production readiness.
  • roadmap: design/spec/posture exists; not a claim of deployed runtime.

Proof in 60 seconds (byte integrity; not truth)

If it can’t be audited, it doesn’t count.

Goal: verify at least one “receipt-backed” artifact without logging in.

Example receipt: https://infrafabric.io/static/trace/6qRgcR01kw_qNo63Dbs_ob9n

Steps:

  1. Open the receipt URL and copy the expected SHA-256 for the artifact.
  2. Download the artifact (pack/bundle/output) referenced by the receipt.
  3. Compute SHA-256 locally and compare:
sha256sum <downloaded_file>

Offline verifier (HTML + Python): https://infrafabric.io/static/hosted/iftrace-offline.html https://infrafabric.io/static/hosted/iftrace.py

Black/white reminder: a hash match proves “the bytes match the receipt”, nothing more.


Source dossier

The seed document; everything else is delta.

  • filename: DANNY_STOCKER_INFRAFABRIC_DOSSIER_20251223-1925CET.md
  • submitted_utc: 2025-12-23
  • local_sha256: d7832c254ae95da2ec1e2026a3bff8748596b3cc3983673fd027f6e437b13f46

This pack is a “productization distillation” of what has been built since the original submission: registry-defined modules/products + reviewable packs + schema contracts + deterministic tooling.


Registry excerpt

Naming is a control: fewer typos, fewer broken promises.

Canonical public mirror (HTML-first reviewer surface): https://infrafabric.io/llm/

Canonical public mirror (registry JSON): https://infrafabric.io/llm/if.registry.json

Embedded if.registry.json (verbatim):

{
  "version": 1,
  "updated_utc": "2026-02-01T09:12:28Z",
  "notes": [
    "This file is the canonical naming/slug registry. Do not hand-type product IDs, URL paths, or artifact slugs elsewhere.",
    "Brand labels are defined here (e.g., if.trace, IF.GOV). They may differ from product IDs.",
    "Receipts and manifests should always carry `product_id`; `brand` is the human-facing SKU label.",
    "Statuses are evidence levels (shipped/preview/roadmap); they do not imply customers, revenue, or multi-host reliability."
  ],
  "review_links": {
    "anthropic_addendum_2026_01_11": {
      "label": "Anthropic addendum reading order (00 reading guide, 01 productization pack, 02 system explainer, 03 uncut dossier, 04 fellows cut (optional))",
      "productization_pack_html": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/01_InfraFabric-Productization-Pack-2026012-0600CET.html",
      "productization_pack_md": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/01_InfraFabric-Productization-Pack-2026012-0600CET.md",
      "system_explainer_html": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/02_InfraFabric-System-Explainer-2026012-0600CET.html",
      "system_explainer_md": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/02_InfraFabric-System-Explainer-2026012-0600CET.html",
      "dossier_html": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.html",
      "dossier_md": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.md",
      "dossier_parts_index_md": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.parts.md",
      "dossier_parts_index_txt": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.parts.md.txt",
      "dossier_parts_md": [
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part01.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part02.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part03.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part04.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part05.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part06.md",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part07.md"
      ],
      "dossier_parts_txt": [
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part01.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part02.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part03.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part04.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part05.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part06.md.txt",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part07.md.txt"
      ],
      "dossier_parts_index_html": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.parts.html",
      "dossier_parts_html": [
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part01.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part02.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part03.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part04.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part05.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part06.html",
        "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/03_DANNY_STOCKER_INFRAFABRIC_DOSSIER_UNCUT_20251223-1925CET.part07.html"
      ],
      "fellows_cut_html": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/04_DANNY_STOCKER_INFRAFABRIC_DOSSIER_FELLOWS_CUT_20251223-1925CET.html",
      "fellows_cut_md": "https://infrafabric.io/static/hosted/review/infrafabric-anthropic-addendum/2026-01-11/04_DANNY_STOCKER_INFRAFABRIC_DOSSIER_FELLOWS_CUT_20251223-1925CET.md"
    }
  },
  "glossary": {
    "product_id": "Lowercase dot-namespace ID used in receipts/manifests and internal docs. This is the stable identifier.",
    "brand": "Human-facing SKU label. It can change without breaking receipts, as long as product_id stays stable.",
    "kind": "What this entry represents: a product, a surface (UI/distribution), a module (component), or a sku (deliverable tier).",
    "status": "Black/white evidence level (shipped/preview/roadmap). Status does not imply customers or revenue.",
    "path": "Canonical public URL path shape. Do not claim deployed unless verified; avoid dots in URL paths.",
    "slug": "Hyphenated artifact slug for filenames and page slugs.",
    "bundle_slug": "Hyphenated slug for demo bundles/artifacts.",
    "repo_dir": "Workspace-relative implementation directory (when applicable).",
    "vendored_engine_dir": "Workspace-relative path to an upstream/vendored engine used by a wrapper module (when applicable).",
    "uses_receipts_from": "If present, indicates which product_id provides the receipt surface used to bind outputs (e.g., if.trace)."
  },
  "status_definitions": {
    "shipped": {
      "means": "Public, no-login surface exists and is deployed; at least one real artifact is reviewable end-to-end.",
      "does_not_mean": [
        "paying customers exist",
        "multi-host reliability exists",
        "compliance guarantees",
        "factual correctness of narratives"
      ]
    },
    "preview": {
      "means": "Public demo artifacts exist (and can be reviewed), but the module/service is not yet treated as a live production surface.",
      "does_not_mean": [
        "paying customers exist",
        "CI/production integration is complete",
        "compliance guarantees"
      ]
    },
    "roadmap": {
      "means": "Concept/spec exists, but there is no public demo evidence that meets the reviewability bar.",
      "does_not_mean": [
        "deployed",
        "reviewable without internal access"
      ]
    }
  },
  "kind_definitions": {
    "product": "A sellable SKU/service concept with a canonical product_id.",
    "surface": "A UI/distribution surface that routes users to verification primitives (e.g., ShadowRT routes to if.trace receipts).",
    "module": "A component/module that can be integrated into workflows (e.g., CI scanners) and may publish receipt-backed outputs.",
    "sku": "A deliverable tier under a product (e.g., if.gov.triage)."
  },
  "products": [
    {
      "product_id": "if.trace",
      "brand": "if.trace",
      "kind": "product",
      "description": "Public receipt surface (hashes; signatures only when present and verifiable). Proof of bytes/integrity, not correctness.",
      "path": "/if/trace",
      "slug": "if-trace",
      "bundle_slug": "if-trace-demo-bundle",
      "status": "shipped"
    },
    {
      "product_id": "if.shadowrt",
      "brand": "ShadowRT",
      "kind": "surface",
      "description": "Publishing/review UI that makes if.trace legible via dossiers/packs and routes reviewers to receipts.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/review/shadowrt",
      "slug": "if-shadowrt",
      "bundle_slug": "if-shadowrt-demo-bundle",
      "status": "shipped"
    },
    {
      "product_id": "if.llm",
      "brand": "if.llm",
      "kind": "surface",
      "description": "Machine-first, no-login evidence surface (txt-first) for sandboxed review: static `/llm` artifacts with stable breadcrumbs, verifiable bytes, and explicit black/white boundaries.",
      "path": "/llm",
      "slug": "if-llm",
      "bundle_slug": "if-llm-demo-bundle",
      "status": "shipped",
      "status_detail": "Shipped: `/llm` is public and GET-only by design; it is a review/discovery surface, not a runtime API. It does not claim correctness of narratives; it exists to make published bytes reviewable without logins.",
      "public_surfaces": [
        "https://infrafabric.io/llm/entrypoint.json.txt",
        "https://infrafabric.io/llm/index.json.txt",
        "https://infrafabric.io/llm/README.md.txt",
        "https://infrafabric.io/llm/changelog.md.txt",
        "https://infrafabric.io/llm/sot/index.json.txt",
        "https://infrafabric.io/llm/discover/index.md.txt",
        "https://infrafabric.io/llm/partners/anthropic/index.md.txt"
      ]
    },
    {
      "product_id": "if.mcp",
      "brand": "if.mcp",
      "kind": "surface",
      "description": "Token-gated evidence surface for tenant/NDA artifacts (the `/mcp` wall). Public docs/specs live under `/llm/platform/mcp-*`.",
      "path": "/mcp",
      "slug": "if-mcp",
      "bundle_slug": "if-mcp-demo-bundle",
      "status": "roadmap",
      "status_detail": "Roadmap: `/mcp` is the tenant/NDA wall concept; do not assume public endpoints exist. Public-safe specs: `/llm/platform/mcp-gateway/**` and `/llm/platform/mcp-integration/**`.",
      "public_surfaces": [
        "https://infrafabric.io/llm/platform/mcp-integration/index.md.txt",
        "https://infrafabric.io/llm/platform/mcp-integration/2026-01-25/index.md.txt",
        "https://infrafabric.io/llm/platform/mcp-gateway/2026-01-22/index.md.txt"
      ]
    },
    {
      "product_id": "if.whitepapers.bible",
      "brand": "if.whitepapers.bible",
      "kind": "module",
      "description": "Audit-grade documentation bible: canonical scaffolding for /llm packs (black/white boundaries, one-URL-per-line, patch-first iteration, and the Jester line rule).",
      "path": "/llm/platform/if-whitepapers-bible",
      "slug": "if-whitepapers-bible",
      "bundle_slug": "if-whitepapers-bible-demo-bundle",
      "status": "shipped",
      "status_detail": "Shipped: canonical writing rules for InfraFabric review packs; use to keep packs readable, verifiable, and patch-first across versions.",
      "public_surfaces": [
        "https://infrafabric.io/llm/platform/if-whitepapers-bible/index.md.txt",
        "https://infrafabric.io/llm/platform/if-whitepapers-bible/2026-01-23-v1/index.md.txt"
      ]
    },
    {
      "product_id": "if.bus",
      "brand": "IF.bus",
      "kind": "product",
      "description": "Event/message backbone (runtime spec published; internal-only sandbox runtime exists). Public surfaces are specs + review packs; external reviewers cannot verify runtime liveness in real time.",
      "path": "/if/bus",
      "slug": "if-bus",
      "bundle_slug": "if-bus-demo-bundle",
      "status": "preview",
      "status_detail": "Preview (alpha): spec published; internal-only sandbox runtime documented; no public bus endpoints claimed.",
      "public_surfaces": [
        "https://infrafabric.io/if/bus/",
        "https://infrafabric.io/static/hosted/review/if-bus-whitepaper/2026-01-05/index.html",
        "https://infrafabric.io/llm/products/if-bus/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/full-stack-whitepaper/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/full-stack-whitepaper/2026-01-22/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/runtime-sandbox/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/runtime-sandbox/2026-01-19/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/bus-runtime-spec/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/bus-runtime-spec/2026-01-19/index.md.txt",
        "https://infrafabric.io/llm/products/if-bus/whitepaper-source-pack/index.md.txt"
      ]
    },
    {
      "product_id": "if.api",
      "brand": "IF.api (integrations)",
      "kind": "product",
      "description": "Integration inventory + adapters for external APIs. Active development; ready for integration review; no public runtime endpoints claimed.",
      "path": "/if/api",
      "slug": "if-api",
      "bundle_slug": "if-api-demo-bundle",
      "status": "preview",
      "status_detail": "Preview: active development; adapters in constant iteration; public surfaces are specs + demos + locked review packs; no public runtime endpoints claimed.",
      "public_surfaces": [
        "https://infrafabric.io/if/api/",
        "https://infrafabric.io/static/hosted/review/if-api-deep-dive/2026-02-01/index.html",
        "https://infrafabric.io/llm/products/if-api/deep-dive/2026-02-01-v1.0.1/index.md.txt",
        "https://infrafabric.io/llm/products/if-api/deep-dive/2026-02-01/index.md.txt",
        "https://infrafabric.io/llm/products/if-api/"
      ]
    },
    {
      "product_id": "if.context",
      "brand": "if.context",
      "kind": "module",
      "description": "Evidence environment for agent work: artifacts (bytes + provenance), read plans, and derived artifacts with verification chains. Not a replacement for `if.bus` (control plane) or `if.trace` (integrity receipts).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/context",
      "slug": "if-context",
      "bundle_slug": "if-context-demo-bundle",
      "status": "preview",
      "status_detail": "Preview: schemas + deterministic CLI tooling exist; published review packs demonstrate the evidence primitives. Full-auto orchestration and any multi-tenant `/mcp` runtime posture are not claimed.",
      "public_surfaces": [
        "https://infrafabric.io/static/hosted/review/if-context-architecture/2026-01-25/index.html",
        "https://infrafabric.io/static/hosted/review/if-context-architecture/2026-01-25/index.md.txt",
        "https://infrafabric.io/static/hosted/review/if-context-mvp/2026-01-25/index.html",
        "https://infrafabric.io/static/hosted/review/if-context-mvp/2026-01-25/index.md.txt",
        "https://infrafabric.io/static/hosted/review/if-context-full-auto/2026-01-27/index.html",
        "https://infrafabric.io/static/hosted/review/if-context-full-auto/2026-01-27/index.md.txt"
      ]
    },
    {
      "product_id": "if.discover",
      "brand": "if.discover",
      "kind": "module",
      "description": "Deterministic static discovery layer for public `/llm` surfaces (no query endpoints; client-side scoring; shardable index).",
      "path": "/if/discover",
      "slug": "if-discover",
      "bundle_slug": "if-discover-demo-bundle",
      "status": "preview",
      "status_detail": "Preview: static `/llm/discover/**` is live (index + scoring spec + fixtures + optional UI). Legacy name: if.search.",
      "public_surfaces": [
        "https://infrafabric.io/llm/discover/index.md.txt",
        "https://infrafabric.io/llm/discover/index.json.txt",
        "https://infrafabric.io/llm/discover/routing.json.txt",
        "https://infrafabric.io/llm/discover/scoring-spec.md.txt",
        "https://infrafabric.io/llm/discover/scoring-fixtures.json.txt",
        "https://infrafabric.io/llm/discover/ui/"
      ]
    },
    {
      "product_id": "if.skills",
      "brand": "if.skills",
      "kind": "module",
      "description": "Tooling/skills catalog for compatible clients: GET-only `/llm/skills` index plus dated review packs for byte verification and discovery.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/llm/skills",
      "slug": "if-skills",
      "bundle_slug": "if-skills-demo-bundle",
      "status": "preview",
      "status_detail": "Preview: `/llm/skills/**` is a public catalog (txt-first). `/llm/products/if-skills/**` provides dated+pointer packs with sha256 pinning; no runtime execution guarantee is claimed.",
      "public_surfaces": [
        "https://infrafabric.io/llm/skills/index.md.txt",
        "https://infrafabric.io/llm/skills/index.json.txt",
        "https://infrafabric.io/llm/products/if-skills/index.md.txt",
        "https://infrafabric.io/llm/products/if-skills/2026-02-01/index.md.txt"
      ]
    },
    {
      "product_id": "if.blackboard",
      "brand": "if.blackboard",
      "kind": "module",
      "description": "Auditable single- and multi-agent coordination surface: append-only task snapshots + signals, rendered to GET-first `/llm` views; controlled-writer updates; no-login review posture. Legacy name: `if.tasks` (keep legacy `/llm/platform/if-tasks/**` docs as an alias surface; canonical product id is `if.blackboard`).",
      "path": "/if/blackboard",
      "slug": "if-blackboard",
      "bundle_slug": "if-blackboard-demo-bundle",
      "status": "preview",
      "status_detail": "Preview: `/llm/blackboard/**` and `/llm/signals/**` are live derived views; canonical edits append to a local JSONL store via writer tooling. Legacy name: `if.tasks` (docs remain under `/llm/platform/if-tasks/**`). No multi-host runtime is claimed.",
      "public_surfaces": [
        "https://infrafabric.io/llm/blackboard/index.md.txt",
        "https://infrafabric.io/llm/blackboard/tasks.open.md.txt",
        "https://infrafabric.io/llm/blackboard/tasks.sessions.md.txt",
        "https://infrafabric.io/llm/blackboard/tasks.search.md.txt",
        "https://infrafabric.io/llm/blackboard/tasks.search.json.txt",
        "https://infrafabric.io/llm/session-state.md.txt",
        "https://infrafabric.io/llm/task-board.md.txt",
        "https://infrafabric.io/llm/platform/if-blackboard/index.md.txt",
        "https://infrafabric.io/llm/platform/if-tasks/index.md.txt",
        "https://infrafabric.io/llm/platform/if-tasks/2026-01-19-v6.4/index.md.txt",
        "https://infrafabric.io/llm/platform/if-tasks/changelog.md.txt",
        "https://infrafabric.io/llm/signals/index.md.txt"
      ]
    },
    {
      "product_id": "if.research",
      "brand": "if.research",
      "kind": "module",
      "description": "Multi-pass investigation/research workflow module (formerly named `if.search`; roadmap only; no deployed service is claimed on this host).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/research",
      "slug": "if-research",
      "bundle_slug": "if-research-demo-bundle",
      "status": "roadmap",
      "status_detail": "Legacy name: `if.search` (pre-2026-01-20). The `if.search` name now refers to the live static `/llm/discover/**` discovery layer.",
      "public_surfaces": [
        "https://infrafabric.io/static/hosted/review/if-search-demo/2026-01-10/index.html",
        "https://infrafabric.io/static/trace/MWAhkpzRN9gIykpszdLrSg",
        "https://infrafabric.io/static/pack/MWAhkpzRN9gIykpszdLrSg"
      ]
    },
    {
      "product_id": "if.intelligence",
      "brand": "if.intelligence",
      "kind": "module",
      "description": "Research orchestration module (roadmap only; no receipt-backed demo published yet).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/intelligence",
      "slug": "if-intelligence",
      "bundle_slug": "if-intelligence-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.swarm",
      "brand": "if.swarm",
      "kind": "module",
      "description": "Multi-agent/swarm execution module (roadmap only; no receipt-backed demo published yet).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/swarm",
      "slug": "if-swarm",
      "bundle_slug": "if-swarm-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.story",
      "brand": "if.story",
      "kind": "module",
      "description": "Narrative logging protocol module (vector vs bitmap). Protocol artifacts are live (story pack + vector logging); no deployed runtime on this host.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/story",
      "slug": "if-story",
      "bundle_slug": "if-story-demo-bundle",
      "status": "preview",
      "status_detail": "Protocol artifacts are live (story pack + vector logging); no deployed runtime on this host.",
      "public_surfaces": [
        "https://infrafabric.io/llm/products/if-story/demo/index.html",
        "https://infrafabric.io/llm/products/if-story/vector-and-narrative-logging/2026-01-10/index.html",
        "https://infrafabric.io/if/story/"
      ]
    },
    {
      "product_id": "if.knowledge",
      "brand": "if.knowledge",
      "kind": "module",
      "description": "Build-time documentation pipeline (registry-driven; static Markdown/HTML; no runtime fetches). Roadmap: no public demo artifacts published yet; no deployed service on this host.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/knowledge",
      "slug": "if-knowledge",
      "bundle_slug": "if-knowledge-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.kb",
      "brand": "if.kb",
      "kind": "module",
      "description": "Build-time developer knowledge base (KB) artifacts generated via `if.knowledge` (static Markdown/HTML; no runtime fetches). Preview: a bus/api KB snapshot is published; no deployed KB service on this host.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/kb",
      "slug": "if-kb",
      "bundle_slug": "if-kb-demo-bundle",
      "status": "preview"
    },
    {
      "product_id": "if.typeset",
      "brand": "iftypeset",
      "kind": "product",
      "description": "Deterministic document CI (lint → render HTML/PDF → QA) for review-proof packs.",
      "path": "/if/typeset",
      "slug": "if-typeset",
      "bundle_slug": "if-typeset-demo-bundle",
      "repo_dir": "ai-workspace/iftypeset",
      "status": "preview"
    },
    {
      "product_id": "if.gov",
      "brand": "IF.GOV",
      "kind": "product",
      "description": "Governance packs (triage/decision/external challenge) bound to receipts; not compliance guarantees.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/gov",
      "slug": "if-gov",
      "bundle_slug": "if-gov-demo-bundle",
      "status": "preview"
    },
    {
      "product_id": "if.gov.triage",
      "brand": "IF.GOV triage",
      "kind": "sku",
      "description": "Deliverable tier: triage memo + receipt-backed decision framing (not a compliance guarantee).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/gov/triage",
      "slug": "if-gov-triage",
      "bundle_slug": "if-gov-triage-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.gov.council",
      "brand": "IF.GOV council",
      "kind": "sku",
      "description": "Deliverable tier: council-style decision pack with risks/controls/eval plan, bound to receipts.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/gov/council",
      "slug": "if-gov-council",
      "bundle_slug": "if-gov-council-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.gov.council.extended",
      "brand": "IF.GOV council extended",
      "kind": "sku",
      "description": "Deliverable tier: extended council pack + external challenge add-on (receipt-backed).",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/gov/council/extended",
      "slug": "if-gov-council-extended",
      "bundle_slug": "if-gov-council-extended-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.security",
      "brand": "if.security",
      "kind": "module",
      "description": "Cross-cutting security posture for InfraFabric modules (signals + evidence-typed actuation + containment mapping). Roadmap only; no deployed security runtime on this host.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/security",
      "slug": "if-security",
      "bundle_slug": "if-security-demo-bundle",
      "status": "roadmap"
    },
    {
      "product_id": "if.security.secrets.detect",
      "brand": "if.yologuard",
      "kind": "module",
      "description": "Receipt-backed secrets detection (audit mode, redacted outputs). Preview demo exists; not CI-integrated or 'live'.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/security/secrets/detect",
      "slug": "if-security-secrets-detect",
      "bundle_slug": "if-security-secrets-detect-demo-bundle",
      "repo_dir": "src/armour/secrets",
      "vendored_engine_dir": "armour/yologuard",
      "status": "preview"
    },
    {
      "product_id": "if.emotion",
      "brand": "IF.emotion",
      "kind": "product",
      "description": "Wellbeing-aware interaction layer (non-clinical) and governance-seat outputs with explicit safety boundaries; live emo-social surface (public); not diagnosis/therapy; not compliance guarantees.",
      "uses_receipts_from": [
        "if.trace"
      ],
      "path": "/if/emotion",
      "slug": "if-emotion",
      "bundle_slug": "if-emotion-demo-bundle",
      "status": "shipped",
      "status_detail": "emo-social pipeline is live (public); review pack published; non-clinical scope.",
      "public_surfaces": [
        "https://emo-social.infrafabric.io",
        "https://infrafabric.io/llm/products/if-emotion/emo-social-pipeline/2026-01-13/index.html"
      ]
    }
  ]
}

Product tree (derived from the registry above):

infrafabric.io
├── /llm (if.llm, shipped)
│   ├── /llm/skills (if.skills, preview)
│   └── /llm/platform/if-whitepapers-bible (if.whitepapers.bible, shipped)
├── /if/trace (if.trace, shipped)
├── /review/shadowrt (if.shadowrt, shipped)
├── /if/gov (if.gov, preview)
│   ├── /if/gov/triage (if.gov.triage, roadmap)
│   ├── /if/gov/council (if.gov.council, roadmap)
│   └── /if/gov/council/extended (if.gov.council.extended, roadmap)
├── /if/security (if.security, roadmap)
│   └── /if/security/secrets/detect (if.security.secrets.detect, preview)
├── /if/api (if.api, preview)
├── /if/bus (if.bus, preview)
├── /if/context (if.context, preview)
├── /if/blackboard (if.blackboard, preview; legacy: if.tasks)
├── /if/discover (if.discover, preview; legacy: if.search)
├── /if/kb (if.kb, preview)
├── /if/typeset (if.typeset, preview)
├── /if/emotion (if.emotion, shipped)
├── /if/story (if.story, preview)
├── /if/research (if.research, roadmap)
├── /if/intelligence (if.intelligence, roadmap)
├── /if/swarm (if.swarm, roadmap)
└── /mcp (if.mcp, roadmap)

Note: path values are canonical shapes from the registry. They should not be read as deployment claims. Some roadmap SKUs may currently return 404 (e.g., if.gov.triage).

Receipt dependency graph (registry uses_receipts_from edges only; not a full dependency graph):

flowchart TD
  trace[if.trace]

  shadowrt[if.shadowrt] --> trace
  gov[if.gov] --> trace
  gov_triage[if.gov.triage] --> trace
  gov_council[if.gov.council] --> trace
  gov_ext[if.gov.council.extended] --> trace
  emotion[if.emotion] --> trace
  secrets[if.security.secrets.detect] --> trace
  security[if.security] --> trace
  story[if.story] --> trace
  knowledge[if.knowledge] --> trace
  kb[if.kb] --> trace
  context[if.context] --> trace
  skills[if.skills] --> trace
  research[if.research] --> trace
  intel[if.intelligence] --> trace
  swarm[if.swarm] --> trace

Task board excerpt (if.knowledge chain)

Roadmap with timestamps: accountability you can grep.

This excerpt exists so reviewers can understand “what changed since the dossier” without reading internal systems. It is intentionally high-level (no internal host paths).

Key milestones:

  • if.knowledge pipeline (registry-driven build + lint scripts) and public LLM reviewer surface /llm/.
  • Anthropic addendum series v1 → v6 (increasingly “page-zero” and self-contained).
  • This productization pack (reader path + reality cut + embedded contracts).

Public task board snapshot: https://infrafabric.io/llm/task-board.html

Public session ledger snapshot: https://infrafabric.io/llm/session-state.html


Evidence (verified facts only)

This is where adjectives get asked for receipts.

1) Public reviewer hubs (no login)

Start where nobody can hide behind auth.

LLM review hub: https://infrafabric.io/llm/

Products index: https://infrafabric.io/llm/products/

2) if.gov evidence (preview: decision-pack demo exists)

Governance, evidenced: packs you can critique line by line.

Product page: https://infrafabric.io/if/gov/

Review pack: https://infrafabric.io/llm/products/if-gov/

Decision-pack demo (HTML-first): https://infrafabric.io/static/hosted/review/if-gov-decision-pack-demo/2026-01-05/index.html

3) if.bus and if.api evidence (preview: specs + demos exist; no public endpoints claimed)

Integration isn’t magic; it’s contracts, demos, and gaps.

if.bus product page: https://infrafabric.io/if/bus/

if.bus runtime spec (txt-first pointer: latest + archive): https://infrafabric.io/llm/products/if-bus/bus-runtime-spec/index.md.txt

if.bus full stack whitepaper (txt-first pointer): https://infrafabric.io/llm/products/if-bus/full-stack-whitepaper/index.md.txt

if.api product page: https://infrafabric.io/if/api/

if.api deep dive (locked v1.0.1; txt-first): https://infrafabric.io/llm/products/if-api/deep-dive/2026-02-01-v1.0.1/index.md.txt

if.api integrations inventory (HTML-first): https://infrafabric.io/static/hosted/review/if-api-integrations-inventory/2026-01-05/index.html

if.api GitHub webhook demo (HTML-first): https://infrafabric.io/static/hosted/review/if-api-github-webhook-demo/2026-01-05/index.html

4) Embedded contract excerpt (verbatim examples)

Here’s the contract surface area—argue with the shape, not the hype.

The following JSON blocks are copied from schema examples[] fields in:

  • schemas/if-bus/*.schema.json
  • schemas/if-api/*.schema.json

4.1 if.bus envelope (example; placeholder hashes)

Every event gets an ID, a payload hash, and nowhere to hand-wave.

{
  "schema_id": "if.bus.envelope",
  "schema_version": "1.0.0",
  "event_id": "01JH8Y3KJ7P2B34M1R9T2Y8X0A",
  "emitted_utc": "2026-01-08T20:00:00Z",
  "producer": {
    "kind": "if.api.adapter",
    "id": "github_webhook",
    "version": "2026-01-05"
  },
  "event": {
    "name": "github.push",
    "op": "update"
  },
  "subject": {
    "kind": "repo",
    "id": "octo-org/octo-repo"
  },
  "routing": {
    "topic": "if.bus.demo.roadmap.ingress.github.push",
    "partition_key": "octo-org/octo-repo",
    "priority": 5,
    "ttl_seconds": 86400
  },
  "payload_media_type": "application/json",
  "payload": {
    "demo": true,
    "note": "Payload content may be partial or redacted; payload_sha256 is authoritative."
  },
  "payload_sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "payload_ref": {
    "sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "content_encoding": "gzip",
    "content_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
    "source_url": "https://infrafabric.io/static/source/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.tgz"
  },
  "budget": {
    "budget_id": "tenant-demo-usd-daily",
    "currency": "USD",
    "soft_limit": 25.0,
    "hard_limit": 50.0
  },
  "security": {
    "classification": "internal",
    "pii_present": false
  },
  "extensions": {
    "demo.note": "Extension keys must be namespaced to avoid collisions."
  }
}

4.2 if.bus control plane (command + ack)

Commands get acknowledgements; silence is treated as data.

{
  "schema_id": "if.bus.control_command",
  "schema_version": "1.0.0",
  "command_id": "cmd-01JH8Y50Y1G3C8X2W4R9V8TQ3Z",
  "issued_utc": "2026-01-08T20:05:00Z",
  "actor": {
    "kind": "operator",
    "id": "oncall"
  },
  "target": {
    "kind": "topic",
    "id": "if.bus.ingress.github"
  },
  "command": {
    "name": "pause",
    "parameters": {
      "ttl_seconds": 900,
      "mode": "drain"
    }
  },
  "reason": "Backpressure event: downstream consumer is failing; pause ingress to prevent queue growth.",
  "idempotency_key": "pause-if.bus.ingress.github-2026-01-08T20:05Z"
}
{
  "schema_id": "if.bus.control_ack",
  "schema_version": "1.0.0",
  "ack_id": "ack-01JH8Y5C7Z5XQ8J4V1A6S2T9P0",
  "command_id": "cmd-01JH8Y50Y1G3C8X2W4R9V8TQ3Z",
  "processed_utc": "2026-01-08T20:05:02Z",
  "status": "accepted",
  "runtime_instance": "ifbus-rt-01"
}

4.3 DLQ is a structured event (dead letter envelope)

Failures don’t vanish—they get parked with a receipt.

{
  "schema_id": "if.bus.envelope",
  "schema_version": "1.0.0",
  "event_id": "if.bus.example.dead_letter_event.v1",
  "emitted_utc": "2026-01-10T00:00:00Z",
  "producer": {
    "kind": "if.bus.runtime",
    "id": "example",
    "version": "0.0.0"
  },
  "event": {
    "name": "if.bus.dead_letter_event"
  },
  "routing": {
    "topic": "if.bus.dlq",
    "partition_key": "dlq",
    "priority": 5,
    "ttl_seconds": 86400
  },
  "payload_media_type": "application/json",
  "payload": {
    "original_envelope": {
      "schema_id": "if.bus.envelope",
      "schema_version": "1.0.0",
      "event_id": "01JH8Y3KJ7P2B34M1R9T2Y8X0A",
      "emitted_utc": "2026-01-10T00:00:00Z",
      "producer": {
        "kind": "if.api.adapter",
        "id": "github_webhook",
        "version": "2026-01-05"
      },
      "event": {
        "name": "github.push"
      },
      "routing": {
        "topic": "if.bus.demo.roadmap.ingress.github.push",
        "partition_key": "octo-org/octo-repo",
        "priority": 5,
        "ttl_seconds": 86400
      },
      "payload_media_type": "application/json",
      "payload_sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
      "extensions": {}
    },
    "error_context": {
      "kind": "schema_violation",
      "error": "payload_sha256 missing"
    },
    "retry_history": [
      {
        "attempt_utc": "2026-01-10T00:00:00Z",
        "outcome": "dead_lettered"
      }
    ],
    "source_transport": {
      "kind": "nats_js",
      "consumer_group": "if-bus-runtime",
      "stream": "IFBUS",
      "subject": "if.bus.>",
      "message_id": "nats:seq:1"
    }
  },
  "payload_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
  "extensions": {}
}

4.4 Security signals (redacted, non-secret)

Security signals: structured, redacted, and boring (the good kind).

{
  "schema_id": "if.bus.security_signal",
  "schema_version": "1.0.0",
  "signal_id": "sec-01JH8Y6A8N3Q2P1R0S9T8U7V6W",
  "emitted_utc": "2026-01-08T20:07:00Z",
  "detector": {
    "detector_id": "secrets.detect",
    "version": "1.0.0",
    "kind": "regex"
  },
  "severity": "high",
  "finding_type": "secret_like_token",
  "summary": "Detector matched a token-like pattern in an inbound payload; excerpt is redacted.",
  "recommended_action": "quarantine",
  "redactions": {
    "redacted_excerpt": "Authorization: Bearer [REDACTED]",
    "note": "Signals must never include the full secret; only redacted context."
  },
  "related_event_id": "01JH8Y3KJ7P2B34M1R9T2Y8X0A"
}

4.5 Budgets (preflight + postflight reconciliation)

Budgets turn “should” into “cannot” — cleanly.

{
  "schema_id": "if.bus.budget_event",
  "schema_version": "1.0.0",
  "budget_event_id": "bud-01JH8Y5S3F2WJ6X9Q1R8T7Y6Z5",
  "emitted_utc": "2026-01-08T20:06:00Z",
  "trigger": "preflight",
  "scope": {
    "kind": "workflow",
    "id": "demo-github-to-slack"
  },
  "budget": {
    "budget_id": "tenant-demo-usd-daily",
    "currency": "USD",
    "soft_limit": 25.0,
    "hard_limit": 50.0,
    "period": "daily",
    "resource_limits": {
      "api_calls": {
        "soft_limit": 1000,
        "hard_limit": 2000
      },
      "bytes_out": {
        "soft_limit": 104857600,
        "hard_limit": 209715200
      }
    },
    "replenishment": {
      "kind": "fixed_window",
      "period": "daily",
      "timezone": "UTC",
      "next_reset_utc": "2026-01-09T00:00:00Z"
    }
  },
  "usage": {
    "cost_estimate": 0.02,
    "units": {
      "api_calls": 1,
      "bytes_in": 2048,
      "bytes_out": 1024
    }
  },
  "advice": [
    "allow"
  ]
}
{
  "schema_id": "if.bus.budget_event",
  "schema_version": "1.0.0",
  "budget_event_id": "bud-01JH8Y5S3F2WJ6X9Q1R8T7Y6Z6",
  "emitted_utc": "2026-01-08T20:06:03Z",
  "trigger": "postflight",
  "scope": {
    "kind": "workflow",
    "id": "demo-github-to-slack"
  },
  "budget": {
    "budget_id": "tenant-demo-usd-daily",
    "currency": "USD",
    "soft_limit": 25.0,
    "hard_limit": 50.0,
    "period": "daily"
  },
  "usage": {
    "cost_actual": 0.03,
    "units": {
      "api_calls": 1,
      "bytes_in": 2048,
      "bytes_out": 2048,
      "compute_ms": 25,
      "wall_ms": 120
    }
  },
  "reconciliation": {
    "preflight_budget_event_id": "bud-01JH8Y5S3F2WJ6X9Q1R8T7Y6Z5",
    "cost_delta": 0.01,
    "units_delta": {
      "bytes_out": 1024
    }
  },
  "advice": [
    "allow"
  ]
}

4.6 if.api adapter spec (example)

Adapters are translators, not improvisers.

{
  "spec_id": "if-api-docusign-2026-01",
  "adapter": {
    "adapter_id": "docusign",
    "provider": "DocuSign",
    "label": "DocuSign API",
    "version": "2026-01",
    "base_url": "https://demo.example.invalid/api",
    "auth": {
      "type": "oauth2",
      "scopes": [
        "signature",
        "envelope.read"
      ]
    },
    "capabilities": [
      "send",
      "status",
      "audit_log"
    ],
    "webhooks": [
      {
        "name": "envelope.completed",
        "event": "completed",
        "delivery": "webhook"
      }
    ],
    "status": "preview"
  },
  "carrier_manifest_ref": "schemas/if-bus/carrier_manifest.schema.json",
  "endpoints": [
    {
      "name": "create_envelope",
      "method": "POST",
      "path": "/envelopes",
      "summary": "Create a signature envelope."
    },
    {
      "name": "get_status",
      "method": "GET",
      "path": "/envelopes/{id}",
      "summary": "Fetch envelope status."
    }
  ],
  "constraints": {
    "rate_limit": "60/min",
    "max_payload_bytes": 1048576
  }
}

4.7 Worked adapter mapping (GitHub webhook demo output \u2192 if.bus payload)

One worked path from webhook noise to a stable envelope.

Published demo: https://infrafabric.io/static/hosted/review/if-api-github-webhook-demo/2026-01-05/index.html

Expected sha256sum (source bundle): 8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83

Expected sha256sum (normalized output): cd34502dd28a8d031893c9b1b52bd6dfaf374080e07249977b61e0d73a3651ac

Normalized output JSON (verbatim from the demo page):

{
  "commits": [
    {
      "id": "c0ffee25404a1f0d0a1b2c3d4e5f60718293a4b5",
      "message": "Fix README",
      "timestamp": "2026-01-05T00:00:00Z",
      "url": "https://github.com/octo-org/octo-repo/commit/c0ffee25404a1f0d0a1b2c3d4e5f60718293a4b5"
    },
    {
      "id": "deadbeefcafebabef00d0123456789abcdef0000",
      "message": "Add docs",
      "timestamp": "2026-01-05T00:01:00Z",
      "url": "https://github.com/octo-org/octo-repo/commit/deadbeefcafebabef00d0123456789abcdef0000"
    }
  ],
  "event": "push",
  "input_sha256": "29ed81a254ba70108386a09688d159f131734fbc915fcfaf2ad0ae0cc8e82765",
  "integration": "github",
  "schema_version": "demo.v1",
  "source": {
    "after": "1111111111111111111111111111111111111111",
    "before": "0000000000000000000000000000000000000000",
    "pusher": {
      "email": "octocat@users.noreply.github.com",
      "name": "octocat"
    },
    "ref": "refs/heads/main",
    "repository": {
      "full_name": "octo-org/octo-repo",
      "html_url": "https://github.com/octo-org/octo-repo"
    }
  },
  "summary": {
    "commit_count": 2,
    "head_commit_id": "c0ffee25404a1f0d0a1b2c3d4e5f60718293a4b5"
  }
}

Mapping (illustrative; not a deployed runtime claim):

  • if.api produces a deterministic adapter payload (above).
  • if.bus wraps that payload in if.bus.envelope:
    • producer.kind = if.api.adapter
    • event.name = github.push
    • subject.kind/id = repo identifier
    • routing.topic = registry-defined taxonomy
    • payload_sha256 = sha256 of the canonical adapter payload bytes (demo’s output hash above)
  • if.trace can then bind the output bytes of any downstream transformation (black/white integrity).

Interpretation (clearly labeled)

Opinions live here, wearing name tags.

What “productization” means here

Productization = stable surfaces + deterministic checks, not bigger adjectives.

This is not “shipping an AI product”. It is shipping auditable reality:

  • a canonical registry (if.registry.json) that prevents naming drift,
  • schema contracts for payloads and control planes,
  • deterministic build/lint tooling (if.knowledge),
  • and public review surfaces (HTML-first; no login; link-failure resistant).

If a system can’t be audited by a non-specialist, it’s not fit for high-consequence decisions.

Why “all the security”

Security is what keeps small mistakes from becoming public incidents.

Security isn’t a tax; it’s a seatbelt. It’s insurance against silent failure:

  • it reduces likelihood and blast radius,
  • it makes incidents auditable,
  • and it turns “we think we’re safe” into explicit, reviewable posture and signals.

In InfraFabric terms: security becomes a first-class input to governance (if.gov), and a first-class field in transport (if.bus.security_signal and if.bus.budget_event) instead of being retrofitted after incidents.

if.gov (preview) — decision packs as the unit of record (not “LLM council theater”)

Decision packs, not theatre: write it down, link the evidence, ship the delta.

if.gov is designed as a decision contract layer:

  • inputs are structured,
  • evidence links are explicit,
  • deterministic checks (where possible) are preferred,
  • LLM text (when used) is optional and untrusted (draft/summarize only),
  • outputs are receipt-bound via if.trace (byte integrity).

This is the path to “gov-grade” decisions that remain verifiable years later without requiring access to a specific black-box model.

Portfolio-based council seats (design target):

  • framing seats as government portfolios (finance, legal, risk, etc.) increases legibility to subjects and maps to existing org structures.
  • the end state is not “20 LLM seats forever”; it’s progressively replacing narratives with deterministic checkers.

Token/cost posture (design target; not a measurement):

  • Phase 1: LLMs are an expensive bootstrap for deliberation/drafting.
  • Phase 2: structured prompts + JSON validation reduces variance.
  • Phase 3: hybrid mode (checkers enforce, LLM narrates) collapses cost.
  • Phase 4: deterministic checkers drive the decision; token cost can approach zero (LLM optional).

if.bus (preview) — a spine designed for boring integrations

Make the boring path the default, so compliance isn’t heroic.

The point of if.bus is not novelty. It is to make integrations boring:

  • one stable envelope,
  • one control plane (pause/quarantine/replay),
  • one DLQ format (structured event),
  • budgets and security signals as first-class fields.

Design intent: reduce friction so the “compliant” path is the easy path for integrators (humans and agents). When the envelope carries budgets, security signals, and trace hooks, downstream systems don’t have to invent their own incompatible versions.

if.trace (shipped) — integrity receipts (not truth)

Integrity is checkable; truth still requires review.

if.trace is the integrity layer:

  • no-login URLs,
  • offline verifier,
  • black/white language about what is and isn’t proven.

If an output matters, bind its bytes to a receipt. This is the primitive the rest of the stack composes around.

if.emotion (shipped) — wellbeing-aware, explicitly non-clinical

High-stakes UX: strict scope, explicit boundaries, no pretend-clinical claims.

Hard invariant (must remain true):

  • No clinical or safety action may be taken solely on if.emotion outputs without qualified human review and oversight.

if.emotion is a stress test for “governance for the subjects”: a domain where misinterpretation is a harm vector, and auditability matters.

if.story (preview) — narrative logging supports every other product

Narrative logs keep the system honest when memory gets convenient.

if.story is the “why trail” protocol:

  • bitmap logs capture “what happened” (snapshots),
  • vector narratives preserve “why” (constraints, rejected options, decision geometry).

This supports:

  • if.gov decision packs (dissent, reversibility, constraints),
  • if.security incidents (posture, containment decisions),
  • if.bus incidents (why a topic was paused/quarantined; why replay was done),
  • if.typeset publishing (why changes were made).

if.story public surfaces: https://infrafabric.io/if/story/ https://infrafabric.io/llm/products/if-story/

Embedded demo artifact (verbatim excerpt; see if.story pack for the full file):

# Narrative log (vector)

Subject: `if.story` — publish a concrete `narrative_log.v1` demo pair  
Context ID: `ifstory-demo-2026-01-11-001`  
Author: InfraFabric (demo)  
Date (UTC): 2026-01-11  

## 1) Signal (≈50 words)
What happened: we published a concrete `narrative_log.v1` example (Markdown + JSON) for external review.  
Stakes: without an example, “vector vs bitmap” stays conceptual and can’t be linted.  
Outcome: a non-secret demo pair exists and is linked from `/llm/products/if-story/`.

One-page product explainers (Who/Why/What/Where/When/How)

Same interrogation for every product: who/why/what/where/when/how.

These are intentionally short “subject-readable” summaries. When in doubt, treat the registry status as the only truth about readiness.

if.llm (shipped) — public review/discovery surface (GET-only)

If a reviewer can’t fetch it, it isn’t evidence.

  • Who: external reviewers, auditors, and operators who need a single “front door”.
  • Why: make review surfaces discoverable without accounts (reduce friction + drift).
  • What: public, text-first /llm hub (registry + SoT + packs + taskboard + sessions + discovery).
  • Where: https://infrafabric.io/llm/ https://infrafabric.io/llm/entrypoint.json.txt
  • When: shipped (public surface exists; no-login).
  • How: static hosting + derived views; not a runtime API.

if.whitepapers.bible (shipped) — writing discipline for review packs

Build docs like you build artifacts: reproducible, lintable, patch-first.

  • Who: anyone authoring InfraFabric whitepapers/review packs.
  • Why: keep critical sections stable across versions; reduce drift and “missing section” regressions.
  • What: scaffolding + black/white discipline + link hygiene rules.
  • Where: https://infrafabric.io/llm/platform/if-whitepapers-bible/index.md.txt
  • When: shipped (canonical writing bible).
  • How: treat as template + lint; do not leak secrets.

if.blackboard (preview) — coordination layer (tasks + sessions + signals) (legacy name: if.tasks)

If state isn’t visible, coordination becomes theater.

if.skills (preview) — curated, versioned workflow skills

Reduce prompt drift by turning runbooks into files.

if.context (preview) — deterministic context ingest/store/pack (MVP + full-auto packs)

Context is a product: publish the bytes, don’t narrate them.

if.gov (preview) — governance packs (decision contracts)

Governance-as-files: scope, assumptions, risks, and receipts.

  • Who: teams making high-consequence decisions (operators, reviewers, oversight bodies).
  • Why: make decisions replayable and reviewable without trusting a black-box model.
  • What: receipt-bound governance packs (not compliance guarantees).
  • Where: https://infrafabric.io/if/gov/ https://infrafabric.io/llm/products/if-gov/
  • When: preview (decision-pack demo exists; SKUs below are roadmap targets).
  • How: structured inputs + explicit evidence links + deterministic checks where possible; LLM text optional/untrusted.

if.gov.triage (roadmap) — triage tier (deliverable target)

Triage tier: fast decisions, explicit unknowns, no mystique.

if.gov.council (roadmap) — council tier (deliverable target)

Council tier: structured dissent, fewer surprise assumptions.

if.gov.council.extended (roadmap) — extended tier (deliverable target)

Extended tier: when the checklist matters more than charisma.

if.trace (shipped) — integrity receipts (no login)

No-login receipts: verification without permission slips.

  • Who: anyone who must verify bytes later (reviewers, auditors, procurement, subjects).
  • Why: turn “trust us” into stable, verifiable receipts.
  • What: public receipt surface (hash match = byte integrity only).
  • Where: https://infrafabric.io/if/trace/ https://infrafabric.io/llm/products/if-trace/
  • When: shipped (public surface exists).
  • How: publish a receipt URL; verify hashes offline; optionally QUANTUM READY when a PQ receipt exists.

if.shadowrt (shipped) — review UI for packs/dossiers

A review UI that points to “verify”, not “believe”.

  • Who: external reviewers who need a clean index into artifacts.
  • Why: route humans to the proof without accounts.
  • What: a UI surface that links to if.trace receipts (byte integrity).
  • Where: https://infrafabric.io/review/shadowrt/
  • When: shipped (public surface exists).
  • How: HTML-first surfaces that point to receipts and bundles.

if.security (roadmap) — cross-cutting security posture

Posture before product: boundaries that survive an incident report.

if.security.secrets.detect (preview) — receipt-backed secrets detection

Secrets detection: catch it in code review, not after disclosure.

if.bus (preview) — transport-agnostic bus contract

One envelope, many transports: keep the contract stable.

if.api (preview) — adapters + integration inventory

Adapters as an inventory: what exists, what’s proven, what’s next.

if.typeset (preview) — deterministic document CI

Document CI: deterministic output, fewer PDF surprises.

if.emotion (shipped) — wellbeing-aware interaction (non-clinical)

Wellbeing-aware by design: careful language, strong boundaries.

if.kb (preview) — build-time developer KB artifacts

Build the KB like you build binaries: reproducible outputs.

if.knowledge (roadmap) — build-time documentation pipeline

Pipeline the docs so reviewers don’t have to spelunk.

if.story (preview) — narrative logging protocol

When in doubt, log the claim with its evidence handle.

if.discover (preview) — discovery + routing for /llm artifacts (legacy: if.search)

Discovery is a surface: make routing visible and testable.

if.research (roadmap) — pass-based investigation workflow (question → plan → evidence → synthesis)

Investigation as an artifact: separate retrieval from interpretation.

  • Who: operators and reviewers gathering evidence for decisions.
  • Why: separate retrieval passes; keep outputs auditable.
  • What: module posture + review pack (roadmap; no deployed service claimed).
  • Where: https://infrafabric.io/llm/products/if-research/

if.intelligence (roadmap) — research orchestration

Orchestrate research so the output is inspectable, not mystical.

if.swarm (roadmap) — multi-agent coordination

Many agents, one bar: produce artifacts a skeptic can verify.


Open questions / next steps

Where we want critique, not applause.

For external reviewers (Anthropic Fellowship):

  • Is the “receipt-first” posture legible and useful, or does it still leave room for misinterpretation?
  • For if.gov, what is the minimal set of deterministic checkers that would make the decision packs credibly “gov-grade”?
  • For if.bus/if.api, what is the smallest adapter library worth paying for (and for whom: platform team, security team, or product team)?
  • Which module ordering is clearest for “subjects” reading with zero context: gov-first or trace-first?

For InfraFabric roadmap:

  • Add more “worked examples” (adapter payload → envelope → receipt) so if.bus/if.api are reviewable as contracts, not just ambitions.
  • Keep replacing “manifesto tone” with “boring and testable” surfaces (schemas, lints, deterministic transcripts).
  • Grow if.story by publishing more concrete narrative logs (still black/white; no secrets).