{ "schemaVersion": 1, "sourceRevision": "7a0a61232d05ba9097432abef6f7f4102a64d0b8", "files": [ { "path": ".dockerignore", "sha256": "bf97a1ebf1e9b5d01538a0e92a7cd4763139350c46ffbd344c87e13f6da0b8af", "bytes": 150 }, { "path": ".env.example", "sha256": "b1e3e17c79d606b293f5cc027943c83a4cd4fdb4c9b518c50e84e10bb3ccb262", "bytes": 1353 }, { "path": ".gitignore", "sha256": "238a6b3a02cf4b1de38f1c506beab1c3722d604f42100fc1ef3d92b4ed0ab62d", "bytes": 297 }, { "path": "Dockerfile.unraid", "sha256": "644039841da59594f369f80ad0766eb1c934dcddaf4a594cf2bdad1fc685d99a", "bytes": 934 }, { "path": "README.md", "sha256": "8887dc7df5db24b00873789961e855fe08c9a9ce992302cbf48745c50de34285", "bytes": 4738 }, { "path": "backend/Dockerfile", "sha256": "7f8627da7d4d15a9df9a8bb650b18d74dbfa3c226d25ab25070f65709ef6870f", "bytes": 373 }, { "path": "backend/app/__init__.py", "sha256": "a7589dccbf098c71a4bb02f3547e170d0d538db54b17dd355e62f582fe2f0e9e", "bytes": 35 }, { "path": "backend/app/auth.py", "sha256": "4202bb02fa0133a6816e599f3e35426a0604ef407313cee7076e04e96ecc495d", "bytes": 6878 }, { "path": "backend/app/config_io.py", "sha256": "f289ecac3ec35848e0097f2d3c81b4401536586564dc36a8e6a6301952247fe6", "bytes": 7255 }, { "path": "backend/app/demo.py", "sha256": "0c5845029d5cfffae3e83665b7aa89bf715f8646cdfcc525f70abada860ea148", "bytes": 6219 }, { "path": "backend/app/discovery.py", "sha256": "646db051a01658d6f5ef6b75070dceb05a59c40264d56e2761e9fc165e7527ef", "bytes": 53184 }, { "path": "backend/app/discovery_store.py", "sha256": "f83a21b6f71e73314d6602a262d2d2eada0fa83b9db33e59b6d3070c6a2a14bd", "bytes": 48117 }, { "path": "backend/app/docker_discovery.py", "sha256": "170b950925f26ad12e1c285edc039342d2eedbc2af04a7b0683501c65393c957", "bytes": 32124 }, { "path": "backend/app/docker_provider.py", "sha256": "b409d13f149cb15e88f258510787b73ed3b67c92ba3bd9ab30be76473bcaf492", "bytes": 13288 }, { "path": "backend/app/events.py", "sha256": "6f71a41d0154306f5d5f7a215b4ca69cf139448ef78d50f3d6c5aaea48bbe1b6", "bytes": 2154 }, { "path": "backend/app/evidence.py", "sha256": "bf3545eb916326acfc5742c56c99089781babdb1221d62394710b36417bbd5ec", "bytes": 4843 }, { "path": "backend/app/health.py", "sha256": "6e0eb886abc5e3a30f1d256bb3094cc09566cfde8510d433318f18e403ec9549", "bytes": 6131 }, { "path": "backend/app/incidents.py", "sha256": "d87bebdfe902c2875e49067245a571bc30debe9f375d0faab1ea91bb5c2d39df", "bytes": 7327 }, { "path": "backend/app/main.py", "sha256": "16807aa5f8e3301f76d9b5116e0ce1da824814e62bce2efa3f63829ed5d3bd5c", "bytes": 31255 }, { "path": "backend/app/models.py", "sha256": "2e5d6faeb1606f6f66e06aebc236daed996ab1d56d72f84123fe6261ace3f065", "bytes": 28385 }, { "path": "backend/app/observation.py", "sha256": "5714125fe38065d7d4cb9a9cdbaa95e969ae9710fccbc45838f3beaa7588f36c", "bytes": 9078 }, { "path": "backend/app/probes.py", "sha256": "61e5a9bf6dc83973bc56e9d48fa94def7222663de13a4338f5e829ad8b41d354", "bytes": 8436 }, { "path": "backend/app/scheduler.py", "sha256": "4ea3e15d3f107cf5d29c2ce5ec71b2c48826602543fb4c08ebf2edd5a53fd7fa", "bytes": 2544 }, { "path": "backend/app/semantic.py", "sha256": "2c87be83a4c4bef48ab17e7140e7d989058750c5acf42a96a1380bb34272a07c", "bytes": 20105 }, { "path": "backend/app/store.py", "sha256": "5e3713f222521f22cc53eeda4005f46a06d50b13a1f43090b58783f7f4a84ebe", "bytes": 105338 }, { "path": "backend/pyproject.toml", "sha256": "f739af56b1a5dbe009481de79aa5c578cb7b6865cf80cc32b641d4ade5c35534", "bytes": 524 }, { "path": "backend/requirements-dev.lock", "sha256": "466630ac7ad0bccc6ab7e0678a24cbd3132ceb6937b20c0dcf54ba7f373be814", "bytes": 2297 }, { "path": "backend/requirements.lock", "sha256": "f21c3b78c3c852126dfe4e42cd7fca074e2ca3587f5d4cd47539727474dd78dd", "bytes": 1967 }, { "path": "backend/tests/test_api.py", "sha256": "3b8644b53200cdac233dc629be3a1282e332e1f782e215d237f77770fcf7fd2a", "bytes": 7330 }, { "path": "backend/tests/test_auth.py", "sha256": "3023839a1dc787b26d98f738adc8ef212187370878edb53e6a6dbc42fd8fb8ad", "bytes": 2531 }, { "path": "backend/tests/test_config_io.py", "sha256": "382869227e1d0fe6ad10e233ce70978b1adfa42162e2439d0e0747b7ebfc8cc7", "bytes": 3686 }, { "path": "backend/tests/test_demo.py", "sha256": "1290b10727ad668af6639cf7a65a3fbcc89e25c01d17e97ee3f0f60565a3f256", "bytes": 7610 }, { "path": "backend/tests/test_discovery_v120.py", "sha256": "7b3c1242815f65da45ec2d3a57cc1ba89a4a599f8852be781923242104c69472", "bytes": 16143 }, { "path": "backend/tests/test_docker_discovery.py", "sha256": "0fc5b719bf1d0556a3fd6c7befa7e1be2860c5c9e562a357c58b232848b177a6", "bytes": 4966 }, { "path": "backend/tests/test_docker_provider.py", "sha256": "dc949328ba6e3762b40a17c9a61029f538609507d713bee839fce6c639e3873f", "bytes": 8637 }, { "path": "backend/tests/test_health.py", "sha256": "26056d2de98b6546e00e195dfe5fa81fa3a43c697261190abdfd39e40acc490d", "bytes": 3983 }, { "path": "backend/tests/test_probes.py", "sha256": "263f4cf12444f998dd59d72bc75e5976cd9b2b8d52b576bae79e545db3cc631d", "bytes": 4816 }, { "path": "backend/tests/test_scheduler.py", "sha256": "ede0a460f3ed60047db0ecd5f76b09a13be1e93b97b210fc2735116cd1ddc74d", "bytes": 1934 }, { "path": "backend/tests/test_store.py", "sha256": "b43d83b3030d80b416147903666add662ebbd4fc6f8ae3b98e9a50b432dee6ac", "bytes": 3755 }, { "path": "backend/tests/test_v110_features.py", "sha256": "8ad4e82ad5ee65c700aeaf796df46337690c84c494463e5da57968b71819e336", "bytes": 6876 }, { "path": "backend/tests/test_v130_probe_reachability.py", "sha256": "8e021432c4f850958e3d4443e3095502437401890ae02661c43869ca46476724", "bytes": 11754 }, { "path": "backend/tests/test_v140_semantic.py", "sha256": "eb78d80bb4c8a92f6526aa3e4d22d5f44f6ef946c97e2dd12767c404b5531cbe", "bytes": 5382 }, { "path": "backend/tests/test_v160_evidence_changes.py", "sha256": "4fe8d2de180d6b4d265befe6aec8dcb9e1c01be22b42539a9703ed8b9cd9a441", "bytes": 4280 }, { "path": "backend/tests/test_v161_health_resolution.py", "sha256": "1f30ed8929188c6fb0c3fc636ee36ff6e9d016f40a01edc2887585d96353edab", "bytes": 15856 }, { "path": "compose.yaml", "sha256": "ef5c82e6330a2ce8bea27268a0f2a19960f08a26bc6c53b7d84218b342494258", "bytes": 2195 }, { "path": "docker-compose.yml", "sha256": "c051b66f67511a02fb11fb8da18393380662394542830c96927d32d26a7079c9", "bytes": 3239 }, { "path": "docs/ARCHITECTURE.md", "sha256": "ac4d87a866c3d9fc5b19507abbb1f6afb2d68ce5e4729b9e332943755075d2dc", "bytes": 14240 }, { "path": "docs/screenshots/demo-health.png", "sha256": "7814f69214c8b6b65cd735f9a75d9f7b974b88470a37641e3c76bc314e164085", "bytes": 312563 }, { "path": "docs/screenshots/demo-landscape.png", "sha256": "185649a264c5e1fb58d83e1d25da94d5a61b60c4adddb398a55b2298d26cebf8", "bytes": 406522 }, { "path": "frontend/Dockerfile", "sha256": "0d8bf5dd1725879b8ea2859d78a67dd0d499fb1fb87e44aa4efad8c2e89b1899", "bytes": 358 }, { "path": "frontend/e2e/demo.spec.ts", "sha256": "5fe2de577a41f31e3574c75bb0b46a51e695acb1eb8aadbb094d7b4ad0a1e887", "bytes": 7851 }, { "path": "frontend/eslint.config.js", "sha256": "e779a8cbd7200eaf5176c3c031467345dde6af2dac138cc4a32407f14432062f", "bytes": 940 }, { "path": "frontend/index.html", "sha256": "21a1858bfa8b92521d179c05d16991e6c7b0fbef61fe16f7f0f12a72db3e9ab2", "bytes": 865 }, { "path": "frontend/nginx.conf", "sha256": "c07a3ce7936beef0d3f124f18878b46c87693150e83cf571cebbf3f6f6635885", "bytes": 520 }, { "path": "frontend/package-lock.json", "sha256": "4b35333ebae3a5ac1830820cba08561dc12cf244566bb21b5183bf513902aed7", "bytes": 138931 }, { "path": "frontend/package.json", "sha256": "480fd200b705f407e1d1fda6d9a28b09189aaec28b3253d10e463fb0b17a7119", "bytes": 881 }, { "path": "frontend/playwright.config.ts", "sha256": "d959bee365c474dc6380de9056bfb5d27a905b9e4e2c79ee43071e0006d659f3", "bytes": 855 }, { "path": "frontend/public/brand/servicemap-dark.svg", "sha256": "79ed84eba76e6362d6bbb69ef79ea3d3686bb49f89e44d6ae477bd94e87de988", "bytes": 576 }, { "path": "frontend/public/brand/servicemap-mark.svg", "sha256": "12b8f893d5a85c9dc9c96e18ea57735348ceaff420e891483c3c2ebc8e3e7523", "bytes": 671 }, { "path": "frontend/public/brand/servicemap-mono.svg", "sha256": "79e35d1c8ac11d14ae6e83f1d49e37dcbfd79ff207e99610b1f5407b873eed5c", "bytes": 568 }, { "path": "frontend/public/brand/servicemap-wordmark.svg", "sha256": "75f8b5b7698d4959234c96a418e2857d64806ff85d6d9693ac5d06a79bec2a42", "bytes": 855 }, { "path": "frontend/public/icons/apple-touch-icon.png", "sha256": "00206a46b358446d25494be66bd812aff9af40fb972640d2635891e614911f3d", "bytes": 4051 }, { "path": "frontend/public/icons/favicon-16.png", "sha256": "d9f1eaef74f8f4159118fe9a50d05409bfbf92995b6f52ce100184b172a8c205", "bytes": 447 }, { "path": "frontend/public/icons/favicon-32.png", "sha256": "62709f3bcfee2c00be5cfb628e96197d7983e3604a8cbd6669ed59fcd61abf4d", "bytes": 803 }, { "path": "frontend/public/icons/icon-192.png", "sha256": "73ac592d98b2f5d299872b9509bee18533ccb82704e2dbada4b39cb417aa9262", "bytes": 4313 }, { "path": "frontend/public/icons/icon-512.png", "sha256": "26a7927f877ccb98e9e8109fd71518136766edef81dcf56799420c839cfcf826", "bytes": 12350 }, { "path": "frontend/public/icons/servicemap-dockerman-256.png", "sha256": "8c8807d5ef5bae83b9071b2962e90a65fded243f1474e2e27d9ad7ef06441d2d", "bytes": 6066 }, { "path": "frontend/public/icons/servicemap-dockerman-512.png", "sha256": "26a7927f877ccb98e9e8109fd71518136766edef81dcf56799420c839cfcf826", "bytes": 12350 }, { "path": "frontend/public/site.webmanifest", "sha256": "6ccd6440da6471ad2326010f1e1ae5b47760ea058d6b5cd674f0d1567d6a6eba", "bytes": 340 }, { "path": "frontend/src/App.tsx", "sha256": "b78e5998577869103f9260e93fda6b6ab7d81d7f2ddb6f990294b4e8929e2257", "bytes": 141427 }, { "path": "frontend/src/LivingEdge.tsx", "sha256": "0699d5ac00159befe6f37caaceb742c34a8a909079269cfeb0177cca8fb6a954", "bytes": 1371 }, { "path": "frontend/src/api.test.ts", "sha256": "f62fc355a399642b0d809c19c3eb1911bfb4e2eb2e1a8d0effee0cd07c35b105", "bytes": 5837 }, { "path": "frontend/src/api.ts", "sha256": "ac71a7b3adf4188eaa26058afa8ef6c03e023cbbb67b445ca4f7f3227c74d4ee", "bytes": 27507 }, { "path": "frontend/src/auditViewModel.test.ts", "sha256": "e9bd72409f745321af37e54565eb3a2a1777c5696cfa5235aa674c279a6537ec", "bytes": 2039 }, { "path": "frontend/src/auditViewModel.ts", "sha256": "228a7c02b27f4c064d05abe95e544da9a2389bcae8e8b79f97a670319a9ad986", "bytes": 1428 }, { "path": "frontend/src/demo/DemoWalkthrough.test.ts", "sha256": "2d95993bef2286d60cb8ab6cd71b1f081a3f6cabd3f4e8b32791721578933bda", "bytes": 487 }, { "path": "frontend/src/demo/DemoWalkthrough.tsx", "sha256": "1201c5d832475dd7e09b72287343e91e4a363fc79624ec7eb055b68ad2d390db", "bytes": 2214 }, { "path": "frontend/src/main.tsx", "sha256": "b3f023da133154adff448b24c256c554072536939e52291490a6128a9cfc82f7", "bytes": 237 }, { "path": "frontend/src/realtime/useRealtimeEvents.ts", "sha256": "e800faa868b0d2e811848647101f4a21897e22b284b5a24572d0a687a03b47be", "bytes": 3421 }, { "path": "frontend/src/styles.css", "sha256": "6deaffb725b10cee74496187c1364a848ccfb2843b8d278a232e99e6cea5fd84", "bytes": 31996 }, { "path": "frontend/src/topology.test.ts", "sha256": "3a1267d0af23a45889d6a39184ff6f32d89f9ccafc9d53872cbb38931b7a3434", "bytes": 7110 }, { "path": "frontend/src/topology/ServiceNode.tsx", "sha256": "0e3e673d1e148483bdd331b10d7b515348b308f943fd370e8bb2435ac8d4d9f9", "bytes": 3872 }, { "path": "frontend/src/topology/TopologyCommandBar.tsx", "sha256": "3349725592ca64c9a845d1fe677ec7ed919069e0ea9af52373e955698c20e039", "bytes": 8375 }, { "path": "frontend/src/topology/legacyLayout.ts", "sha256": "e843fbb70a14346269987e4a6846fab2b88ff955cf35cd69c691851f7f94ea09", "bytes": 9835 }, { "path": "frontend/src/topology/semanticGraph.ts", "sha256": "53da1a124bb798674b6da14f45ddf7c35a20cacce62d38223b6fc27909854d2c", "bytes": 9526 }, { "path": "frontend/src/topologyLayout.ts", "sha256": "d51e7f827df124f1932b544ce253c09fd3731f36ec66b051cdcc0f2933c38b39", "bytes": 2842 }, { "path": "frontend/src/topologyNavigation.test.ts", "sha256": "7381dc580b132ba55775b50cb623db5497000c5694c7888fb740c2e3fbf87858", "bytes": 600 }, { "path": "frontend/src/topologyNavigation.ts", "sha256": "1fd2d65317ed1445fba823b7351cdcd25b0ab87405f7b1b61505021c5ba23748", "bytes": 976 }, { "path": "frontend/tsconfig.json", "sha256": "9616ea859510ecae0cb8464fbe3bbd1448d66bb5a4ebf40d163e8f14fa8fff2b", "bytes": 545 }, { "path": "frontend/vite.config.ts", "sha256": "72b18ff3a6e5ef68c37ebd6de037943ecbd51cbe27b86342e6222580eecd1e16", "bytes": 359 }, { "path": "package-lock.json", "sha256": "43f354f7539a2315a36d1fa499707e8f198e447b4ee50ec736add96c89d09eb2", "bytes": 215 }, { "path": "package.json", "sha256": "96398a3dbf6e8545aead833277fd60c8405ced51790ad7fe20c99068c3524b6e", "bytes": 490 }, { "path": "requirements.txt", "sha256": "b61a55489732c882dd350b471b9050e019f29ba1965f7eb4cc65f128271dbcf6", "bytes": 53 }, { "path": "unraid/my-servicemap.xml", "sha256": "24bd225838c710187fb93950b29b79f782792c96cffa05062172020a91f69e0f", "bytes": 3110 } ] }