{
  "generated_at": "2026-09-14T23:13:11Z",
  "base_repository": "https://github.com/Robiswell/ChangeFront",
  "base_commit": "fce2ae6edee00dbd68c081f87ae90fe4d1553cf3",
  "source_snapshot_sha256": "21b3b49eb23ee5d04f7c37baf15e05b380d799ad961179e56997f351c4cdb853",
  "method": "Ordered paths and bytes, separated by NUL, matching scripts/verify.py. Includes the separately supplied walkthrough runner and guide.",
  "files": [
    {
      "path": "LICENSING.md",
      "bytes": 839,
      "sha256": "a0798e3be95f816859c2145e6605f5d3a9e25f24da43ee025ec160280a76b56a"
    },
    {
      "path": "README.md",
      "bytes": 6177,
      "sha256": "bdfef31261c15eca5fc09555f99100baeee79f81961d2bdbfdceb7b3054d1973"
    },
    {
      "path": "SECURITY.md",
      "bytes": 606,
      "sha256": "0786310ff28fe0b1744099f0c9c20c40275e4297db750097540656887dd7767a"
    },
    {
      "path": "docs/API_REFERENCE.md",
      "bytes": 2856,
      "sha256": "0a05e04c19c684950ff6cda07052a5c9900977056d4431dc6feee0093991ecff"
    },
    {
      "path": "docs/ARCHITECTURE.md",
      "bytes": 3726,
      "sha256": "6757a5ba0e3d802ee3fc486c710c696e878237d7358ea2b3b393a1c4ae5ddedc"
    },
    {
      "path": "docs/EVALUATION.md",
      "bytes": 1608,
      "sha256": "821f32a788899038bb76759fafb9955ede52a671d7a88acba34b58c66d468e0f"
    },
    {
      "path": "docs/EVIDENCE_POLICY.md",
      "bytes": 2133,
      "sha256": "a432af6c5f748257a9e2e64ada45e04213433bf542656ea7f64f0cd7841ec358"
    },
    {
      "path": "docs/MCP_REFERENCE.md",
      "bytes": 3010,
      "sha256": "13d804b170518dd8381ebd8fe7a3ec526a414ce34bde333203a04d927bcfdc39"
    },
    {
      "path": "docs/RECORDED_WALKTHROUGH.md",
      "bytes": 2757,
      "sha256": "78aa6dab2abff909952181bb2ec250b9a9236908f2c784dec25dcc45ab12bfdd"
    },
    {
      "path": "docs/REVIEWER_GUIDE.md",
      "bytes": 3878,
      "sha256": "79a4ed38791124b50b57aac1aa62fc5781426f0eaddedd57e5523e1a30efb297"
    },
    {
      "path": "docs/TRUST_MODEL.md",
      "bytes": 3281,
      "sha256": "e003c6c941f5a7c01f92eeb816d07e7fbde2fd8109a81dc453ed1309985207e4"
    },
    {
      "path": "launch-demo.ps1",
      "bytes": 2878,
      "sha256": "6aa1d2fb791cd8def44ff2dc2ce58e784672337dd04b2088b5ad858b78fcae81"
    },
    {
      "path": "mcp-server.example.json",
      "bytes": 309,
      "sha256": "fc9b8069225dc487712eaba6b345246443e7fd081c0f17581f29cdc3ca2ef081"
    },
    {
      "path": "plans/implementation-plan.md",
      "bytes": 1713,
      "sha256": "c1bf9d2dca55bbba80573eed67515cafae81474a6d6bd7e1e1fe40a691bf261d"
    },
    {
      "path": "pyproject.toml",
      "bytes": 655,
      "sha256": "6c9a60953c42b28b421faeb3f483b661dbc58bf61b54d8d924828210e589b77e"
    },
    {
      "path": "scripts/portfolio_walkthrough.py",
      "bytes": 10008,
      "sha256": "d4851e701ef3d074e3cd3ed2a4deca4e4d39f9dd56a3b2dc911925e9f8d9c0ac"
    },
    {
      "path": "scripts/verify.py",
      "bytes": 5533,
      "sha256": "1c54058945d189cbea27bf10a7d6d4d0997f421025d7687d501a1c0d5ef23bcf"
    },
    {
      "path": "src/changefront_ref/__init__.py",
      "bytes": 222,
      "sha256": "3d082d380a18697111d66f334219538955999af9e5bedef22f6f7aef923c4489"
    },
    {
      "path": "src/changefront_ref/__main__.py",
      "bytes": 49,
      "sha256": "0f7d54f3fbb1f79a85eb8110f11793db99da6f3c61ee979de5abe9a1b5f3fdb3"
    },
    {
      "path": "src/changefront_ref/cli.py",
      "bytes": 2735,
      "sha256": "3b738b3ec7183e964eb103fd28b3488c72b62055559fd8bcdc328db9e0cc2e13"
    },
    {
      "path": "src/changefront_ref/errors.py",
      "bytes": 485,
      "sha256": "292fed3a554950b74338850047fd7926e4d1778c3c42d0a2752cb8c2be69bd82"
    },
    {
      "path": "src/changefront_ref/fixtures/synthetic_demo.json",
      "bytes": 4497,
      "sha256": "010f60ba1c715df3d66f5a22d12a05bec437ee6d8a0dd542d3d559d7226d731d"
    },
    {
      "path": "src/changefront_ref/mcp.py",
      "bytes": 16903,
      "sha256": "7b54528f3918e00486a3fc36aec2c02d08062846227d9f736b7c9c23071f0a53"
    },
    {
      "path": "src/changefront_ref/seed.py",
      "bytes": 2641,
      "sha256": "84ae4d85803f15dd97045094de783a3df7e84e1540a2b333e63ad588e76d06a9"
    },
    {
      "path": "src/changefront_ref/service.py",
      "bytes": 46562,
      "sha256": "8eead4e9308b958b488844ef82f4e167fcbd328f264fb87bf94b8e5095b81e05"
    },
    {
      "path": "src/changefront_ref/static/index.html",
      "bytes": 17407,
      "sha256": "74e7a23c3f2cd16bede0d10c92a2eff27ba54ac131090fc5d8436fcd0c035344"
    },
    {
      "path": "src/changefront_ref/storage.py",
      "bytes": 7948,
      "sha256": "dda09201e276bc012bb324d8f07ae7b93a861f1efb518a8a9074ff453e276527"
    },
    {
      "path": "src/changefront_ref/timeutil.py",
      "bytes": 860,
      "sha256": "299b4612b74d49da9bf7025ff0449ab276ca6c30a98f7ca68ab3292b564cdebf"
    },
    {
      "path": "src/changefront_ref/web.py",
      "bytes": 11172,
      "sha256": "646eb280729c34ba93e4071768eebdb1e44eacf1f1ee9763ff4399738fc20ff0"
    },
    {
      "path": "tests/__init__.py",
      "bytes": 202,
      "sha256": "135a805e5eb4e44ae05b2f53522af59ec6cab8eb847566350ec64a82ce4c7496"
    },
    {
      "path": "tests/helpers.py",
      "bytes": 3186,
      "sha256": "1a1b5b79f2ca0c1cabb39be9a3be2bc275c7d60d128adc62fc5415f9b3c8163c"
    },
    {
      "path": "tests/test_api.py",
      "bytes": 6811,
      "sha256": "06f1ad466f57300aeda7d0412ecc1c4666b69a9a07e74de6f8b0ad6add165853"
    },
    {
      "path": "tests/test_mcp.py",
      "bytes": 10531,
      "sha256": "25514a8f5b88229b1b89314da17d283bdef67d1640f6a850b672fb27c2b41a4c"
    },
    {
      "path": "tests/test_service.py",
      "bytes": 11464,
      "sha256": "11554f8ef1f8498ff419521aa2b4c6617e382a804ac367a2b7a8ea70c3eb732f"
    },
    {
      "path": "verify.ps1",
      "bytes": 1328,
      "sha256": "4e68f6fae75b847e1b4d794af2eb9300861778114a22e00547ddcd4b30811927"
    }
  ]
}
