{
  "date": "2026-10-20",
  "files": [
    {
      "path": ".gitignore",
      "sha256": "ebf6f8770409f9a4867a39b4c8d63680b23dcfba75169b8cb37c247cc41cbb54"
    },
    {
      "path": "README.md",
      "sha256": "d4269bbf6a68f628eef683ad1074db16e994f63b2c45d7bd75da53f34150fd2a"
    },
    {
      "path": "compose.yaml",
      "sha256": "d72383b994d94f1f1516fbad87a22c89c22c7d2e9cbb9ebf0d3b8bd3ab4b9088"
    },
    {
      "path": "db/catalog.sql",
      "sha256": "70f7fbd91e867a5cb32cdf1179447e4cecdc8c78e8fed0abeec7f7992d129b61"
    },
    {
      "path": "db/openbao.sql",
      "sha256": "47bf52821db05f685ef34bec691edd677560d90c2c522fa3bd41a10ea28c9d14"
    },
    {
      "path": "db/schema.sql",
      "sha256": "0860c2341178e058aecff8a85a43a3848f1d212b4b2a3b002c07678466c9bada"
    },
    {
      "path": "db/seed.sql",
      "sha256": "8b0a9939e3d610d086bc2ecf42a11482543823b6e292539ef172df134777c846"
    },
    {
      "path": "db/views_permissions.sql",
      "sha256": "10ea303d8b941589ff54d3a0cec322cbdc273d0d3d469f1bf231e68f6fcabb64"
    },
    {
      "path": "grafana/dashboards/textile.json",
      "sha256": "f188c77e1ff143c2708f5a8f0ce45116f2ae4bf7d9e5fb63b6fac7a0ada984b8"
    },
    {
      "path": "grafana/provisioning/dashboards/textile.yaml",
      "sha256": "29d895ce5e80b154166e255b191b7c1c14be4744fcb2f5873dadb184b67acadb"
    },
    {
      "path": "images.env.example",
      "sha256": "c5570f6a30a2cad87bf61e1592defbaabf257d31eef03abef8ae3c678ac73ddd"
    },
    {
      "path": "keycloak/start.sh",
      "sha256": "563ee22fbc3309cfc106f3a2dc919caeb5816ef4e745b47eb122d45e9d871b36"
    },
    {
      "path": "nginx/default.conf",
      "sha256": "1cc2f9a492bc3131a5db511454084a078ec69fa62cc4353f77379b134955f229"
    },
    {
      "path": "openbao/backend-policy.hcl",
      "sha256": "975a0ef7440c05f7f81025940e2917940ecb90097ea7db42f0810b56c2b697ac"
    },
    {
      "path": "openbao/config.hcl",
      "sha256": "0e42cda77e896a32e392d0aa01fdaa308449008114d9de35a8c6aad7c24cb772"
    },
    {
      "path": "pgadmin/servers.json",
      "sha256": "62481ca0fc133afb4cfc2ae38da557fc8337ebc979b58d8896cf51ecf6b46a24"
    },
    {
      "path": "portal/catalog.json",
      "sha256": "dc4144648cc167978c2dff6abc9193dd2024a7d3c97ade4974e7d5f812e9ab86"
    },
    {
      "path": "portal/index.html",
      "sha256": "7d8a76ec8e7fb6005f793d2c6d3141163ab36a060ee44b26daddaa96ece67364"
    },
    {
      "path": "queries/overdue-sales-20261020.sql",
      "sha256": "db255102fe42740a371ac1f8c941d590c6245b0294c2a9a4b81a5da5ed6314bc"
    },
    {
      "path": "scripts/backup.py",
      "sha256": "b6a42296e2e37a6d50e7d2bef9a2e575ae6c94bfff95f8095df5dbfcabe1a7ca"
    },
    {
      "path": "scripts/bootstrap.py",
      "sha256": "3aec2de9b84f5746b8e4a522995c3a14e0a37c871fd3950b151f6d5ce1cfd044"
    },
    {
      "path": "scripts/configure_grafana.py",
      "sha256": "e4107fbab074b61d082b13d70666ab434ee15df476de27f97f0f1ba02a6c2241"
    },
    {
      "path": "scripts/configure_mcp.py",
      "sha256": "d7e7aa871685810f480ef4472bac33a650eda7eb3d6d27d1af9901cb5703c336"
    },
    {
      "path": "scripts/configure_sso.py",
      "sha256": "011001f673901e52ce0be226d2ced0717a5363b030c6216a356f6f9dff331987"
    },
    {
      "path": "scripts/pin_images.py",
      "sha256": "1656e375781be891b466c43721ac19eff4c07d8e2a8f7a2c57172f6a982164c2"
    },
    {
      "path": "scripts/preflight.py",
      "sha256": "9fb80375faac976186e942cb04d5ee8586aae40e1f1e0b1e5b4204a99c4b7eb5"
    },
    {
      "path": "scripts/prepare.py",
      "sha256": "310dd8a65154370d6cd0adb6b87816569e7cc0c10bbea934a4c9e43ff5272476"
    },
    {
      "path": "scripts/prepare_openbao.py",
      "sha256": "1329f413366c77a70e55121b4c975d6868b61753787d606b4203780d0245d3ea"
    },
    {
      "path": "scripts/prepare_sso.py",
      "sha256": "63916d9b3db7b0e2c11e6d0251486ac48f838d6a9b39d6502381e55014f7dfd1"
    },
    {
      "path": "scripts/setup_openbao.py",
      "sha256": "ee892640e8b23790a5dae642d114d5b2f8ff953f315c0e935c58e9e38059bbe6"
    },
    {
      "path": "scripts/verify.py",
      "sha256": "4f1032673eaebd7629011a9cb9251d93dbff4bbdb67a575eda19b7514bbb7ec5"
    },
    {
      "path": "scripts/verify_mcp.py",
      "sha256": "b6bac83e03e7d1121a248840c16d82d60e4217c4310393f7f0802a9a20160a2a"
    },
    {
      "path": "scripts/verify_openbao.py",
      "sha256": "bbc53076e23598f83ed7a9623abb6f29c05ef6557ccf16ee9751979567be4107"
    },
    {
      "path": "scripts/verify_sso.py",
      "sha256": "05c9d2ba3b724db43ff7c15a09df3410bec26a70e959d54d8ca889fc1c4e3991"
    },
    {
      "path": "sso/Dockerfile",
      "sha256": "52fedeb15221d73ca0632e70691d08636f1034af67373232274152923898be3f"
    },
    {
      "path": "sso/app.py",
      "sha256": "af025a2e524c9bfc125e3b68d8a66726c96de0647d31f97495ec9d3566f34a8a"
    },
    {
      "path": "sso/bao.py",
      "sha256": "f2258062d6348d313f4618828503a7318099deae0e0dba3d1d14274d46db7113"
    },
    {
      "path": "sso/index.html",
      "sha256": "2ec7a17659ad2c6b27d51caa6f024009787a7ff782dabde742622da06f392d50"
    },
    {
      "path": "sso/mcp_api.py",
      "sha256": "b5835ad71dc25eed18e06ff0296a5a0d39a58864db6261610cf272f57a28a2f2"
    },
    {
      "path": "sso/orders.py",
      "sha256": "7e9b92b47609aedf67ada1c547146a75bd1e45ea3df3f9808d46e96c1dade762"
    },
    {
      "path": "sso/requirements.txt",
      "sha256": "819450d178e152cd744862af7325cc267d381bf6bacf092af6baf5c45d25cae7"
    },
    {
      "path": "tunnel/README.md",
      "sha256": "cbad50dd983dd343ed6248eac7cf550ab40638df3c95cd27a8c1364e2fe9a67e"
    },
    {
      "path": "tunnel/textile-mcp-tunnel.service",
      "sha256": "3bdb0c65957d21459b1b9c492b1e01d480426857d3ed3ef9f43e8188de37bd8d"
    }
  ],
  "archive_sha256": "ff6cd0e385d602067441f381b34cd37d0f9bce28fe9f5e5dffa1b40302ee11b1"
}
