Back to review · Raw Markdown · Review pack (HTML)

InfraFabric External Review Pack — Single File

This is a single-file bundle intended for review environments that cannot reliably fetch multiple URLs.

Links

Alternate host mirror (same paths)

Review instructions (portable)

Hard rules:

  1. 100% factual: every non-trivial claim must be tagged [SOURCE]/[REVIEW]/[TRACE]/[INFERENCE]. If unverified, say “unverified” and stop.
  2. Vendor-neutral: critique deployment conditions + org behaviors, not vendor intent/competence.
  3. Mirror discipline: follow the review document’s section order; do not invent a new structure.

Deliverables: A) 5–10 bullets: what works / what doesn’t (tag each) B) Scorecard (0–5): mirror integrity, layout fidelity, humor discipline, mermaid value, if.trace demo value, CTA stealth C) Section-by-section critique (mirror headings): what’s mirrored, what’s missing, what feels templated/repeated D) Vendor-safe conclusion rewrite: success conditions / traps / questions-to-ask-vendor E) Unified diff patches against the current Dave bible (e.g., IF_DAVE_BIBLE_v2.0.md) and generator rules

if.trace receipt (portable extract)

{
  "id": "4fc13c3c-09e7-474f-ad9c-4c2a48d75503",
  "status": "done",
  "createdAt": "2026-01-05T21:24:07Z",
  "originalFilename": "if-api-github-webhook-demo-source.tgz",
  "style": "if.api.github.webhook.demo.v1",
  "sourceSha256": "8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83",
  "outputSha256": "cb15635417e873e8409c8a4a4ca504fdfc0d1a1d74ab1d02036b5c811f513034",
  "warnings": ""
}

Review document (Markdown)

# if.api demo — GitHub webhook normalization (receipt-backed)

**Audience:** external reviewers + operators  
**Reality gate:** this is a demo of a transformation contract, not a deployed integration.

---

## Links (HTML-first)

IF.TRACE/T3 receipt:
https://infrafabric.io/static/trace/Z_kiBtTQHztidcgYYaSRy4UK

Pack (HTML view):
https://infrafabric.io/static/pack/Z_kiBtTQHztidcgYYaSRy4UK

Pack (raw Markdown):
https://infrafabric.io/static/pack/Z_kiBtTQHztidcgYYaSRy4UK.md

Source bundle (tgz):
https://infrafabric.io/static/source/8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83.tgz

---

## What this proves (black/white)

This demo proves:
- a known input payload can be transformed deterministically into a normalized event envelope
- the transformation output is bound to IF.TRACE/T3 receipts (hash checks; signatures only where present and verifiable)

This demo does not prove:
- GitHub auth, rate-limit behavior, or live webhook delivery
- any shipped `if.bus` runtime or message broker

---

## Demo artifacts

Source bundle sha256 (tgz):

    8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83

Input JSON sha256:

    29ed81a254ba70108386a09688d159f131734fbc915fcfaf2ad0ae0cc8e82765

Normalized output JSON sha256:

    cd34502dd28a8d031893c9b1b52bd6dfaf374080e07249977b61e0d73a3651ac

---

## How to reproduce (no internal access)

```bash
curl -fsSL -o if-api-github-webhook-demo-source.tgz "https://infrafabric.io/static/source/8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83.tgz"
sha256sum if-api-github-webhook-demo-source.tgz

tar -xzf if-api-github-webhook-demo-source.tgz
python3 normalize_github_push.py github_push_sample.json > normalized_event.json
sha256sum normalized_event.json

Expected sha256sum (source bundle):

8b6107c1da94774c99f35286cfdf6967891cd7b4c6101d3a4776236ddcefdb83  if-api-github-webhook-demo-source.tgz

Expected sha256sum (normalized output):

cd34502dd28a8d031893c9b1b52bd6dfaf374080e07249977b61e0d73a3651ac  normalized_event.json

Output (normalized event envelope)

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