{ "schemaVersion": 1, "sourceRevision": "b1b437d847564b37e62e2da253cd3f0dd4cda0ae", "files": [ { "path": ".dockerignore", "sha256": "c00a4e4effef6a7a77b14ffdf45c01040344fd7e4c5366c55eada3a8e3975c19", "bytes": 136 }, { "path": ".env.example", "sha256": "d330c4ef60e843b1c7afab674d19ffeb8dbae7afe7be401494c50738f88ef0c6", "bytes": 1321 }, { "path": ".gitignore", "sha256": "43b98f70c5759502e98cf59e139edfd522fe0cfdba47fd9c0d5ef076d9a50824", "bytes": 268 }, { "path": "Dockerfile.unraid", "sha256": "ee62d905b84f8246e1d4634ea0acdd385be371805ff4ff24efe8987b49d3b326", "bytes": 904 }, { "path": "README.md", "sha256": "8887dc7df5db24b00873789961e855fe08c9a9ce992302cbf48745c50de34285", "bytes": 4738 }, { "path": "backend/Dockerfile", "sha256": "feb54353dd7dc2790d5d0b9acd9064845082e540fd3d0150bd25d7d711859b55", "bytes": 359 }, { "path": "backend/app/__init__.py", "sha256": "a92a1d83b9c8b121eb7f0ae90305b8f08c61bc81c997441c050755e56dd440ed", "bytes": 34 }, { "path": "backend/app/auth.py", "sha256": "72df1122912bf79c664386e48a5f251322b3dd7ea310df56418e02aed7930edd", "bytes": 6700 }, { "path": "backend/app/config_io.py", "sha256": "801323f5749570b48dc15fb5df7a71c557c8629cb1830542493ed117600f6cb9", "bytes": 7082 }, { "path": "backend/app/demo.py", "sha256": "582a38df568726386f122458d5186e3b78e47caf9943aa73b20ab47cf37b5f38", "bytes": 6098 }, { "path": "backend/app/discovery.py", "sha256": "50f1829a80037208a8645bf7b617e21daec2500dc25f3806c23b2937a464ad3a", "bytes": 52188 }, { "path": "backend/app/discovery_store.py", "sha256": "cabc2ce75950e7b3b950d75dc6ee620b5f470ef0799d13c37af5877cf26140ce", "bytes": 47138 }, { "path": "backend/app/docker_discovery.py", "sha256": "0d25862558aa735334b1fd3ac1897fe297f384e8fe93df95ec371ffb2f2f0ce4", "bytes": 31442 }, { "path": "backend/app/docker_provider.py", "sha256": "6fe522ff7ba2c828c1eb78d3cfabc3dc2eb36162616a1a312e6e4aede3ff9d08", "bytes": 12954 }, { "path": "backend/app/events.py", "sha256": "038d4536f55bb2ad9918a6e5450b0b46e11067b3a2773efe040f071a31cf2c52", "bytes": 2091 }, { "path": "backend/app/evidence.py", "sha256": "b0ec499cbc1ddb23b30a37bf3a5f2c8804a0a9b904448e4e967834818cd4c08b", "bytes": 4709 }, { "path": "backend/app/health.py", "sha256": "591ae93438e98359d397c2c765ec57e7a0e2e2b1dd93f18835d8a48c256de10f", "bytes": 5964 }, { "path": "backend/app/incidents.py", "sha256": "a061a60377ad46606f9be6bff096fb48b65e93ae6302fdc6a5d741ec651a0693", "bytes": 7147 }, { "path": "backend/app/main.py", "sha256": "7ce4163b281c8f987a492c1cf227188aafefbd6720691431b0aee6909e6aa45c", "bytes": 30512 }, { "path": "backend/app/models.py", "sha256": "ed6a764feea6fe44bf6733fa056d924360775673acb7d6c664f5af821483b5d1", "bytes": 27523 }, { "path": "backend/app/observation.py", "sha256": "2ffc1158f521e7db57c9b8346b851671725392a4e573e89594f4f0ce18df77f6", "bytes": 8872 }, { "path": "backend/app/probes.py", "sha256": "bffd02553a09a94fd0598da8e439a0c284d3389611aab9247b4f9fae1b67ffb1", "bytes": 8232 }, { "path": "backend/app/scheduler.py", "sha256": "9d56e72ffaf4076f278be858e7e14b3daceb7655c37a008112a8542bdb89c895", "bytes": 2477 }, { "path": "backend/app/semantic.py", "sha256": "50c5f2d745ba2becad13cb56a9055aa92e0bc8b943e067847e8ef7e8823f9444", "bytes": 19676 }, { "path": "backend/app/store.py", "sha256": "261d66655ec5567fbdb2fbf1b41abf3f807e509b76a188cb8b50799cc2852a85", "bytes": 103326 }, { "path": "backend/pyproject.toml", "sha256": "48114fc2a566ac60bd6e9f4dc53f87059940193618d48373ee022e5847d81703", "bytes": 498 }, { "path": "backend/requirements-dev.lock", "sha256": "58c96be27356b8778a5b22ad1ee4504bbb68f7249e6ffb4802c746b463532c66", "bytes": 2191 }, { "path": "backend/requirements.lock", "sha256": "74e077cd2f8ee5e3f1fc2276b1e565e429e00adf92a578255d96e012fcefdec8", "bytes": 1875 }, { "path": "backend/tests/test_api.py", "sha256": "be344d9ac4649de26a9c5a7c851f469c3cc397ddc63fa976ec67f06882af34eb", "bytes": 7148 }, { "path": "backend/tests/test_auth.py", "sha256": "d5af3045a289ed9a76ffc40e60a649d841012a2c0e70fff16272b6e7a56a74cf", "bytes": 2462 }, { "path": "backend/tests/test_config_io.py", "sha256": "8e994652538ed20c35d20ed6020635017374b09e509a3f0ce3a6d40ed308732a", "bytes": 3553 }, { "path": "backend/tests/test_demo.py", "sha256": "1dc5d298ee23b52c55440964fab96b6b3e00f56138cd2ba85158c1a6c5cbff88", "bytes": 7424 }, { "path": "backend/tests/test_discovery_v120.py", "sha256": "02ffcc2d06cecce44574c8c91f2d170af83ad490a984f85dd1a39d83af785f2d", "bytes": 15798 }, { "path": "backend/tests/test_docker_discovery.py", "sha256": "217e520b18618f7436cd0dd386e840e4dcbf934cd57be7fa9e38a9fafc9e80ca", "bytes": 4831 }, { "path": "backend/tests/test_docker_provider.py", "sha256": "57ffc4d4ffcf3198a9261b284c3fd8166bd1670220d917c54a9ea6cb0d309e1e", "bytes": 8393 }, { "path": "backend/tests/test_health.py", "sha256": "391c17b69b056a4276b68f2a118339a8c5164327b3910612466dce236a3d787f", "bytes": 3884 }, { "path": "backend/tests/test_probes.py", "sha256": "f8b9c21963e17e55abf56ab911411b4e4b86f8bc7bf84a13fb18e65e0527a613", "bytes": 4660 }, { "path": "backend/tests/test_scheduler.py", "sha256": "31ab725da5d1d584784a64fa736ca1776a1bed6415bfb8bd57f08e6645545384", "bytes": 1865 }, { "path": "backend/tests/test_store.py", "sha256": "e71d6b09404e5c7c80c227c5606b1796415e7b242567f454fe7f12ccf1b0e0d4", "bytes": 3648 }, { "path": "backend/tests/test_v110_features.py", "sha256": "b3a6114560561ffef672720c3881707c804c9612f05e3ab2fe73dd863ba58a1c", "bytes": 6717 }, { "path": "backend/tests/test_v130_probe_reachability.py", "sha256": "d8fbe8f6b4dc6c3fd608986b83db260383dc0d830056de08a26d6e006336227a", "bytes": 11432 }, { "path": "backend/tests/test_v140_semantic.py", "sha256": "90f5e65e9493eaf8646395c181e517951386c79344cbb5c3a768d36c580f0aa4", "bytes": 5255 }, { "path": "backend/tests/test_v160_evidence_changes.py", "sha256": "bf37810c1776e8cf90821c32060cb5cd82c34acacd76c5a0f268ab01458b9dcf", "bytes": 4148 }, { "path": "backend/tests/test_v161_health_resolution.py", "sha256": "892d0d83b17dbd279d551bd216a77835361e1b0a44be17804be9a97045c09222", "bytes": 15509 }, { "path": "compose.yaml", "sha256": "26f2744d15f1db2840c48601515cbddd59d7e710105ba965520405e4005e0da6", "bytes": 2129 }, { "path": "docker-compose.yml", "sha256": "bb3f897d9edce88ff5a7aa863a4e3991df4f2bbb70b8506ad7acd20f1c06da69", "bytes": 3169 }, { "path": "docs/ARCHITECTURE.md", "sha256": "a643ac3388ae58db587c3d9d91b169aba8cf8e904560b4c497c191b5e6e8f40a", "bytes": 14121 }, { "path": "docs/screenshots/demo-health.png", "sha256": "7814f69214c8b6b65cd735f9a75d9f7b974b88470a37641e3c76bc314e164085", "bytes": 312563 }, { "path": "docs/screenshots/demo-landscape.png", "sha256": "185649a264c5e1fb58d83e1d25da94d5a61b60c4adddb398a55b2298d26cebf8", "bytes": 406522 }, { "path": "frontend/Dockerfile", "sha256": "c213e75d23f78f5f1bad478c0d119335c66df4e9fdc1057713fb35ddffb6843a", "bytes": 345 }, { "path": "frontend/e2e/demo.spec.ts", "sha256": "7f64c79a0d244f680057979b38ad3891607e95442e50b77d48453bf9d4bb1e49", "bytes": 7681 }, { "path": "frontend/eslint.config.js", "sha256": "b9a6e41d37acfc69be5f79bc6b2cd0676633999cc4059f03a04b66ef315769f8", "bytes": 902 }, { "path": "frontend/index.html", "sha256": "8ffed1c9e71561358251b68009a20c5902364690ac7cbc141ff0165559e4a372", "bytes": 846 }, { "path": "frontend/nginx.conf", "sha256": "efbdd38d0aa6cec003952d001194c6dfa6450db9f9be2dcef7f5fa1f4703e608", "bytes": 497 }, { "path": "frontend/package-lock.json", "sha256": "2e1c1a36d5198a399cd61e77c0c5f79f8cbce5ddf9b212a65ff20715e299b90e", "bytes": 135002 }, { "path": "frontend/package.json", "sha256": "d3cf704c4e5ee73c1a4a149db52ce44b7155f1021399397bf190dd3bc0fad68d", "bytes": 847 }, { "path": "frontend/playwright.config.ts", "sha256": "cf40a43af5adb6a1e5eac91288933dcd8bffc14587e6f0d6fee61d24b4720599", "bytes": 828 }, { "path": "frontend/public/brand/servicemap-dark.svg", "sha256": "88a1b7efdd0d802e5e437abee6fecf05fa980b9ba8e04c0eeed57722e84099c1", "bytes": 575 }, { "path": "frontend/public/brand/servicemap-mark.svg", "sha256": "5be5d29d789fcf6b09c206e0063c812729df7f488fdafa4ccd1d73b6ed8ed612", "bytes": 670 }, { "path": "frontend/public/brand/servicemap-mono.svg", "sha256": "f863dbc3cc0e4e9ede607f9fac303dd6b94adf93729b2d12c0e4f035465353d3", "bytes": 567 }, { "path": "frontend/public/brand/servicemap-wordmark.svg", "sha256": "ffab97768f78878b78514cdd09e958963d8628839e06bf56405093041fb890e0", "bytes": 854 }, { "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": "731064d902d1d1c1ce1754097dd0acb87bfc9d4460f4fbdfcc7579d39183f87d", "bytes": 339 }, { "path": "frontend/src/App.tsx", "sha256": "1e5810061bfbcaa690321f14c5d6137efa53689dd7e6ad9caf62d8295ac2fbea", "bytes": 137688 }, { "path": "frontend/src/LivingEdge.tsx", "sha256": "2efb46345431d63e0bd45d7a9dc297e8f88a44c045d31f2aa303890c8c93bb0a", "bytes": 1322 }, { "path": "frontend/src/api.test.ts", "sha256": "e119e948b47dd1c1136732f15de937c6ba2c41a1209c983737f49e984a241368", "bytes": 5705 }, { "path": "frontend/src/api.ts", "sha256": "8b0cc28dc4122c25cf4cf5e46ee26c3ba94276cdd9d2599e4b88244bf1bef7d6", "bytes": 26567 }, { "path": "frontend/src/auditViewModel.test.ts", "sha256": "caacdce22183f6c73427bf86902a692e62d6c65528bfddeb8652add8fe52324b", "bytes": 2002 }, { "path": "frontend/src/auditViewModel.ts", "sha256": "4bb1a4fef5b539a448b1b6c6f8a3ec0032ffefe22a13ee4f72dc7a1b2d325197", "bytes": 1397 }, { "path": "frontend/src/demo/DemoWalkthrough.test.ts", "sha256": "57d2f80de3965e8b99e6d2df9068544d7d933490d17568b7d887b2e9672d0e33", "bytes": 472 }, { "path": "frontend/src/demo/DemoWalkthrough.tsx", "sha256": "b81ee31bee55c6db6e4061e7db3c06dcd900554b9c0de6b42266becf9877e6e5", "bytes": 2137 }, { "path": "frontend/src/main.tsx", "sha256": "77aaa85d0a532963cd63d1c6171a833f73b608dd83b4085f855b279dbe922939", "bytes": 227 }, { "path": "frontend/src/realtime/useRealtimeEvents.ts", "sha256": "bc8a1e1b9991936fc7521c2e275a941468ed97a027cd001ebc664c31db7920e1", "bytes": 3303 }, { "path": "frontend/src/styles.css", "sha256": "af382edc68308fc050d1cfb5f35e0e9be4e0388acf8ccd5e10dc5d6a213015c2", "bytes": 31620 }, { "path": "frontend/src/topology.test.ts", "sha256": "80dbcbefbe5f661d78ed72c78d951691fb8a8d1741438cabb05d6a414907f735", "bytes": 6887 }, { "path": "frontend/src/topology/ServiceNode.tsx", "sha256": "1c188095fab61639d1d9341a2fa3eb9ce377008d6f0ccc6c128a1496438d44cd", "bytes": 3755 }, { "path": "frontend/src/topology/TopologyCommandBar.tsx", "sha256": "c74509e41a2574a43907d2d9365d0c552c4534da86c9644f17b7e6da99e374a9", "bytes": 8184 }, { "path": "frontend/src/topology/legacyLayout.ts", "sha256": "6d2af3d9a09dc1dc5f0c86623c80f2b1a2e40fd485514c66ca5101b308b9bacb", "bytes": 9550 }, { "path": "frontend/src/topology/semanticGraph.ts", "sha256": "88ca18c486ad119ca84a31341135f6c7a3482a9b1df6351dc316e4c12d8be754", "bytes": 9270 }, { "path": "frontend/src/topologyLayout.ts", "sha256": "61fcec5486324d7558deca0d3b16014589df27375fcdb3aa6dbf30bc089b4062", "bytes": 2754 }, { "path": "frontend/src/topologyNavigation.test.ts", "sha256": "736e715414b5e841b01e3b8ca2b7514a63d961ea0d047e492e88721f66af6c20", "bytes": 580 }, { "path": "frontend/src/topologyNavigation.ts", "sha256": "449fcfa98e044314050c6b9016be53525f9c6c648fc1d94807deabd20e0324c9", "bytes": 939 }, { "path": "frontend/tsconfig.json", "sha256": "cc32a3c2be133425d30e112e3dc863c9dbe1ecbbdd81123abf6d6a0300a8ae5c", "bytes": 525 }, { "path": "frontend/vite.config.ts", "sha256": "e0ea9967c3bc6624bf8b8a58ecc7a8772da8dec62c4097764edc9951ee027de6", "bytes": 343 }, { "path": "package-lock.json", "sha256": "11d3ccff95db4efe5af950fa5c4d6374d5d21e62e2910d9280e0a063d5697303", "bytes": 203 }, { "path": "package.json", "sha256": "a26509b2cb00f1509a64903a70e376ad5e5ae4e4284bd24ad5117bf38fe2fb38", "bytes": 478 }, { "path": "requirements.txt", "sha256": "5e311628d99affad739d417391e5fdb52300ee46e201f7b165973a3ebe0c9920", "bytes": 51 }, { "path": "unraid/my-servicemap.xml", "sha256": "e5faff675682a5af3a0403babc973727b1607ad6417e598a6d9922326bfa3329", "bytes": 3083 } ] }