diff --git a/PUBLIC_SOURCE_EXPORT.md b/PUBLIC_SOURCE_EXPORT.md index 4064c03..c9e17cf 100644 --- a/PUBLIC_SOURCE_EXPORT.md +++ b/PUBLIC_SOURCE_EXPORT.md @@ -1,3 +1,3 @@ # Public source export -This source snapshot was generated from the private canonical repository at revision `2ed1787c0b52de6ffb2bccce978b8f6172506404`. It contains no private Git history or operational evidence. Changes are published from the canonical repository. +This source snapshot was generated from the private canonical repository at revision `db8c79fe5c6c08f4971437d5893c390fd4e45de5`. It contains no private Git history or operational evidence. Changes are published from the canonical repository. diff --git a/PUBLIC_SOURCE_MANIFEST.json b/PUBLIC_SOURCE_MANIFEST.json index 7e494ac..edfeaab 100644 --- a/PUBLIC_SOURCE_MANIFEST.json +++ b/PUBLIC_SOURCE_MANIFEST.json @@ -1,96 +1,96 @@ { "schemaVersion": 1, - "sourceRevision": "2ed1787c0b52de6ffb2bccce978b8f6172506404", + "sourceRevision": "db8c79fe5c6c08f4971437d5893c390fd4e45de5", "files": [ { "path": ".gitattributes", - "sha256": "ec40b1ed8e5152ca4175bbe97be43f0e2e911894112dc6a47c2c348069f79abf", - "bytes": 87 + "sha256": "207d4423c8c4d472b7295f4a087c3683a6e5a0aa121bab5f86cf5d64c05a911a", + "bytes": 84 }, { "path": ".gitea/workflows/quality.yml", - "sha256": "d80f0fe159d2a1604002db4272d1d49cc3ec2097100b3a3bbb3741a855fb1a11", - "bytes": 1900 + "sha256": "404089c6387cc6a3eff9ce5b378fbaf62872ee6faaea36c1b3a7f5f9e176b127", + "bytes": 1854 }, { "path": ".gitea/workflows/release.yml", - "sha256": "57c23e82b677004d6a006b7c29990aef9fa28e77af3a83301bc1eb116150dfac", - "bytes": 4959 + "sha256": "51ce6b5cc8c8cc5b871dcdecca28664e2b8c9f948b6b989389cc22d9b5f943c1", + "bytes": 4854 }, { "path": ".gitignore", - "sha256": "83fac3efff45f3dc926080b280ae190b6bb40eb8dae7b8cb5d27255759bc9c47", - "bytes": 267 + "sha256": "fb97a741bb8aefd4ef2472a2fe5c2e1228c71aba8f47a515a49ab7db74a8b633", + "bytes": 243 }, { "path": ".nvmrc", - "sha256": "12d3a4efa6646b3ece4782f70033b9785bf0d167b553c43e22579b031cea5c4d", - "bytes": 4 + "sha256": "f14b4987904bcb5814e4459a057ed4d20f58a633152288a761214dcd28780b56", + "bytes": 3 }, { "path": "CHANGELOG.md", - "sha256": "343ea8dc00a3257801ecc199518a65d4d4adb2644c3acf7b614eb66032ab2afb", - "bytes": 15969 + "sha256": "5f4aca19a35cbcaffa1a6993ce96b7d66052ec2b286022f2af74594e8a310568", + "bytes": 15712 }, { "path": "CONTRIBUTING.md", - "sha256": "3754dcaa776ead5dc60b4955ed4294fd8580577ecb9ce29cb0d9fbbaf9253313", - "bytes": 811 + "sha256": "0fed3d284971668ef9fd85c61b893b8f49e3f26f96ca0c6c1c3796446d1083a9", + "bytes": 798 }, { "path": "LICENSE", - "sha256": "2033fd1ba7aeb8d2c6377d970516c4b7b82762dfc35efafb4be5a15e298c5e6b", - "bytes": 1088 + "sha256": "4a561ead5ba7cdfaf4efce91842a4308c5f2a77980205879d83835efb8a579db", + "bytes": 1067 }, { "path": "OVERLAY-INSTRUCTIONS.md", - "sha256": "91a984a89dd57a084b9a2331763cacdb061582fb590f13df379d92c1a77a2ee1", - "bytes": 352 + "sha256": "217817c7e10a287f852735f412c25098c0983866d0b45769c828534912895c1a", + "bytes": 347 }, { "path": "PUBLISH-AND-ENABLE-UPDATE.cmd", - "sha256": "fc4a0cd199e4a6b3a8ed745261b770d8202d774bb1234cb9e074997b8a10b072", - "bytes": 499 + "sha256": "abe5dd6fd68f2970cd19ef134094907c67219061d8fe9a1a08324c78de4ad437", + "bytes": 484 }, { "path": "Publish-ForgeFlow-Release.ps1", - "sha256": "b1bab5893b2999028473e93fe5952a2c1c1c068bab22f5a0b52943a5b8b0d311", - "bytes": 11165 + "sha256": "019c4d1f44de3d1c1c593a53b381563446af887d7af15c65e37b785bbb380ffc", + "bytes": 10981 }, { "path": "Publish-Missing-Binary-Release.ps1", - "sha256": "2e2abdc31e9f81bf216a7f0a0d2e04ee39d570fbbf297d0d2a957d587c064147", - "bytes": 4509 + "sha256": "8edd9cb015ffe375c49d8732678d9773e7efcbb8680e95be5afb2b09ce4aecbf", + "bytes": 4393 }, { "path": "README.md", - "sha256": "d818c655b835c2b72df57ce92fde946e921416fe947d57e57ad03c944aa1f151", - "bytes": 645 + "sha256": "56beb22de0ddda207d5bdcb906c549f6fb0ddc47795ebc653fafa5bb8bf6b8d4", + "bytes": 5549 }, { "path": "SECURITY.md", - "sha256": "247af21a5d7b42943ac5f6d297366f5e042a15a62c0c616872b9dadc7e47aa0f", - "bytes": 1072 + "sha256": "fcc26ffec3e6e742bb91b8f8043bcc6e6197950352c57f12009e4dc5b95c7df6", + "bytes": 1061 }, { "path": "START-FORGEFLOW-OVERLAY.ps1", - "sha256": "058aeaa5d9bfe377c7e322f213c7871ecc4151b5d08ef790992f4ee28d857658", - "bytes": 743 + "sha256": "ac06102e903dd02ec4efbd1322e35ec222ba0ffb808d8c925e11afbe2da9f107", + "bytes": 724 }, { "path": "START_HERE.md", - "sha256": "39260d5268764844f744278f99a1ce934cc3bf3e2f5eb56687122bb75482255f", - "bytes": 2496 + "sha256": "f8853dce6fdf360d5df2fbe2b6df3e5687630c807fee5ba8436679b34ec737ea", + "bytes": 2436 }, { "path": "UPDATE_FROM_0.3.2.md", - "sha256": "ebafe424ed9dd3d3558949bfcd523352565102da4221769187dcacf4777b4977", - "bytes": 786 + "sha256": "f91744d6ec4c3d2a64c3f119c369acde7da4d872d5b1eea06ee703c21c49e3db", + "bytes": 767 }, { "path": "build-windows.ps1", - "sha256": "89cfdec9f5e47fa1c4ce3f883462ffbd5a95938f1e228535782b2561142afdeb", - "bytes": 1754 + "sha256": "99144e56fef3c07dce653ffbe1175bfc3dfffdeaf4d8b52f1388b2c870a204bd", + "bytes": 1696 }, { "path": "build/icon-128.png", @@ -139,363 +139,363 @@ }, { "path": "build/update-signing-public.pem", - "sha256": "5cc93571f6c5648cad5116680ae5218f486407c5026ee37cb0ab2fe93a16a0b4", - "bytes": 116 + "sha256": "164c059453a5737110b4e5e98b6211650c757f0aff710f8f7523ffe0ff1815d7", + "bytes": 113 }, { "path": "docs/ACCEPTANCE.md", - "sha256": "33954dcf8b898885c94fa486a1753a1298dfe6846fe4c5c6dff91d22f64ffe60", - "bytes": 1684 + "sha256": "c612fcc44ff222db0c9a4cfd11a4076fafe080e4ada31e689a08739a4f14e74f", + "bytes": 1650 }, { "path": "docs/ARCHITECTURE.md", - "sha256": "b89ffb60db36a9cca0ed9ca70edd7e8e5d427d51846b93e8383ce6f406309a9d", - "bytes": 8514 + "sha256": "3785ad21872e3dc08fde9ef819e26f42161ba6ce6d235f87fcebd7859dfaf148", + "bytes": 8293 }, { "path": "docs/COVERAGE_POLICY.md", - "sha256": "6450bf6b1b5028a6dd9f928f6cbb5a84281a68c24361e2a4216679993e7fb149", - "bytes": 1175 + "sha256": "e05458ee2696e3c57e2475bb42ae1f914f6a36e01768d7a26a3199f1fffed490", + "bytes": 1157 }, { "path": "docs/CURRENT_STATE.md", - "sha256": "af6d5af037687a09a43f14cc19ffe75f959a110765fbddc1ab2803833f735764", - "bytes": 3178 + "sha256": "9eb9eec82518c0bfc7686f5faaf690a93ed63c71d35f1dc5a2c5ec5199da652a", + "bytes": 3124 }, { "path": "docs/DEPENDENCY_AUDIT.md", - "sha256": "1923c673d5cf8b5aa5fbd500eaef648f3b3eaf47527d34e3d0bb34474da8822e", - "bytes": 2251 + "sha256": "8ea655d1912ac2e17f8834e33a566a8b14461b396ec4268c396ca189a1749b94", + "bytes": 2205 }, { "path": "docs/DEPLOYMENT_MIGRATION_EXAMPLE.md", - "sha256": "4d4b5539024c3805a087f92c85ab48e9aaab366aa68d3e4aa558139a019dc4ba", - "bytes": 2851 + "sha256": "3b9c301313a6406c39ec09f5ad7247dafdf47f6c21505ab8970b206cb1734f31", + "bytes": 2788 }, { "path": "docs/DEPLOYMENT_SETUP.md", - "sha256": "e9163fbd6a0532f483e32b4009cedd92f84946e4b949107f8c21cc7c2e4f86d3", - "bytes": 2103 + "sha256": "30a92bcf5daadb019efa2f82cb820ea302490dd1d68fb772674dc3faccd3e594", + "bytes": 2045 }, { "path": "docs/DIAGNOSTICS.md", - "sha256": "8a1be38b097c1cbfaaaee150c64b99f44bbe007817200d675a2b583d8f2198e5", - "bytes": 4766 + "sha256": "eb42f979666e05d51c587e4223282914926a2b9b1ade9f3fb75525019ce7f738", + "bytes": 4616 }, { "path": "docs/ERROR_CODES.md", - "sha256": "ff0d8aea8eff6b211493c99fbb8ee7d67bb70eb1d0b4312f3961f651a17c5683", - "bytes": 1479 + "sha256": "1d8aa3c688a9d330b9a5303b09e9e3049c50bf04f97807c7ff659607baa34c32", + "bytes": 1464 }, { "path": "docs/MUTATION_MODEL.md", - "sha256": "303d2558da306550e50f2704bfae0fb23e8abee428db436097d9838a9c6956df", - "bytes": 1327 + "sha256": "648dd6bca6b45668fb86eb3e1f6c5898dd8da0291b990f1bb5105cfd79421343", + "bytes": 1301 }, { "path": "docs/PRODUCTION_READINESS_1.0.md", - "sha256": "52fd7c73bcf82ae27ffe12751590d0b05e5fefbafe4a4939e225a6b9258cf0a1", - "bytes": 3782 + "sha256": "8dc95f69e6f6c8415702c8e79fb6b466c4d60061afded9140450e7e558eaefe5", + "bytes": 3704 }, { "path": "docs/RELEASE_AUDIT_0.6.0.md", - "sha256": "f79908fb3dad98c38030c6e6be7c79a1999e0478ed9c2496923891954438daa1", - "bytes": 4581 + "sha256": "84ae90829ecd0eb9b56b7c7a9139e12a86f74c3d938c29b63020286955d317ca", + "bytes": 4508 }, { "path": "docs/RELEASE_NOTES_0.10.0.md", - "sha256": "2b07fd178fe6dd7c2233876c4aa7de5d2371635755e7ac1f2acbbd5b298d491f", - "bytes": 2328 + "sha256": "979a0b8e129979be6b265e8571d0a3c1e9ddd4ddb6b0bf55ae748d3478e51854", + "bytes": 2296 }, { "path": "docs/RELEASE_NOTES_0.10.1.md", - "sha256": "48da50bb0bd0628187ca2f879f1e58d54978f2a7e30cf0c71df9b55a240d7ba6", - "bytes": 1454 + "sha256": "0eb44bda2209a5979a6ac693ac4cd4d235c0015031e54b9e895990f37bf60054", + "bytes": 1433 }, { "path": "docs/RELEASE_NOTES_0.10.10.md", - "sha256": "b0202cf6615c149bd79ec8033e99966b54603df3ffad966d91ad0304371b8f97", - "bytes": 904 - }, - { - "path": "docs/RELEASE_NOTES_0.10.11.md", - "sha256": "4724c6f2ca9a8d5126552fa1577c4c53d3c6f14946dc29981408e2543f3a76b5", - "bytes": 1002 - }, - { - "path": "docs/RELEASE_NOTES_0.10.12.md", - "sha256": "876c6794ed47ac83d7042b681946c80ba66ac5cc3e24f5ac53f15c4f194850e8", - "bytes": 1304 - }, - { - "path": "docs/RELEASE_NOTES_0.10.13.md", - "sha256": "7ad75d0a052d9b99b91e78f9b8d3bfe55e3df15e7182d43bd7cfe405a8cfb5fd", - "bytes": 1949 - }, - { - "path": "docs/RELEASE_NOTES_0.10.14.md", - "sha256": "1d5832048dd834a773ee8f34e6599c590373358132203b022b521dd5dde2f179", - "bytes": 1571 - }, - { - "path": "docs/RELEASE_NOTES_0.10.15.md", - "sha256": "055ad0c73f0854a708eedc3bc4e9dfb991b4e6021348c05484da9a47022e995b", - "bytes": 1871 - }, - { - "path": "docs/RELEASE_NOTES_0.10.2.md", - "sha256": "5b10081a98fab0a0394f5216beb3c2e81d9451796d1c325965e984a4edcef44c", - "bytes": 586 - }, - { - "path": "docs/RELEASE_NOTES_0.10.3.md", - "sha256": "53e4c0d64342715a981ba0f695fa2a20cac22a33839db808816dbfa1a1e0296a", - "bytes": 1182 - }, - { - "path": "docs/RELEASE_NOTES_0.10.4.md", - "sha256": "a26021f356a0b78e4393e14cf5f2dd5752316698ac926c67b7978ebe8859c6b5", - "bytes": 783 - }, - { - "path": "docs/RELEASE_NOTES_0.10.5.md", - "sha256": "cd3f7bd1236013ba9fe0afe0ad8758fbbb9beddaf51872936b2c07323cd65eca", + "sha256": "5d3240169765e3fb1d3cd391d09547101227e76dd4670ee46be8ca3a21553a03", "bytes": 894 }, + { + "path": "docs/RELEASE_NOTES_0.10.11.md", + "sha256": "36edb4f096a248fb8679bd13e5766befb478cf628c6ccfb21e3eda71bbec7633", + "bytes": 992 + }, + { + "path": "docs/RELEASE_NOTES_0.10.12.md", + "sha256": "a355d3f577c2ec85dde5dfd7b6995f4f1615e2f6bac597529f3ff102acd93c35", + "bytes": 1292 + }, + { + "path": "docs/RELEASE_NOTES_0.10.13.md", + "sha256": "609c55a1c0b06c307ebe16f2daaf1e48601edd57137586e4f2be1febd6a7060a", + "bytes": 1931 + }, + { + "path": "docs/RELEASE_NOTES_0.10.14.md", + "sha256": "09eaf3f7671fbc5c25d5ca444415616ccf6dd8e6351855291d392b0aeac20bce", + "bytes": 1556 + }, + { + "path": "docs/RELEASE_NOTES_0.10.15.md", + "sha256": "18f34f2fd3650e98f7d2fd63e787894a294585a7e93fbf6b877663ee9d66ec51", + "bytes": 1856 + }, + { + "path": "docs/RELEASE_NOTES_0.10.2.md", + "sha256": "8d713471a437a8a55b00d7e1dd95290680862107bc4e586cf27d727f6274e46c", + "bytes": 577 + }, + { + "path": "docs/RELEASE_NOTES_0.10.3.md", + "sha256": "0942fb2c4a4f972296423b5232687f7389e2c6417a9d48a3244beef9dec907b9", + "bytes": 1164 + }, + { + "path": "docs/RELEASE_NOTES_0.10.4.md", + "sha256": "8f4a0fe6dc250ae210cc2fc1c57c46091822ae6c2a58caa76e0091f255f9f30d", + "bytes": 775 + }, + { + "path": "docs/RELEASE_NOTES_0.10.5.md", + "sha256": "05ed618f5a74a854363930128ca98939808517eedd28b9a508660a0c46e91d97", + "bytes": 884 + }, { "path": "docs/RELEASE_NOTES_0.10.6.md", - "sha256": "f1bbcb3a61c7b3ef255e921ef016d85f11b1eb2a1dcc7ad7bb8a738efe6e213f", - "bytes": 781 + "sha256": "94bfb2783c1befad1197e1c5e32fc002222c94a28d70d48360a8d53ecd260d5c", + "bytes": 772 }, { "path": "docs/RELEASE_NOTES_0.10.7.md", - "sha256": "a3b08b9680c5db304c05a0880ac1bb987b02dc20700e4ae61b0e4ebb71d63cfd", - "bytes": 913 + "sha256": "226a3b2d4bc7f54841749a283fcdd71b643cd585ba74d673084bee829fef6ea2", + "bytes": 903 }, { "path": "docs/RELEASE_NOTES_0.10.8.md", - "sha256": "3b68776b94c73b72fd069fee7792680bd58523b8a5f34de74216c6255a9fdfdf", - "bytes": 651 + "sha256": "4be29ad0cb7ebcf5625172b8d2bd7a67cdc6d64d3a94e2c3f0656cdfd42dcb7a", + "bytes": 642 }, { "path": "docs/RELEASE_NOTES_0.10.9.md", - "sha256": "753e0b0f2c00a6c8ec687294625731d6c4f158509ac76bd08005fff626943bee", - "bytes": 971 + "sha256": "fb64517aa64d3ecfe8b51b09e198c2c9fbba96d0cd24a87301c7f6dea3076095", + "bytes": 961 }, { "path": "docs/RELEASE_NOTES_0.2.0.md", - "sha256": "532414fab6a23780dd1fdf9905846582905de9ad2f978542a8376915e73bae9b", - "bytes": 1802 + "sha256": "a0c00ff76acd1682bb5e0e8dcf6589c9480da436c9c6d30780a1ed58b4dad94f", + "bytes": 1770 }, { "path": "docs/RELEASE_NOTES_0.3.0.md", - "sha256": "9a79ba9626b852be368afdb687b39e5c12b4674dd716e565c1a3776acd365ef7", - "bytes": 6103 + "sha256": "5773ead01aa4c522c556295553787482d01b1f5242f053b2c61f120c4de4fa76", + "bytes": 5963 }, { "path": "docs/RELEASE_NOTES_0.3.1.md", - "sha256": "cc9eed982cf7c99af2ccbb8e0dd9fd61f0d494603fc2fe7d14a3288aa4ea0d76", - "bytes": 1118 + "sha256": "d46de73cf6c4cd5c2ba3f455a7a2af2e0d64ee9d94a97fd1a0bfb44e35c1624a", + "bytes": 1093 }, { "path": "docs/RELEASE_NOTES_0.3.2.md", - "sha256": "8498aeb28590640608191add4dcc11f58adcd8d0caafc947cf98019ee557cd42", - "bytes": 2527 + "sha256": "11b7831a81b42a540f57e3aa30a78275b3c4a5fbe962e038cb635d525ba9e529", + "bytes": 2455 }, { "path": "docs/RELEASE_NOTES_0.4.0.md", - "sha256": "48aec5e22fd5392114b8a862f9d2b42c0a891a3af0d935b765706bf21f694b64", - "bytes": 2211 + "sha256": "df07794fb3923f3fb6a49dacbfcc5a371227edb592b4e86ecffaae0a8799f187", + "bytes": 2154 }, { "path": "docs/RELEASE_NOTES_0.4.1.md", - "sha256": "e583003bfcf6563e13855ad1c9eb6ff55f6bb1a618982fb0d7336fe6bf8de22a", - "bytes": 1160 + "sha256": "343862445061e1a8282a7aa9b2304e7d799e58f9956d50eb5352db18d790efad", + "bytes": 1134 }, { "path": "docs/RELEASE_NOTES_0.4.2.md", - "sha256": "98c881fe56ca1fea2e4a6cc22926fb5345629677a525c87167f835b4d5184bab", - "bytes": 1634 + "sha256": "e2d67c816a919f00f9e26bf59cf29e5e8cf894536b743d282075c646c5accc96", + "bytes": 1605 }, { "path": "docs/RELEASE_NOTES_0.4.3.md", - "sha256": "c4891e1c31aeee208855d496053a373ed9cbfd4d8353cb3ef5e4ba28dcd70c95", - "bytes": 679 + "sha256": "1aef74fb109541903c4dbc4d9c48d2bd63507420eaf8cceb31890797a5e4f5fd", + "bytes": 670 }, { "path": "docs/RELEASE_NOTES_0.4.4.md", - "sha256": "dc6402c30f48b57d000a207779e659f45319d890aceb2ec34b56c79668b10c6f", - "bytes": 626 + "sha256": "85fecec65f7687e1382547166eff62777613825a8d81960dfcb4ae16aa15c8be", + "bytes": 617 }, { "path": "docs/RELEASE_NOTES_0.4.5.md", - "sha256": "6b326bff00dada52d678c1d9da893227f27df2c5835349387477ac41151dbf4c", - "bytes": 386 + "sha256": "5cd0cffecdce942fb1024a0410568174e7704af9bacbe42f81891693a1817a19", + "bytes": 378 }, { "path": "docs/RELEASE_NOTES_0.5.0.md", - "sha256": "dcf07ac5b9ef7f08ef3c16631a9af7196c4e7589559eeb3512adfc8b354628aa", - "bytes": 1111 + "sha256": "f9554c10f56d41d916330f06175b07f099c9ed1534f00abc9ea7f94be70f4a97", + "bytes": 1097 }, { "path": "docs/RELEASE_NOTES_0.5.1.md", - "sha256": "1d89630a53d0d598b4fbf245be46773cef79eff58b3bdca2b79ae9975957464b", - "bytes": 973 + "sha256": "11a932e2c401c53d117175aa312b6d20508918b12192d37c5084bd54a5ea3a72", + "bytes": 957 }, { "path": "docs/RELEASE_NOTES_0.5.2.md", - "sha256": "2a4268b28bb0ae3dea0b647d1ddada6406f7cccab12844e93d2306e5d5a76c81", - "bytes": 732 + "sha256": "d7d007e4c2807698db07b2ebe1cb48c36bd162bf4daad77c9d299096c9654d5a", + "bytes": 721 }, { "path": "docs/RELEASE_NOTES_0.5.3.md", - "sha256": "319c39f7499e96513031e419501a0b01a4379b06e2b172d0e7d85876509bda9c", - "bytes": 1050 + "sha256": "3e77df12a7ff4b545069933410bf14fe8891f39915182df25112c722cf4e243d", + "bytes": 1030 }, { "path": "docs/RELEASE_NOTES_0.5.4.md", - "sha256": "aa00a9f187987419aedefa2c8667f664b4ad0123b3e7e205288d73b5b4f0b4e1", - "bytes": 720 + "sha256": "61f6cbc1c3f263fa96b5c6a70a26baa7cd577d37ac633455eed45d9b63169a35", + "bytes": 710 }, { "path": "docs/RELEASE_NOTES_0.6.0.md", - "sha256": "1ecca96cf8a6f01d7ead37d5a6b678549c2561bfd84011b6149f718a25971661", - "bytes": 4936 + "sha256": "9f72a5d039615785ccd4771f38b060bb58386b3217ba2a56459067cebbbb812f", + "bytes": 4875 }, { "path": "docs/RELEASE_NOTES_0.6.1.md", - "sha256": "23150c58e6416d48c2ed6e378fff99179ed810b766ed50b70d4d829c6774b8ef", - "bytes": 685 + "sha256": "179860938908bc65b8ce8ca5019fd0a24e79b1eb88d368c9856191d48ec00d3a", + "bytes": 675 }, { "path": "docs/RELEASE_NOTES_0.7.0.md", - "sha256": "d4e43b10b64e1c04a0e444ed39bdfcd05869cf5a5d8db5caa8583578ed2c3e9a", - "bytes": 2618 + "sha256": "f3d04f2d3419a7a010d5399cdd9351ff85ab2b3fdf8023977e559b0a5f8bcdc3", + "bytes": 2571 }, { "path": "docs/RELEASE_NOTES_0.8.0.md", - "sha256": "9afcf47ae2feea72e04cabc08e2a5c058891c04e4a99a7f014d6e9b791d52f3d", - "bytes": 586 + "sha256": "d7bdc61d9b617ad5acf0b2d468eda547fd7509d4af08f33d2661393f25bdcb5a", + "bytes": 576 }, { "path": "docs/RELEASE_NOTES_0.8.1.md", - "sha256": "674fc8b6c656bd2bfba583388d50e02d0a5c38db4c8396f78d217f4a8b58759c", - "bytes": 767 + "sha256": "1e056bfcf2105843402f4b14c63480240cc55456a4a63e229b3fdbaf3156b803", + "bytes": 754 }, { "path": "docs/RELEASE_NOTES_0.8.2.md", - "sha256": "65885a64005125a24e9d25b70f01dab6d97cdfc8ce017ea0850e913164a5b07b", - "bytes": 740 + "sha256": "7f1d7c8bc895d309dad2f8ab444d6d2ba3e68c8daa240fecd2abdd9d8a56ba20", + "bytes": 729 }, { "path": "docs/RELEASE_NOTES_0.8.3.md", - "sha256": "0f7b3078069a9d7616690fc9aae89fcfa3916eb9b952b24b39ab2ff7bedb6879", - "bytes": 667 + "sha256": "c2802fa5dbff392c846b82b55e84a8bfb8e1625546fd1eba39f7129318bece96", + "bytes": 654 }, { "path": "docs/RELEASE_NOTES_0.8.4.md", - "sha256": "9cb2b202fff4de466cc0bcf1945dcfacbda698a0306e293bd97c1a16ab6b9180", - "bytes": 515 + "sha256": "8c13279987672314332f648889f52338bcdcb243249f9e1c20fb09d85d7808f5", + "bytes": 505 }, { "path": "docs/RELEASE_NOTES_0.8.5.md", - "sha256": "82059b894fee48bf9726e9e65c335e221f0c0ccc03a0d27720e918633fbc6421", - "bytes": 549 + "sha256": "b516db97a0353babc810c24a87a971d30d72a8021d809e6b833ff7ae0458f442", + "bytes": 538 }, { "path": "docs/RELEASE_NOTES_0.8.6.md", - "sha256": "a4997e09ff6b3ce5a1754ece03ab45fb9da8bfaa61e5c3d970be7aa953f13b99", - "bytes": 752 + "sha256": "838d196f3fbbfeee8df375a0502107f56b6df28babca30aa09ef1c7aa5196d09", + "bytes": 738 }, { "path": "docs/RELEASE_NOTES_0.8.7.md", - "sha256": "f28b4e027a6417ada385070eff7436bdbc147f80229c65b1306cf8402f622675", - "bytes": 1207 + "sha256": "ef049adcfa204908e6dc3a059124b39ba0e2739cc54e38945ce73a57049df0d8", + "bytes": 1185 }, { "path": "docs/RELEASE_NOTES_0.8.8.md", - "sha256": "6b4c9bafcf50917129c64aba13491fb263116ef1a7e9393ed2b951671cecab9c", - "bytes": 645 + "sha256": "7eedb25e1aae3b06a04bb9b2f4843bd6af614418737e600b4bdc9161edabd76a", + "bytes": 632 }, { "path": "docs/RELEASE_NOTES_0.8.9.md", - "sha256": "3a007e5d2081d33769f217f44de3eb4b5b720b564d646a8655910956bfc16f6a", - "bytes": 1066 + "sha256": "35dcfda990946480d6d55bd2d2e6360c336260bcd05cdb51d92e07a4e8d76945", + "bytes": 1046 }, { "path": "docs/RELEASE_NOTES_0.9.0.md", - "sha256": "4e650b94caecc137735a7b27f8a17a907dfe3a5b9a3f9c7541dd6912fc1092d1", - "bytes": 3144 + "sha256": "29f7b11fef1e4960ef874f643b2206ca73a310b0b75402bcd3764a01e59db2e0", + "bytes": 3114 }, { "path": "docs/RELEASE_NOTES_0.9.1.md", - "sha256": "318e665005a8246e49ed74678c09374f03148c96949f8cdce5dfac773f616959", - "bytes": 730 + "sha256": "ed40e08bac8792f95970bc05e49bce3cc9e288a08d11565a1bd156d787360a3b", + "bytes": 720 }, { "path": "docs/RELEASE_NOTES_0.9.2.md", - "sha256": "6ec7ddf1290c63bdb1da3dd1f64381f0c92db7d560460f3264ed8f1f23a15f61", - "bytes": 837 + "sha256": "01bf2cc72593b10010b667ae017b9eb62f4658a9711bbf24c81f5f95d93fe8c8", + "bytes": 827 }, { "path": "docs/RELEASE_NOTES_0.9.3.md", - "sha256": "1b9f884aeaa030388b2a55b50daaa3dcc525b6771ba50b84908cb25a5437c58b", - "bytes": 2207 + "sha256": "25169225d73d22b9d884ab3b5c1625f03fd44e53c7a7a4c4067775e80482c9f8", + "bytes": 2182 }, { "path": "docs/RELEASE_NOTES_0.9.4.md", - "sha256": "bc3fa8731534e0b4f792ee2159bf7cd7d81bbbbe214caf269c5e6fc93f49152c", - "bytes": 940 + "sha256": "720506842e0aeb30c9fc635f86a52a5545556f092e678cf37f08436243244c3d", + "bytes": 933 }, { "path": "docs/RELEASE_NOTES_0.9.5.md", - "sha256": "9c0256fc09525dc63650c1d1cb3afce8a2742a2e033a471595e5fb734bab40b8", - "bytes": 2120 + "sha256": "dd90c81a375f97dfb7fa8f7808db03b19d7e7dafe3818a93537397f57eaae829", + "bytes": 2109 }, { "path": "docs/RELEASING.md", - "sha256": "96272da7be735148e8971717f198eea2819aac915105af1533573156aa9d6b57", - "bytes": 2298 + "sha256": "1bf75f25d704dab0c6bc56c639d259f34523f0fb46718dd5a8419a59911ad2c3", + "bytes": 2242 }, { "path": "docs/ROADMAP.md", - "sha256": "0e44c88c3a1bbb6899864132f55b02770e5ec53cd380eb4319648e25b774e8e0", - "bytes": 4301 + "sha256": "ac76cb50fabde6a00f28d7e9eccd3ef1129a40665eabdc90d78690a38d424652", + "bytes": 4195 }, { "path": "docs/SECURITY.md", - "sha256": "11a7bafaa63c7746a938a247b9315e6f54c083ef219504c88d3658cc1b86e98c", - "bytes": 6173 + "sha256": "5cb9ee0e33a06db1796a740f12b0c41b917c68c1ae7cdb0070936a99c61c2c64", + "bytes": 6036 }, { "path": "docs/SETUP_GUIDE.md", - "sha256": "32a34ec13a284d3f9ceebbc107b25a844e3db096f8cafa4e43951fc2050c9a03", - "bytes": 13552 + "sha256": "c79123aa4c718ac3ab0d79771f2967710c28f939b58fca0094b02e3172f2c024", + "bytes": 13067 }, { "path": "docs/SSH_UNRAID_DEPLOYMENT.md", - "sha256": "080438fd3e5cb17a46baee6f0aa51fc95ca4ba37c55905bdf60fb7cd44fd1ba5", - "bytes": 4494 + "sha256": "2fd71e9bcaeb4cb10c3fa2496b7e52fedf70c5b7f871cd587e22dc060c399079", + "bytes": 4421 }, { "path": "docs/STATUS_ENDPOINT.md", - "sha256": "b1c3f399bddfc488060a88b58043a3faaa2ced67237ad21391efaf6af66cddb1", - "bytes": 2206 + "sha256": "b6a178215dab054006aae4944b8ffcbe7f6100691c30f08e221e3a2dbff4cd42", + "bytes": 2147 }, { "path": "docs/STITCH_REVIEW.md", - "sha256": "baa7b621b95a9ad6ca44d7b1ec0bc80f400068e93716a525470b5121f380cb19", - "bytes": 3238 + "sha256": "0adfeabb98168a7fc0b02bae8d4af436d3c59459012fb05b2216e02265190128", + "bytes": 3139 }, { "path": "docs/TEST_MATRIX.md", - "sha256": "3610e0981257c5dd2455859902b20e7aa4568c3c93a1dfa6475be6032b564cf2", - "bytes": 6703 + "sha256": "32824b866d781add49edf0aa9fba6c5a7634c5bf116afcf73b87c053ecdf9ebb", + "bytes": 6554 }, { "path": "docs/UPDATING.md", - "sha256": "85c74adb8c7d4356b6f696013d911ba9041b8d8c4b8900dcb4b491115ba1fbc0", - "bytes": 4512 + "sha256": "485828f99531e188629d0f25dc2905b9ef99a9f08ccbb6ab051530398266c01c", + "bytes": 4443 }, { "path": "docs/screenshots/deploy-confirmation.png", @@ -534,23 +534,23 @@ }, { "path": "eslint.config.js", - "sha256": "af13cb6d12f31904875cd5bf242a64bd92e15e81fe432fd423802db0f2040394", - "bytes": 2772 + "sha256": "73f094a2f0db3de053e515feb2771cd5a4f3aa4178f2c5f37be01ca65ff1c938", + "bytes": 2705 }, { "path": "examples/gitea-actions/deploy.yml", - "sha256": "a24c5ce4c7147d286ef26258cb64a9f96a54c6d901e7dd5f925e48779df9053d", - "bytes": 1583 + "sha256": "c230b931abf2293d2d44b7a69b94c35f1142c093cc46b88739a0de5cbd6d1896", + "bytes": 1532 }, { "path": "examples/gitea-actions/forgeflow-approved-deploy.yml", - "sha256": "5d2577d4f9f635a12dcc8795879c079b9e66630bb3d96e21510ef7ee13ebef05", - "bytes": 3319 + "sha256": "32551d70250786951f54cc9fef7d45a512f311e4454ab87ec43504799eb7ac5d", + "bytes": 3229 }, { "path": "examples/gitea-actions/rollback.yml", - "sha256": "aa016403cc795880e29d933b60b52192bc73ad8e1d1eb20a93cbe11b4808b3cf", - "bytes": 1527 + "sha256": "4c792cc9fd57ed36da291300c252a6ef75b08a249cf6f2561e23c4c22522138a", + "bytes": 1477 }, { "path": "examples/server/forgeflow-deploy", @@ -559,48 +559,48 @@ }, { "path": "examples/server/forgeflow-runner.sudoers", - "sha256": "13f5b67c8896d9ae3437bae0c9542be9084347b28ee84b59ab1a608263828cba", - "bytes": 262 + "sha256": "4fe3eee5c2d8705964c24b8c4dd909883a05e7d6eb85629c84b0d64473e0a92b", + "bytes": 258 }, { "path": "examples/server/forgeflow-targets.conf", - "sha256": "9e3dd8267eccebfc02583519ae2ef56b81e781b386d1b92b497d5cfa061be4a7", - "bytes": 578 + "sha256": "0423fe2cc7f43fe793986a3f62a395668897cdf07348756aa7742a8cd40ac51c", + "bytes": 569 }, { "path": "examples/server/nginx-forgeflow-status.conf", - "sha256": "afb0480c781c800bf20834d91e36d60dcce520ab90c91c687745abe96bf87e3a", - "bytes": 405 + "sha256": "106538d4a14a5a7b13419f9520c582b19809e8fafe2cb8c7dce2bc3e600dd10a", + "bytes": 397 }, { "path": "examples/server/status-example.json", - "sha256": "a0de3fe4e09b6f246e1513bccc170334e60f63f98c24377192b4335cbf16dff4", - "bytes": 593 + "sha256": "3275f13c9d676290df92b13706ab6ea599d852534decd15b5411b5e58bdd1cd2", + "bytes": 578 }, { "path": "main.cjs", - "sha256": "b3d22a6d3222a02144c0ce147a93fa2ebd77c14b1b260503f338284cf9d9d107", - "bytes": 15178 + "sha256": "e2daa28bbc01c68c3702add6ea8259dff5920b22f6fdc3c9193ed78a153f2e9e", + "bytes": 14708 }, { "path": "package-lock.json", - "sha256": "63d403ada205000a0dfb158ec57cde1a4f58572d790589428ab5b00a99b32cbe", - "bytes": 184860 + "sha256": "163c276240d548fd885b68b85475b92de4431b1313da89edbdd811a32452847c", + "bytes": 179808 }, { "path": "package.json", - "sha256": "12804991d4f9f967a82e5afb9779375a2978db0402906ef4682ae640d4326ed9", - "bytes": 6465 + "sha256": "d2c1e8b55fe0a89145b64c0eccd50b830e99324d99178f448ef0f0a57066bae1", + "bytes": 6330 }, { "path": "playwright.config.mjs", - "sha256": "c36f7f245023e31abe058ece7cc1d6899b83a6cd2c8e42c67fa396fb1085fc12", - "bytes": 1395 + "sha256": "1237df9ddcbb5ac7dc4316f18c34ff4a7030e3e0d56216ade6dd07369e5e2a04", + "bytes": 1353 }, { "path": "preload.cjs", - "sha256": "3020fb7661321b468a2d4532cb43ef50ec6a38cf973db453ec0c662f823c1da6", - "bytes": 12571 + "sha256": "7b0d173d0cf5a7f8db807580492bade379dba174a271013747f9f28a3793f55e", + "bytes": 12409 }, { "path": "scripts/acceptance.mjs", @@ -689,233 +689,233 @@ }, { "path": "setup-windows.ps1", - "sha256": "2785092555fad70fe679d1d15c8bee735705676c737a1ffcfc022d8d01999902", - "bytes": 2128 + "sha256": "619515f524cb89960370ffcbd3fafd3c0e178b95f69c5868b1dd44777f23ec1e", + "bytes": 2081 }, { "path": "src/main/audit-service.cjs", - "sha256": "fd5c733f9faebd26f5fb14f38bef99b03cc71452bb8ede7d184c8eef0c0bdf78", - "bytes": 2469 + "sha256": "dd613d04b366f2cd071a1685a414016a5fb008082ed1b4cb8b24b79c100f640a", + "bytes": 2412 }, { "path": "src/main/config-store.cjs", - "sha256": "20566e02b0c9d85281f634e0ad7fa8ed35a29cf72996474f6b780247ca024ec7", - "bytes": 35332 + "sha256": "e3af59fafa497d032541979bea5fe2b98187b1ced619c567d15ae79ee0904c1f", + "bytes": 34629 }, { "path": "src/main/configuration-backup.cjs", - "sha256": "9223757fcbf46fab6e4dbd60333bed78b771c25f3fe4824cf80850a46ba43b8d", - "bytes": 2793 + "sha256": "2fb04b1494b39f5d7c0720fa5fd298cd46fa85dc1b696d77657592347fcf1819", + "bytes": 2731 }, { "path": "src/main/deploy-key-lifecycle-service.cjs", - "sha256": "1c74a88f5ee97063915eccccce854c7d6433f38800ff99fda732a092c649bd16", - "bytes": 14788 + "sha256": "86e9fc2eda66b4b563f6c4bbb87d3e8514340d484fb503b73137e63b6b05c3c9", + "bytes": 14597 }, { "path": "src/main/deployment-identity.cjs", - "sha256": "b18f5cddbcd3eb1448ae227bddca7bd2d0866c3e309d852fb0ce45f0815eac3d", - "bytes": 2194 + "sha256": "7cbfe51973d6607203cb197652ed7f296a3f6b6b644df876957117866a47d802", + "bytes": 2159 }, { "path": "src/main/deployment-service.cjs", - "sha256": "a0284c366693b42d373794e55eec83bf5f6c500b95091b2796a283c1e69fdcdc", - "bytes": 24135 + "sha256": "ce30ddac403d1adf21176e5df21b0cc3db435305d2628f51f1486eacf20df6f2", + "bytes": 23708 }, { "path": "src/main/diagnostics-service.cjs", - "sha256": "774a6f4370e75bf086e04e7b4b7961463d97d798c2512525458dbaaa5c008140", - "bytes": 16860 + "sha256": "cc2dad2fdac386d41c37b1a8657ae2b3b4084fd8f35a97f8600c082c8d017552", + "bytes": 16475 }, { "path": "src/main/external-tools-service.cjs", - "sha256": "5d70b96d045820891d3a33f2fc5d54b0d4730bdcf82cc0ab32149b4d3328eb64", - "bytes": 2448 + "sha256": "7f452dc2c0e6f3a00eecf6cb1c2be75906ac40445ef3e104341c0c67208aab2e", + "bytes": 2397 }, { "path": "src/main/git-service.cjs", - "sha256": "76fdc5576dcd6fdb88921009d4a923854650bd5efe5b837cd7438eba0dc733c8", - "bytes": 48002 + "sha256": "14b462afddb69d77845907faa26e56d80a4bf5d9bc356f6eecb7a6c3eadcd13b", + "bytes": 47053 }, { "path": "src/main/git-validator-policy.cjs", - "sha256": "871553beef7613d30493a9af9fdcac4d3305c0d89ae96cff8050f310d4865ff0", - "bytes": 7340 + "sha256": "888cde76bcc4b805c3efe13aa13074d7f94aa915c26947001cb40aa30d3dee48", + "bytes": 7251 }, { "path": "src/main/git-validator-service.cjs", - "sha256": "e4384b175d2ebff809581861a8b7a950c2bf2780118f3610ca5f9ec673fbb617", - "bytes": 27727 + "sha256": "3a101b63ad3761c26350c2ac0793279a0b27672b91a5b1d8dc75bc44d92f0b52", + "bytes": 27128 }, { "path": "src/main/gitea-service.cjs", - "sha256": "0eecfff92532523990bf4a4bf2fdd6f9f1150d9c453706cdadf003954c90a162", - "bytes": 21930 + "sha256": "3cc53e24e023aa0d8bf36c35ce9672ca98e6c74066512c8b59ab42274e838c22", + "bytes": 21307 }, { "path": "src/main/inventory-classifier.cjs", - "sha256": "2246cd52935cc4b5546a1412f1aa2e33be99da4891be588da95644cc6d1ee8f0", - "bytes": 6997 + "sha256": "2ad3b2e647377f687ad987fe248a142ad399ecac98e4b49965aa7efc6093e5fa", + "bytes": 6914 }, { "path": "src/main/inventory-review-service.cjs", - "sha256": "180f142fcdf41c7c458bbf541a0c2c6e337d99555591593732bc22272b36c43c", - "bytes": 3435 + "sha256": "dafdb09133d2b6ec2161a3f0b09354551e54fc606c8107976fca37405643be91", + "bytes": 3404 }, { "path": "src/main/ipc.cjs", - "sha256": "d618f9cd1625e291d1f48cad665b38cd5ef322214a1d293ab8c28dd1162d688e", - "bytes": 26441 + "sha256": "98b332589f86a4874a8adddc38e7844a4ddbe9360d38f9f77b2e95d58d748016", + "bytes": 25720 }, { "path": "src/main/ipc/channel.cjs", - "sha256": "619e89f4489115f60d7cf858e3dac6c6b3e562ca7439e2398e66ca90fadb46d1", - "bytes": 2327 + "sha256": "26efebb4c147ed560966e7e60e64a013b3476327b3bbdb4e4439949142fa7846", + "bytes": 2250 }, { "path": "src/main/ipc/deployment-handlers.cjs", - "sha256": "a2fb14037189bdad1f2913a713d04f8316d5ee60942dd0982f026cff9aa3ac8c", - "bytes": 12751 + "sha256": "748cddf497b4c204e5e6fa1bd049991a086fdfb38afe342e6b3617c85a111478", + "bytes": 12467 }, { "path": "src/main/ipc/operations-handlers.cjs", - "sha256": "c38777b4fe0711a404003765ec4f4032f353d4c01622fa17752b96f5f41ca458", - "bytes": 3542 + "sha256": "dc9b5971c9fefe8c374aa31916f5513601ce86003fd48b1d0e51330a909ae3a5", + "bytes": 3442 }, { "path": "src/main/ipc/repository-handlers.cjs", - "sha256": "64c6dffcb232c547976a5ed8c98db4b5225eee10bdb650c8aaaace8eb3b67792", - "bytes": 17722 + "sha256": "8072252821b1245d121eac534a18eeb64f0d7d18429e272e21a6e90b010005b9", + "bytes": 17272 }, { "path": "src/main/log-redaction.cjs", - "sha256": "0ae045dab3165a05a518e9a0aca4aba972de3da3be301f219512c7d198e59008", - "bytes": 5062 + "sha256": "fc7156aabacb3e85a4f220c490f94e9836e07fa5350a1d9e64f84f835ef51024", + "bytes": 4961 }, { "path": "src/main/preflight-service.cjs", - "sha256": "f819385c391b24dfb173d0b9befe82edcc1fdd26492a6fab7b168d03462a4daa", - "bytes": 13117 + "sha256": "958595a99fb242c127f475f3d8622bdba4c07b2d658703f69fe3992227a9107e", + "bytes": 12909 }, { "path": "src/main/process-error-policy.cjs", - "sha256": "31e449c00daf48639fdf3effddee52e5fc5f8ee4dc27c57cfe9212e6418535f5", - "bytes": 706 + "sha256": "720c4a0c554f46386d87c3ab6607d1fbcae66e50b69483c7dbba169d5128c851", + "bytes": 680 }, { "path": "src/main/process-runner.cjs", - "sha256": "3096b4181566cb93a27e56e248c92105d4f4df5aee39d73c6c7d8ae8c2231bc0", - "bytes": 1570 + "sha256": "1dc0c997bd2d837f3d27dff58a9443888597b7981c8a1dd1eaa4487176ef716c", + "bytes": 1520 }, { "path": "src/main/production-acceptance-harness.cjs", - "sha256": "bc9fbb70cc5cc51cbf9115c610fadcb61e83316a69ae3862bbc2f013353c1e4b", - "bytes": 10075 + "sha256": "e64f7257d478955c675a133b3735b6afe138a69d2ad090898061e56f557c43e5", + "bytes": 9926 }, { "path": "src/main/repository-monitor.cjs", - "sha256": "538ec017ee855b6585f1fb4efb88d828500b75545fccaacf66160a3d76d8a63e", - "bytes": 8945 + "sha256": "27bd6621c731545ec46d8914e9408c89928a8ce563b40eb4bcd8a516662a54d1", + "bytes": 8716 }, { "path": "src/main/repository-service.cjs", - "sha256": "a17983bf15aa0daa96bdc692e136386b3cae79b878e76694f19eab9e8aea2ace", - "bytes": 12457 + "sha256": "6393583911263575c6e2a19d9baab6e638cce90252c386b0a5144f2fb6f81f15", + "bytes": 12154 }, { "path": "src/main/server-inventory.cjs", - "sha256": "a80440baafc3655dca2c6b5a5726e80368ac686015c7c184c5cc0353e807376c", - "bytes": 28505 + "sha256": "52b6d88ed1f5c904a13cdde92e5f96d1e2b5971ceef49862152197353cdc6490", + "bytes": 27928 }, { "path": "src/main/ssh-service.cjs", - "sha256": "b344669439fbc6ccadf77277119efb10f200fccf2c7ea417e2aae83456acae4d", - "bytes": 22859 + "sha256": "793003566823e1d5c02283f583888ecc07e44477525620579b3d858f488b3c08", + "bytes": 22347 }, { "path": "src/main/unraid-access-methods.cjs", - "sha256": "79e96d402d8e7fddef722ebb9e528ac4a031d0286a994c0a2d3b8f21904ba0d7", - "bytes": 26362 + "sha256": "19538a3c40ea3489bbaee9a23af36a5e99962af6bb3d04259f05ece6588cbeb2", + "bytes": 25901 }, { "path": "src/main/unraid-deploy-key-host.cjs", - "sha256": "ee87b750d89f8df9ea4d8d7edb852b4681b3f826263bc8360d06a1e1f80f82e6", - "bytes": 9880 + "sha256": "5621e35323e4f81fb14a05670f81579ec1e66bea3a55fa6457ece0f807421424", + "bytes": 9801 }, { "path": "src/main/unraid-deployment-methods.cjs", - "sha256": "518c3f9d017923407b9ceffb5132caf99cae2a3d5a103d21b303207893d38067", - "bytes": 31375 + "sha256": "6d9910dace52625f88e066a8485af2663c3735ff15e9ce9031441ce742710a21", + "bytes": 30793 }, { "path": "src/main/unraid-deployment-service.cjs", - "sha256": "b6cd92952b7fb2cd6f03301f78c9c6bfa962d1f0ddd56cc3931c7688acc538ad", - "bytes": 17732 + "sha256": "673b1692e7c2b5197545df98750b5d048bddf44206263e25be4f17d9bf900e2c", + "bytes": 17208 }, { "path": "src/main/unraid-inventory-methods.cjs", - "sha256": "d2d76767c05bbd604e8e557e1ba06ceba12305096fa73c8a9edbe439f2eb8fc2", - "bytes": 43475 + "sha256": "bb4a99c3526fcf4db4fbae88a058e8598fd10a87990e7d502bfdc765328bdaa1", + "bytes": 42766 }, { "path": "src/main/unraid-preflight-methods.cjs", - "sha256": "aa2b8681d72dc9c232ef9436854da9967ebef35d6a71c66ff6f9a566ad031c06", - "bytes": 28229 + "sha256": "2c0cf07921ca7ee5a9085ced44498c2e6798e5cc1e8a5ecf704c3cecabe39a25", + "bytes": 27607 }, { "path": "src/main/unraid-runtime-methods.cjs", - "sha256": "78fdb88c0ab376233c114b116559af26c47d83fced47c7a0a0b7248a0ecff8e2", - "bytes": 16946 + "sha256": "d45220176aed72d692f9ae5534f9d40bcc359a2d08e025e74a3b3b505b8b9ed4", + "bytes": 16559 }, { "path": "src/main/unraid-state-methods.cjs", - "sha256": "a3d3c0327f9120ca956735bf4e63a61e0b48e5b120a2b9fbe7b47d8bcf69b286", - "bytes": 11901 + "sha256": "4c5cf01922e1feb36a31b50af22e973d8aee3fecccd406e449690604111898ac", + "bytes": 11608 }, { "path": "src/main/update-service.cjs", - "sha256": "4c1c892391a418b5605bf3e0f9de26c29ce5c907236d0c9afdabcef136dc73f8", - "bytes": 28075 + "sha256": "29b8c5eca83b0e89c7d0716945b5316aac43947b5387e89562d9a024ebc4663c", + "bytes": 27204 }, { "path": "src/renderer/actions/command.js", - "sha256": "856119ff96dd343f5460eb830a586684c1dda7468ddaec858d38d960614f1a42", - "bytes": 1007 + "sha256": "b5c304531bec358d059189a27cd9db8fa20cefb7f817e5eb0287001f7353f6a7", + "bytes": 985 }, { "path": "src/renderer/actions/deployment-operation.js", - "sha256": "6ea98804892017a27450047c6fc5a6193cd98b6f56ded9880eb02c06393683a1", - "bytes": 6889 + "sha256": "d0bf607dd1de9d55f2947d0adf0997cd3ca5c269d10a5362cc1d8bc4d1a2a8ae", + "bytes": 6706 }, { "path": "src/renderer/actions/deployment-profile.js", - "sha256": "d58d8fed4128d6c512fc1c6cac42dfdf5878380cabab9f068abc371d29036d27", - "bytes": 18385 + "sha256": "0db283b1a458ae0b31538940b1ddc931ffdb53bd04ceb7fd8903813f9200d071", + "bytes": 17978 }, { "path": "src/renderer/actions/inventory.js", - "sha256": "3efbd97d65ecd74aa30c7ab51c7ddd3da71c3b9f6296597a51e3d921cf7930e1", - "bytes": 7970 + "sha256": "48bed91dd2a85bb51ee7307f7acc3b79c881ce8cf63b22ba79d5d079b265eb4b", + "bytes": 7785 }, { "path": "src/renderer/actions/recovery.js", - "sha256": "9e8adf1ba89ffc61a7b595f813c784688bdf50daa259204d74b2cdaa81650895", - "bytes": 15493 + "sha256": "f715842a5cc9b02b40d9741f3ac3d2b35a4497421022aa63923b295af6d6110f", + "bytes": 15072 }, { "path": "src/renderer/actions/setup-and-settings.js", - "sha256": "6c26c3604344230df8ee13129526a271b76db48809d02d4e9ff1e3db08dbe2ee", - "bytes": 16720 + "sha256": "2414a0d29a0380d343b9b0e58ba1909e7a7eeb46357fd45ddbb3ad411d119f78", + "bytes": 16280 }, { "path": "src/renderer/actions/shell.js", - "sha256": "058722de35ba33bfcfd29d355a75e1513a2be80c572773472cf9816dd13f894a", - "bytes": 20148 + "sha256": "6900075c7cbcf6638b071735a3ce34954339d3d0ad324373c2bf5afcbd3cfe02", + "bytes": 19618 }, { "path": "src/renderer/app.js", - "sha256": "0d48993bc26ae28bdab5fbfa8d9be4ef896efdb9a5c34094087721e4274593b4", - "bytes": 27566 + "sha256": "d8eee8bc10b23d877919560790c311924bc3c339775dfe225b5b460e040f25de", + "bytes": 26829 }, { "path": "src/renderer/assets/itworx-mark.png", @@ -939,328 +939,328 @@ }, { "path": "src/renderer/dialogs.js", - "sha256": "86a56bb0d1922081797ce624bf62550f99f64c7ebd5582f5799f1b5431eb3393", - "bytes": 55636 + "sha256": "b042d0162a5b595189e06f9680ab12d201ccefd9e8dbb016f721b7ae4bd2bc52", + "bytes": 55202 }, { "path": "src/renderer/diff-view.js", - "sha256": "196ee9c174de6afaae524d6e1bc7c5fccc8165e653adec44b12627f3be2af42b", - "bytes": 2772 + "sha256": "dede1f21a06c73a2c2a462a869d27530d85f99baff202a2eb509c57436ad6aec", + "bytes": 2732 }, { "path": "src/renderer/events.js", - "sha256": "b7698de13b872aa80d27b0a4d977c12ca2303b2246f05e6af4223db9b727e525", - "bytes": 7433 + "sha256": "e0ea09d8d3ab1033452a77a9dfa4557b29ad5428c9050713661fe4699e007bda", + "bytes": 7245 }, { "path": "src/renderer/index.html", - "sha256": "4eae9d462d04b6c65399a13ed679fccd6fc0469b2da97ff6861b932486319621", - "bytes": 1561 + "sha256": "c4a71213d412166093f7bd8254b847de4d8beb58c1aaa356a0cdc8d728080326", + "bytes": 1524 }, { "path": "src/renderer/mock-bridge.js", - "sha256": "f6db7ee9713b684b412f4800b4282ab5ee77fb02f8c5531f6daad20d43cb235d", - "bytes": 21944 + "sha256": "98f4d136c56b4a4e681f6ed77c34e18be69f0f87074520c1be8210f3729d59bb", + "bytes": 21355 }, { "path": "src/renderer/mock-deployment-bridge.js", - "sha256": "9853a4b17e000efa81d76596d7fbdc7277103811302061fae7a0caf6085a8a0d", - "bytes": 29408 + "sha256": "38cb897b4d93360a0aa3adfe7069ea2db0af136c937a83fc166cc957ea7da2df", + "bytes": 28708 }, { "path": "src/renderer/mock-repository-bridge.js", - "sha256": "4a314d7a0fa00d84c8431ade6d598084ac0fd6ded518f035029f230f6f03a1c1", - "bytes": 25815 + "sha256": "a5ca037c02159132e9cee24bb2d879b44904a6d5ba6996f99e530af9dd54eb99", + "bytes": 25036 }, { "path": "src/renderer/operations.js", - "sha256": "297dcb573c61f553c82fb5fad9dae82bc6f1fe958b2b026a49f1dee0fc7600c0", - "bytes": 6733 + "sha256": "94fa265c2fe9ca8d644f0ce9b620b6f85d9b25dca5802c4e9195b66dcbe80120", + "bytes": 6522 }, { "path": "src/renderer/styles.css", - "sha256": "9299c83e43eef194bac2946c43b2ffda6309ccbdcc5b9ce1775e668ae7f172ef", - "bytes": 92319 + "sha256": "b541b5173d9b2a0063825243e87be4b8709d34d4f82a96d3a91d17471b3a60b7", + "bytes": 87983 }, { "path": "src/renderer/views.js", - "sha256": "75fd8896f7d4ccf849a57647615ecd4e5b7fbb5c328afec38c82467bd82a94bc", - "bytes": 113810 + "sha256": "51b6499c4cbee2d25baa86cc6f0966646dce31319ebb5846c4006d2624ee7610", + "bytes": 112935 }, { "path": "src/shared/clone-target.cjs", - "sha256": "e9e72c072a5c5d04f59cd6763de0cfbf736c2a5ffa2f722143f3bad2bdbc630b", - "bytes": 1411 + "sha256": "c7c204360aba6a9a2cf1b0cd80f7aa13ddd212ecea0ed8b385e4c4cc40bfbefc", + "bytes": 1383 }, { "path": "src/shared/deployment-policy.cjs", - "sha256": "7d194738a75be91182d558dfdd22fdc66e8ca9713dcc9622605b9c49c59eaa90", - "bytes": 2541 + "sha256": "5d425d5c2f939d0f6beebee7ebb0c77146cb7e318535ba7286ec7081a4dc2269", + "bytes": 2497 }, { "path": "src/shared/git-status.cjs", - "sha256": "bc13c4d35579e2c64dfd8c0245c48ca4f8bfc8bd1a80210821f4366b799764a9", - "bytes": 3150 + "sha256": "029e600229714d033c28e2dcb77817aa8269847001782ae0012960e83ffd183f", + "bytes": 3057 }, { "path": "src/shared/repository-match.cjs", - "sha256": "98bf82663ecd159c92eb3d4a9d05996797103e620cd9017f9ccee5c614c35ff7", - "bytes": 1334 + "sha256": "2778ebcbdf60fdc1cb0749f15565e0e1bd66f3a0d31eb70ae7942a7511a3de75", + "bytes": 1295 }, { "path": "src/shared/semver.cjs", - "sha256": "c7e120ea53c5ef3c01b8cce71afe913f34bb461bb73aa3ade24656e09f99f338", - "bytes": 1152 + "sha256": "7f4d057a3c8e8d22eda9477eea7b144237824ef0f514737831d1881ff8e7f4a4", + "bytes": 1120 }, { "path": "src/shared/shell-verification.cjs", - "sha256": "a31b275114a2ac376f3f8c69f4328286219767d22024ddeb01070550ad62109f", - "bytes": 3189 + "sha256": "2b58439efc1b4176fe81f03116623a466ef56e7bebe03cf32b568a992a8c1300", + "bytes": 3095 }, { "path": "src/shared/tool-invocation.cjs", - "sha256": "f6acb9c9a3cb9ca771d9cfd133babd8132445322644fc23082313dd1ac1ab2b2", - "bytes": 1252 + "sha256": "2daa98fd421598bfe5fc9757c9b6f4d82c31d1bfece15829928473581d5d2639", + "bytes": 1210 }, { "path": "src/shared/validation.cjs", - "sha256": "f2bd787532454b7f52a19d4161458ced05b3496ceb37ef3db4db84a67a99393e", - "bytes": 5832 + "sha256": "ee73fdf9c591c029243385cb2d2085c3005c7b08c5b9e1b89102201f0ab30759", + "bytes": 5702 }, { "path": "src/shared/zip-writer.cjs", - "sha256": "cfa9298d5ab390f5f1ad8988c73a157e8bee1c2854afc58c4fa0941cfe1da871", - "bytes": 3187 + "sha256": "13b731c38863b1007b0312fd9d89562401b7cce875c952f52429bde74f77a8af", + "bytes": 3096 }, { "path": "tests/acceptance.test.mjs", - "sha256": "1efc658df6e29f5db5aefd3c515115357d33fe7d920e37e1a99a118251babeee", - "bytes": 1020 + "sha256": "f5b0ea887fcdeadec78c1ad49b0ec7979723562f5c0b730703acb77a37281ee0", + "bytes": 1009 }, { "path": "tests/approved-deployment-evidence.test.mjs", - "sha256": "2f2b21754dccd8b734d6c7bd4fdd655df79c7739a1de140e562520c8234aa7a2", - "bytes": 2854 + "sha256": "b8069b1f25bf5ba19bedb8e525210ada683b5e05243e370e6a9da4baa244086a", + "bytes": 2793 }, { "path": "tests/approved-deployment-one-shot.test.mjs", - "sha256": "720ff5b549a3dd70854eb1bac3589c77a2019a61148be8e41e112196c8821ee3", - "bytes": 1079 + "sha256": "8b8767ee4b744e4883afb5e6a1a288bff6da279d7b6c8966ed671d8a53afabdd", + "bytes": 1058 }, { "path": "tests/audit-service.test.mjs", - "sha256": "17ce23545d113267f414173ccd8cbbcc8e6eaeac4a831c5d53f37d7946775905", - "bytes": 1180 + "sha256": "a4e5947204ff6878e601e32477bc85b53cd0153baf95a161c8935b6e5466c257", + "bytes": 1155 }, { "path": "tests/browser/forgeflow.spec.mjs", - "sha256": "6e119cda76b2ee36b93623d98f41371798227f9b3f7c20fbef035a7d7a50cc95", - "bytes": 19402 + "sha256": "8eb8023bfd1366f4cc8c1867fe16fa0bed8d6e9d29219100ae1336aa06d10110", + "bytes": 19040 }, { "path": "tests/clone-target.test.mjs", - "sha256": "1728c0a7abd92f4d7d9e68df32e4a6b00730555f23795e9b36416795d9d127af", - "bytes": 5978 + "sha256": "0d146d3b3428522df02bfacf80332ca6db065cb05666c0e02114885b8d51dea1", + "bytes": 5858 }, { "path": "tests/config-store.test.mjs", - "sha256": "912c3daae8d3a3714a6ae8b4b5f387b24efcdfc541276fe4d898c019355e161b", - "bytes": 18600 + "sha256": "8aa8789a984769b377f719abca42a428fffc4f89b3997d57184a8073d24121e2", + "bytes": 18325 }, { "path": "tests/configuration-backup.test.mjs", - "sha256": "afc181d00bd191f3e8d8074c9fa382d29ddcc1d4bf9186f8f6395b93e3725f14", - "bytes": 2547 + "sha256": "f1463326aee79842d265687ae628189ce54e92544600f2bd14073780287cfb14", + "bytes": 2502 }, { "path": "tests/dependency-wiring.test.mjs", - "sha256": "a460d1ebb731c89ef0be9a4679604c73d0151e44e24da94788c132c3b298bff5", - "bytes": 8294 + "sha256": "144c8e217a334cd69f502938d944e0f2dac61703d5df47e287b9ed542918c779", + "bytes": 8129 }, { "path": "tests/deploy-key-host.test.mjs", - "sha256": "aad5948ea374d1e56e777005c73639654c96a90364dd398c949052cf5ae343a2", - "bytes": 11130 + "sha256": "ca5ea3a38db8a1ab1e8c0a126bf5d680a49a0de985b0ca53b5304a5fd74b4491", + "bytes": 10914 }, { "path": "tests/deploy-key-lifecycle.test.mjs", - "sha256": "636c62293a576e62fbeae3adca3ad6e1345e68da0db555dd3bfde3a532066bc3", - "bytes": 9493 + "sha256": "b7e009fed4171d6dd6b4c3154ba1d3f7198e98f5b79b298687841fc8169447cd", + "bytes": 9354 }, { "path": "tests/deployment-operations.test.mjs", - "sha256": "49bf9cf9842e7899015013675208f83a95402065a082320927a677ee4bab0766", - "bytes": 24875 + "sha256": "57d93ac176cc6ff0850b38fcc6ec5be0e8eaca7e457a5a188bf86fa4a38d5b45", + "bytes": 24378 }, { "path": "tests/deployment-policy.test.mjs", - "sha256": "41589cf470702c7a5af966a096be7ec469c8cfb6133957ec4f4d7ecba395a152", - "bytes": 1967 + "sha256": "1dc6477bd07de78be189e6e8195ec339eb9d75820c4dbd5b073b8520ee21f6b5", + "bytes": 1938 }, { "path": "tests/deployment-status.test.mjs", - "sha256": "e8724cf72de796b763acff18aa01ea95a4ff5b2de211246ec89fb8c67d079e54", - "bytes": 9823 + "sha256": "5d0e26602d027b120073e5c42db4280c30ad532580ede86817e06b9baed1482a", + "bytes": 9630 }, { "path": "tests/diagnostics.test.mjs", - "sha256": "34d824c1bee1b1756c279c938ece61a5b7e4b0fd796ba4c0a594d131e2f1ef0e", - "bytes": 4142 + "sha256": "9a97e79618393d9f9818cb958bd038e0095489331fba0b29de313aaaaa1ce30d", + "bytes": 4064 }, { "path": "tests/external-tools.test.mjs", - "sha256": "9f862a67d93edf4adc7c8b04040f9ea56394b56445a70cfd658b8def6cd336d1", - "bytes": 952 + "sha256": "b63eb5bcd89c34629386c745e80c2f83f0709ebce62459b583e665d0a99654c6", + "bytes": 938 }, { "path": "tests/git-integration.test.mjs", - "sha256": "26e94450c6ab1dd0d5149d6812e66814a719f80d6f95fcb3a9dee7a3d7f46293", - "bytes": 20559 + "sha256": "0ead82ddf5561a594cddd99fe8257b7729710b811c6ba78b44d0c6e0aaca13b3", + "bytes": 20164 }, { "path": "tests/git-status.test.mjs", - "sha256": "cd294dcaf050d639472cb1f9c1a48484fbc74271e527bf9d8153b00e903e2101", - "bytes": 1273 + "sha256": "5ea94c6b241a02060d531fad94e449eecd3772eed2137581d4e2babfb09e56db", + "bytes": 1239 }, { "path": "tests/git-validator-policy.test.mjs", - "sha256": "8ac410d7173bfc3e4b967138d2d6343fb1796b2cbde4fb538b8a38b801377d24", - "bytes": 4350 + "sha256": "61e0b8cad926acd22b5b17e4044f7edcbe96b6977cbbe2b6fbe123406626fc89", + "bytes": 4283 }, { "path": "tests/git-validator.test.mjs", - "sha256": "8950162b8ab1b644bca230cf9871f64e530e6d612a9d89a942c3e49b686fce30", - "bytes": 6239 + "sha256": "2b31459f14a5e36e30cf84c1054f634f4dba8676d29adeb9c2a8e18179f56fa0", + "bytes": 6097 }, { "path": "tests/git-workflows.test.mjs", - "sha256": "eeb7ebc5b2deb882590f8abca3ce76a6e1f9ee26e75d37d3ed1d753790785973", - "bytes": 2449 + "sha256": "681ab7bcd02c4dd98d1d8d2092a3521c489d941131e7ffe5903971b940046474", + "bytes": 2403 }, { "path": "tests/gitea-actions.test.mjs", - "sha256": "4e9391976989b302d626fb820738d49622e3bc20ad46441685015addc180009f", - "bytes": 19052 + "sha256": "20784505b963818488c8026595f24b8609fcc5f0a045e2b96ddfa6f184d64549", + "bytes": 18709 }, { "path": "tests/inventory-classifier.test.mjs", - "sha256": "f7d9e24146ac87a180fd60e0a2514c971eaaac9001014f7d63336281aae7403e", - "bytes": 9759 + "sha256": "fcc9a063882840dd89d74c2785284c8f2f6a9e5acec482b6d89ed8de62efdb85", + "bytes": 9635 }, { "path": "tests/ipc-contract.test.mjs", - "sha256": "b73b49e177e0436988d4d38132ea008a35290187ee33deb289b12b621923caa2", - "bytes": 2074 + "sha256": "62b90c21c15b841af30d26ccb0b9e88d25674fa7dbff9dc231dd8a1dddc3d657", + "bytes": 2025 }, { "path": "tests/log-redaction.test.mjs", - "sha256": "c6614369c43ba42531fea6d365187d1a579018374b2fd5c317b4cbc902d1cf61", - "bytes": 3067 + "sha256": "53b1f3225ae8ea9deb57f735bec9f9557ae3c85bf884a45aba234856e9e20b4f", + "bytes": 3013 }, { "path": "tests/partial-staging.test.mjs", - "sha256": "107d5eb14d1733709f05e817ef303b4c592470b6f9fd057fa804c9a1e2a10a7c", - "bytes": 2331 + "sha256": "96432a97d313f331694900bf0a2c21e38c20eac96d59147977aeed9055a9e3ad", + "bytes": 2287 }, { "path": "tests/preflight.test.mjs", - "sha256": "d5433897838ea42146cfc15e140e55d1f254e72186a0a5f50d2d43d50490f33c", - "bytes": 12004 + "sha256": "1b6c920e18a248f78acaed6187197c88ec8d911b62d5e2a9f8ad57b91ae80499", + "bytes": 11827 }, { "path": "tests/process-error-policy.test.mjs", - "sha256": "070f2857e70d2b36310f2636582ef0eec49f398b3f009bd3742c6c9e676ba508", - "bytes": 1231 + "sha256": "7f2751ea2621f76b5427f442e931344d13e97faa7b6ef3151949bbd6a03097cf", + "bytes": 1205 }, { "path": "tests/production-acceptance.test.mjs", - "sha256": "0abe5fcea0ab8769188f2131e99301979d4f4983cf9924266291bc716c9e5d33", - "bytes": 6564 + "sha256": "0cb884cf62c1cb02cf59a81662be055bcb5339d176de85e2a3eeb8e8573e11b3", + "bytes": 6435 }, { "path": "tests/renderer-workflow.test.mjs", - "sha256": "11fd2029593c0f4e5c36f1ce8572734f8ac9afead5abca7f5b619c5814b40a6c", - "bytes": 12602 + "sha256": "1635efed857c776e677a064175a01b0f8b21bf7ead0b02c08956286077b8a37e", + "bytes": 12294 }, { "path": "tests/repository-matching.test.mjs", - "sha256": "af43f29c5c1dd78095a3a471b904964c613f1eb567310ffcfc432cbbc9f8f986", - "bytes": 872 + "sha256": "2b4956fa4df4624a04117737e57ba74020564330ff71303b5746d8ccc881e880", + "bytes": 854 }, { "path": "tests/repository-monitor.test.mjs", - "sha256": "4defa3c5f21db7fefbd79397c96b6c231a4330df60b54c0fea7e91412e336fd3", - "bytes": 6237 + "sha256": "cb6ef8de4a1cf4a4230db3c13b55155d59e6ace8f7f713ed798dd1bd7da7c0f0", + "bytes": 6085 }, { "path": "tests/repository-service.test.mjs", - "sha256": "d4d2f9e2f6e7c672273a4126966f739c10d584d9e976d8630fe4b988c02dbb47", - "bytes": 13784 + "sha256": "5476f3ba90bc096d4172900d9b54ada7c12da521f8627913d87794eade3cee23", + "bytes": 13494 }, { "path": "tests/security-validation.test.mjs", - "sha256": "1e4807cbcb19f4dd7787dc1779e3b60a6462989b13bdf482b38a489a756b0b5e", - "bytes": 3639 + "sha256": "4383acacd0db493b2af07b34d84805cc571c636f9130dbfa97087f3f454c14ab", + "bytes": 3571 }, { "path": "tests/semver.test.mjs", - "sha256": "bab853feb0e22aa25af17989baaa632c01efa636533ea67407fecfdd973c7024", - "bytes": 627 + "sha256": "ecfdad2a03c24898c822fcf05abac89c8f8fe452a05b16fdafc0236a64c27a23", + "bytes": 614 }, { "path": "tests/server-inventory-branches.test.mjs", - "sha256": "76ec40ba206203c89ee41212b75f53159a86ef94af9c64ff3fa204b160cb37eb", - "bytes": 11936 + "sha256": "12cb3b240bdd0922566323c0014838ca067ad10d9d4009943165ae2c4e93bc6f", + "bytes": 11786 }, { "path": "tests/shell-verification.test.mjs", - "sha256": "5df7f331cc1120a0914f5ddbf39d9a6b83bd5ada70a9953b3f6bd0701ba2485e", - "bytes": 4394 + "sha256": "ad6664060c7a9eab7e1d383e6e14b98e744978e803a17bbef8a3de6f2c63ac2c", + "bytes": 4298 }, { "path": "tests/ssh-connection-pool.test.mjs", - "sha256": "977fc36c38a3af16558fb2c3b2b38a9466aaf08b0e7234d4cab354dee181b4b0", - "bytes": 9345 + "sha256": "a39d30f47813dfb98c998811f3d76ebbb1544ecfd017a165d44f9afb80d7daf9", + "bytes": 9090 }, { "path": "tests/ssh-connection.test.mjs", - "sha256": "0149be4165bd5379c8324813cfe536f1620a5c324bead43dd0f463e63bb84d08", - "bytes": 4183 + "sha256": "7ee9166327ed227d2b7c6929692dea5c5d7a41c3e566596fa92d9ec4f42e8677", + "bytes": 4085 }, { "path": "tests/ssh-service.test.mjs", - "sha256": "259f4952baea6e4631f1670c2dfc1cf2e2b4c4ec670a691be922a3784c294491", - "bytes": 9667 + "sha256": "c9354e4bf3720c28cff21c15ff8b9474ba4a23b7f55389de4326f4dffde54d78", + "bytes": 9510 }, { "path": "tests/tool-invocation.test.mjs", - "sha256": "c61d8ef97ec7f63f3ba0f7bbda11ba1d1bfbe1a5fd85caab2bfec612ad393aa0", - "bytes": 1843 + "sha256": "8a6a8477eb94b85ccef18cddd2640afb0d1eafa679c96bc7de20428d5d69e1be", + "bytes": 1794 }, { "path": "tests/unraid-deployment.test.mjs", - "sha256": "8df71b18f53ac6fe4cb8dc11d526f66c4db374ef9f738a6d85bb5ee2de224515", - "bytes": 60887 + "sha256": "6d532e078975fae1b6e924a65cfe841c5619126340f7e6f76468250d507253ee", + "bytes": 59346 }, { "path": "tests/update-service.test.mjs", - "sha256": "34d49d3b91d087367d5129abbeb2428e8e259edfadcabf9bf68be9aa51329332", - "bytes": 31447 + "sha256": "2357ce799b38edae940f6bb5f047d0b9d013d88ce47a9bed0416a41e6af3d5f8", + "bytes": 30648 }, { "path": "tests/validation.test.mjs", - "sha256": "9ecd063698bba4c49f308617399d6ad9ca87946f9ed885412f5a71fb0ee424bd", - "bytes": 970 + "sha256": "9cea5c1d5ba3e0972a0b5c7236cf1f7c5616373e0a39ea4a492ecebf70452e40", + "bytes": 948 }, { "path": "tests/zip-writer.test.mjs", - "sha256": "b9b5ebe3ef0d15f5d6d45d2e8bc49097b59633e7684e72a1f8fad084e6010746", - "bytes": 1822 + "sha256": "7ef4d4b9f5f3e6979293b29d571ce0e39f83197f3cade2d999a9cea7bacdd84d", + "bytes": 1781 }, { "path": "update-windows.ps1", - "sha256": "c2ea145fd3dc55cc82ae2c975d48e3aee1061fd184ca2a688b498a91743a8a2c", - "bytes": 1690 + "sha256": "2ebde94f664d86f42aea9bb3112b70b272c6706f4d364cad2f5c6191d2873e98", + "bytes": 1655 } ] } diff --git a/README.md b/README.md index 76303dc..461e895 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,86 @@ -# ForgeFlow — publieke broncode +# ForgeFlow -Dit is de gecontroleerde publieke broncode van ForgeFlow. De canonieke ontwikkelrepo is privé; wijzigingen komen hier via een gecontroleerde export zonder de private Git-geschiedenis. +
From a local change to a verified server revision.
+Product tour · Features · Get started · Deployment model
-**Bestaande Windows-installaties:** gebruik voorlopig de [bestaande releases](https://gitea.itworx.tech/Jens/ForgeFlow/releases/latest). De release- en updatebestemming verhuist pas wanneer de nieuwe ondertekende releaseketen werkt. Deze bronrepo bevat momenteel geen nieuwe Windows-release. +ForgeFlow is a Windows desktop application for teams that use Git, Gitea and self-hosted Docker or Unraid servers. It brings local changes, remote commits and the exact revision running on a server into one workspace, then guides review, commit, push, deployment and verification. -De broncode wordt verspreid onder de [MIT-licentie](LICENSE). Zie [START_HERE.md](START_HERE.md) voor installatie vanuit broncode. +> **Public-source edition:** This repository contains reviewed source files from a private canonical repository. It does not yet host signed Windows releases. `PUBLIC_SOURCE_MANIFEST.json` identifies the exact source revision and file hashes; private Git history is not included. + +**Downloads:** Existing signed Windows releases remain at [the legacy ForgeFlow release page](https://gitea.itworx.tech/Jens/ForgeFlow/releases/latest) during the public-repository transition. The [curated public source](https://gitea.itworx.tech/Jens/ForgeFlow-Public) is separate; it will become the release destination only after signing and update compatibility are verified. + +## See the workflow + + + +| Review local work | Reconcile deployments | +| --- | --- | +|  |  | + +*The captures use example repositories and demo state; they are not a live infrastructure dashboard.* + +## Key capabilities + +| Area | What ForgeFlow helps you do | +| --- | --- | +| Action queue | See which repositories need review, a push, deployment or health attention. | +| Git review | Inspect diffs, stage files or hunks, commit, push and recover from common sync problems. | +| Gitea awareness | Compare local and remote revisions, review branch protection and open a pull request. | +| Server inventory | Discover Docker, Compose and DockerMan workloads and link them only when repository evidence matches. | +| Exact-commit deployment | Dispatch a reviewed revision and compare the full local, Gitea and live commit SHAs. | +| Git Validator | Inspect repository identity, protection, documentation, secret hygiene and oversized files. | +| Diagnostics | Keep configuration local and redact sensitive values in support exports. | + +ForgeFlow distinguishes a matching commit from a healthy deployment. It keeps incomplete evidence visible instead of claiming that a server is current when its live SHA is unknown. + +## Get started + +### Install the Windows app + +1. Download an installer or portable executable from the [published release page](https://gitea.itworx.tech/Jens/ForgeFlow/releases/latest). +2. Launch ForgeFlow and complete the setup wizard. +3. Add your Gitea URL, a token with the required repository permissions, and the local folders to scan. +4. Optionally add a Docker or Unraid host, then use **Scan servers** to review detected workloads. + +The packaged updater checks a release against the exact remote commit, its SHA-256 checksum and the embedded Ed25519 publisher key. Existing installations continue to use the legacy release endpoint until the migration is qualified. + +### Explore with example data + +Requirements: Node.js 22, npm and Git. + +```powershell +npm ci +npm run demo +``` + +Open