@xgent-ai/skills 0.7.5 → 0.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (717) hide show
  1. package/.claude/hooks/xgent-statusline.js +32 -18
  2. package/README.md +61 -35
  3. package/bin/phoenix-diagram.js +14 -0
  4. package/bin/xgent-skills.js +132 -240
  5. package/dist/phoenix-diagram/LICENSE +21 -0
  6. package/dist/phoenix-diagram/NOTICE.md +34 -0
  7. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/005fc765ddc5115da796cca915baa9557abae13ff35e0a47c47affc56f6c414d.txt +272 -0
  8. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/010492e490b92ec85db01daad2a290ea5959f29314a1c4ff25e7a172e223abf9.txt +18 -0
  9. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f.txt +3 -0
  10. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0218327e7a480793ffdd4eb792379a9709e5c135c7ba267f709d6f6d4d70af0a.txt +201 -0
  11. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/02bb8c3b4e70190e3986c0404ad2fd8d639b4f534252d82379cc1b502b6d1812.txt +191 -0
  12. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0444c6991eead6822f7b9102e654448d51624431119546492e8b231db42c48bb.txt +25 -0
  13. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0552c898248eadfc130df0c0e8f6f82776fcb3f1dd5a5af2fa991b5baff9367a.txt +21 -0
  14. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0ab4d106b6faac07fb6a051815fd1b4d862d730895e2d7d7358c2f13565e7a38.txt +20 -0
  15. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0b28172679e0009b655da42797c03fd163a3379d5cfa67ba1f1655e974a2a1a9.txt +25 -0
  16. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0d3f7c086c6b6cf3ea4aac714e9aa3e1fb02e355ce35bd21c56acf8d04390885.txt +21 -0
  17. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0dd882e53de11566d50f8e8e2d5a651bcf3fabee4987d70f306233cf39094ba7.txt +21 -0
  18. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f.txt +21 -0
  19. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/117829c3ca21efb132d81a44b55363d395ab8eea18526873bc828da4c0e5f038.txt +21 -0
  20. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/123a331b5dbf04c30097fa43b8f858bc85df671fe776de498d01f3d6b7c1f69e.txt +25 -0
  21. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/1a2f5c12ddc934d58956aa5dbdd3255fe55fd957633ab7d0d39e4f0daa73f7df.txt +26 -0
  22. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5.txt +373 -0
  23. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/1f485f0d6125658861351e3d6084ea90fefe78f89450be9915044b7c56d5a75a.txt +15 -0
  24. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/209fbbe0ad52d9235e37badf9cadfe4dbdc87203179c0899e738b39ade42177b.txt +26 -0
  25. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/20c7855c364d57ea4c97889a5e8d98470a9952dade37bd9248b9a54431670e5e.txt +25 -0
  26. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/20fe7b00e904ed690e3b9fd6073784d3fc428141dbd10b81c01fd143d0797f58.txt +176 -0
  27. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/219920e865eee70b7dcfc948a86b099e7f4fe2de01bcca2ca9a20c0a033f2b59.txt +7 -0
  28. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/23860c2a7b5d96b21569afedf033469bab9fe14a1b24a35068b8641c578ce24d.txt +7 -0
  29. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3.txt +23 -0
  30. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5.txt +220 -0
  31. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/27995d58ad5c1145c1a8cd86244ce844886958a35eb2b78c6b772748669999ac.txt +25 -0
  32. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/28a9529c7d0bb4dc51f4bf5c116a3d16ef247a052f7591466768ddf563fd1cf5.txt +428 -0
  33. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/29e9fe5074bd27e0e5d5d110394fbbcd841baee2651a3c4b4560a632702cede4.txt +26 -0
  34. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/30fefc3a7d6a0041541858293bcbea2dde4caa4c0a5802f996a7f7e8c0085652.txt +23 -0
  35. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3521672491a3479422d5fe1aca6645dd2984090f85da6e5205abfb18fb7a6897.txt +25 -0
  36. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/35242e7a83f69875e6edeff02291e688c97caafe2f8902e4e19b49d3e78b4cab.txt +176 -0
  37. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/36516aefdc84c5d5a1e7485425913a22dbda69eb1930c5e84d6ae4972b5194b9.txt +23 -0
  38. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/375bdbf54d6584debb4bcc5bce1c9dcfdd581f977c9a8469113dbdf208f4c927.txt +131 -0
  39. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397.txt +25 -0
  40. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/391a5396cec6230bfabd4ef4eb2350eb895bc5efce377a2218f5702ed020d3e3.txt +20 -0
  41. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/39712155836e5c10ef1b07037b606e4ad2d633e72205d162fdd7e2290aa54f15.txt +21 -0
  42. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3bb1e548250b3acc43febde65a5cdba9f2e0a3288018aa41f009a3c59ffab51a.txt +390 -0
  43. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3bc70e239e91272782006c638fc0452a714d384224f11f0923036b7be07cf9b5.txt +21 -0
  44. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04.txt +373 -0
  45. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3f941b3b89cf7b8370ceb83cc76d2120d471b58735d8ca60238a751a48d7f72f.txt +359 -0
  46. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/3fa4ca83dcc9237839b1bdeb2e6d16bdfb5ec0c5ce42b24694d8bbf0dcbef72c.txt +25 -0
  47. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/42fa16951ce7f24b5a467a40e5b449a1d41e662f97ca779864f053f39e097737.txt +26 -0
  48. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/4455bf75a91154108304cb283e0fea9948c14f13e20d60887cf2552449dea3b1.txt +21 -0
  49. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/451167c55c0fa447cc2d5632714f5e3c567fe4f1e1badefab2c1333852198aca.txt +542 -0
  50. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/45f522cacecb1023856e46df79ca625dfc550c94910078bd8aec6e02880b3d42.txt +25 -0
  51. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/45fd05c4865e7c350b98ad7ac50e1b15462d49af4a91e9b0c9dd933dc9a69742.txt +201 -0
  52. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/4789210f4df8abc03fce1cddd9c2ba517f184840687f2815d741de282c1aa93a.txt +228 -0
  53. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/4cada0bd02ea3692eee6f16400d86c6508bbd3bafb2b65fed0419f36d4f83e8f.txt +25 -0
  54. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/516b24e051bf5630880ebbd55c40a25ce9552ebaf8970a53e8976eb70e522406.txt +201 -0
  55. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/553fffcd9b1cb158bc3e9edc35da85ca5c3b3d7d2e61c883ebcfa8a65814b583.txt +13 -0
  56. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/5757a1f28eff735a8b5e7425478f367812d71e974530f5bedd01219480965f4a.txt +51 -0
  57. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/5b698ca13897be3afdb7174256fa1574f8c6892b8bea1a66dd6469d3fe27885a.txt +19 -0
  58. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/5e05b024f653a5ce199e77cbbbd42fb5553562ec714b819421ed0c3e552a75d7.txt +25 -0
  59. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/60a7062291b01ba068f300612cdbdc20382ac1d4934f07bcdd7167c15299f309.txt +25 -0
  60. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/62065228e42caebca7e7d7db1204cbb867033de5982ca4009928915e4095f3a3.txt +25 -0
  61. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/62c7a1e35f56406896d7aa7ca52d0cc0d272ac022b5d2796e7d6905db8a3636a.txt +176 -0
  62. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb.txt +25 -0
  63. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/65f94e99ddaf4f5d1782a6dae23f35d4293a9a01444a13135a6887017d353cee.txt +25 -0
  64. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/6df43f6f4b5d4587f3d8d71e45532c688fd168afa5fe89d571cb32fa09c4ef51.txt +187 -0
  65. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/709e3175b4212f7b13aa93971c9f62ff8c69ec45ad8c6532a7e0c41d7a7d6f8c.txt +25 -0
  66. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/71674605ec4c087fe9eb534e3e4f9e26eb2e4aabcd76a29fd156c6a844d44b3d.txt +21 -0
  67. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7365cc8878a1d7ce155a58c4ca09c3d7a6be413efa5334a80ea842912b669349.txt +25 -0
  68. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7abd9b6960dcf7d4d0a48606a5b71bfe37d472db68d70637f3a58a56785f1621.txt +13 -0
  69. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0.txt +25 -0
  70. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7ca6700600dfa9c9497bf5556365067daa802c871ea78239f129309c7a2048f7.txt +21 -0
  71. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7cfafc877eccc46c0e346ccbaa5c51bb6b894d2b818e617d970211e232785ad4.txt +15 -0
  72. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c.txt +24 -0
  73. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7e5886959f67f8c75063a9d55cd3cb08c5a8cbea9a944fa1df2d4ae038f53721.txt +21 -0
  74. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/7fea0ee51a4ca5d5cea7464135fd55e8b09caf3a61da3d451ac8a22af95c033f.txt +20 -0
  75. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8173d5c29b4f956d532781d2b86e4e30f83e6b7878dce18c919451d6ba707c90.txt +201 -0
  76. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/83c1763356e822adde0a2cae748d938a73fdc263849ccff6b27776dff213bd32.txt +24 -0
  77. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/86dd7f026f916daf7511e39951ad8ea8cf55a8db67ae64060dacf829761c18f3.txt +25 -0
  78. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8a35369f3ca263b3c62fbb5032947e53b6bfebc6c8a4d1bb982de1c069f6fba5.txt +21 -0
  79. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8b43ce8accd61e9d370b5ca9e9c4f953279b5c239926c62315b40e24df51b726.txt +25 -0
  80. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8bb1b50b0e5c9399ae33bd35fab2769010fa6c14e8860c729a52295d84896b7a.txt +201 -0
  81. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8bce3b45e49ecd1461f223b46de133d8f62cd39f745cfdaf81bee554b908bd42.txt +21 -0
  82. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/8c7516d4b27b1e495be5e38b612298b63de48d05f49cdac94f70f3cd70f8864b.txt +25 -0
  83. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9046848b63a5c92bff14e4accca80bd987e0623b74adf9226ce5198d312b79d5.txt +30 -0
  84. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/90eb64f0279b0d9432accfa6023ff803bc4965212383697eee27a0f426d5f8d5.txt +12 -0
  85. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9117d922e667125508dde62b02c1f57ed22f5ad21eb536aa2e2d99e1c796e639.txt +25 -0
  86. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9387c2d197e2370a740ca457dae1662c56de56b811ee4862024343961307f9bf.txt +19 -0
  87. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/946c9835d8034d24404f8cfec5f4654cee5dad17e944afc3d06d742cf2882831.txt +240 -0
  88. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/95bd3988beee069fa2848f648dab43cc6e0b2add2ad6bcb17360caf749802bcc.txt +176 -0
  89. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9ba9550ad48438d0836ddab3da480b3b69ffa0aac7b7878b5a0039e7ab429411.txt +396 -0
  90. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9d185ac6703c4b0453974c0d85e9eee43e6941009296bb1f5eb0b54e2329e9f3.txt +202 -0
  91. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9e0dfd2dd4173a530e238cb6adb37aa78c34c6bc7444e0e10c1ab5d8881f63ba.txt +25 -0
  92. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9f2ae19ef94ba82887729a4a1617ff25eede56611dd21a4b2c6f797df30fca33.txt +2013 -0
  93. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/9fa38f610a00115dd1f612bdd3559e3b381ea579538b6ff25a5899da250a5fce.txt +21 -0
  94. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a00511478c83ebb464ef19d840f061c7444adc4636bb561900e75c5808cfc6cc.txt +21 -0
  95. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a2010f343487d3f7618affe54f789f5487602331c0a8d03f49e9a7c547cf0499.txt +121 -0
  96. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a5dea80c1f383cb5f80a6bb0da5e55a2beb9f24adb123ce6300af2cbaaa3bf65.txt +19 -0
  97. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2.txt +201 -0
  98. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a825bd853ab71619a4923d7b4311221427848070ff44d990da39b0b274c1683f.txt +21 -0
  99. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/a9040321c3712d8fd0b09cf52b17445de04a23a10165049ae187cd39e5c86be5.txt +201 -0
  100. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/aaff376532ea30a0cd5330b9502ad4a4c8bf769c539c87ffe78819d188a18ebf.txt +201 -0
  101. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/ae9baa7beea910273c2f384c2a6b721fb7bd02bda3436074a1072e4ee689f985.txt +25 -0
  102. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b1181a40b2a7b25cf66fd01481713bc1005df082c53ef73e851e55071b102744.txt +19 -0
  103. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b38f11f6096706e6de553dabe2a7ed142d59b6fa8c97e290c67496154745cdd5.txt +25 -0
  104. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b3d734001a94efff3579978d953391aa7115f877657d25eb54037a43875d078a.txt +9 -0
  105. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1.txt +201 -0
  106. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b4eb00df6e2a4d22518fcaa6a2b4646f249b3a3c9814509b22bd2091f1392ff1.txt +27 -0
  107. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b68ad1a3367b825447089e1f8d6829b97f47a89eb78d2f4ebaef4672f5606186.txt +22 -0
  108. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/b7e650f3fce5c53249d1cdc608b54df156a97edd636cf9d23498d0cfe7aec63e.txt +19 -0
  109. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c09aae9d3c77b531f56351a9947bc7446511d6b025b3255312d3e3442a9a7583.txt +21 -0
  110. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c16f8dcf1a368b83be78d826ea23de4079fe1b4469a0ab9ee20563f37ff3d44b.txt +201 -0
  111. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c2cfccb812fe482101a8f04597dfc5a9991a6b2748266c47ac91b6a5aae15383.txt +21 -0
  112. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c30152c94a6d75e021adbc52b3a52470366a46edb917e17deae3259251af244c.txt +42 -0
  113. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c394e3bda1f3b9378f30a7cab11242887eeeafc73c7bef36a0fe13e09691e18b.txt +17 -0
  114. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4.txt +201 -0
  115. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c962ee4d1d05ddc138b202b2540219ebc57893fcf97b364852094a9a94ce1365.txt +7 -0
  116. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/c9a75f18b9ab2927829a208fc6aa2cf4e63b8420887ba29cdb265d6619ae82d5.txt +25 -0
  117. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30.txt +202 -0
  118. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/d1fc1bc0d155df60b2e7705b6b2ae02a05c96f948e1cec6e2fb86360b09f346b.txt +29 -0
  119. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/d5c22aa3118d240e877ad41c5d9fa232f9c77d757d4aac0c2f943afc0a95e0ef.txt +25 -0
  120. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/d5fca2653c88ad02d197faead77e22b80c70636b5bec6e02f2805f389a21b86d.txt +10 -0
  121. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/db11fec9946737df39ca3898d9cd8c10ec6f6c3a884a6802b0ad0b81b4e8f23a.txt +1 -0
  122. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/dc91f8200e4b2a1f9261035d4c18c33c246911a6c0f7b543d75347e61b249cff.txt +25 -0
  123. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/ddea4e94a1c35ed9826e54e13a5b50b8f81b21665a00ca07c8861f1859e56b6b.txt +14 -0
  124. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/e271993808fec50ab29350b39539cdec611a9103f827e0aa26d61da70e2d33f8.txt +61 -0
  125. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/e66c269d4819aaab34b49ef5220c4ddab6756f21bb5180761a4eb8561f2b7bbd.txt +438 -0
  126. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/ecc269ef87fd38a1d98e30bfac9ba964a9dbd9315c3770fed98d4d7cb5882055.txt +25 -0
  127. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/efcfee7981ff72431fffb06925cad00a23dce079ed4354f61030ad5abdb78829.txt +22 -0
  128. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f025ccfb7dfb6bdfedc75ca0f67acc69e6fb4998143d834f7c2f38a29989680f.txt +13 -0
  129. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f367c1b8e1aa262435251e442901da4607b4650e0e63a026f5044473ecfb90f2.txt +46 -0
  130. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f51ac2c59a222f7476ce507ca879960e2b64ea64bb2786eefdbeb7b0b538d1b7.txt +25 -0
  131. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f7715d38a3fa1b4ac97c5729740752505a39cb92ee83ab5b102aeb5eaa7cdea4.txt +25 -0
  132. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f7db81051789b729fea528a63ec4c938fdcb93d9d61d97dc8cc2e9df6d47f2a1.txt +39 -0
  133. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/f9c4c77baa3828004ee54b8a4f2db2e88ed44a6237a493965bf551fac0fcb62d.txt +17 -0
  134. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85.txt +373 -0
  135. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/fb77f0a9c53e473abe5103c8632ef9f0f2874d4fb3f17cb2d8c661aab9cee9d7.txt +25 -0
  136. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/ff8f68cb076caf8cefe7a6430d4ac086ce6af2ca8ce2c4e5a2004d4552ef52a2.txt +25 -0
  137. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/ff92bed461f50338dd703a9ba9aee496a425957873df1d91192776e4bdf5dda7.txt +74 -0
  138. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/COPYRIGHT-library.html +29357 -0
  139. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/Apache-2.0.txt +73 -0
  140. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/BSD-2-Clause.txt +9 -0
  141. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/CC-BY-SA-4.0.txt +427 -0
  142. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/GCC-exception-3.1.txt +30 -0
  143. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/GPL-2.0-only.txt +133 -0
  144. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/GPL-3.0-or-later.txt +202 -0
  145. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/ISC.txt +7 -0
  146. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/LLVM-exception.txt +15 -0
  147. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/MIT.txt +9 -0
  148. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/NCSA.txt +29 -0
  149. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/OFL-1.1.txt +43 -0
  150. package/dist/phoenix-diagram/THIRD-PARTY-LICENSES/rust-std-1.99.1/licenses/Unicode-3.0.txt +39 -0
  151. package/dist/phoenix-diagram/THIRD-PARTY-NOTICES.md +210 -0
  152. package/dist/phoenix-diagram/THIRD-PARTY.json +5459 -0
  153. package/dist/phoenix-diagram/VERSION.json +39 -0
  154. package/dist/phoenix-diagram/bundle/ENGINE.json +39 -0
  155. package/dist/phoenix-diagram/bundle/SKILL.md +109 -0
  156. package/dist/phoenix-diagram/bundle/examples/minimal.architecture.json +11 -0
  157. package/dist/phoenix-diagram/bundle/examples/minimal.class.json +23 -0
  158. package/dist/phoenix-diagram/bundle/examples/minimal.dataflow.json +11 -0
  159. package/dist/phoenix-diagram/bundle/examples/minimal.erd.json +25 -0
  160. package/dist/phoenix-diagram/bundle/examples/minimal.lifecycle.json +11 -0
  161. package/dist/phoenix-diagram/bundle/examples/minimal.sequence.json +13 -0
  162. package/dist/phoenix-diagram/bundle/examples/minimal.timeline.json +15 -0
  163. package/dist/phoenix-diagram/bundle/examples/minimal.tree.json +13 -0
  164. package/dist/phoenix-diagram/bundle/examples/minimal.waterfall.json +12 -0
  165. package/dist/phoenix-diagram/bundle/examples/minimal.workflow.json +12 -0
  166. package/dist/phoenix-diagram/bundle/manifest.json +253 -0
  167. package/dist/phoenix-diagram/bundle/references/architecture-compare.md +111 -0
  168. package/dist/phoenix-diagram/bundle/references/authoring-defaults.md +42 -0
  169. package/dist/phoenix-diagram/bundle/references/brand-marks.md +52 -0
  170. package/dist/phoenix-diagram/bundle/references/compatibility.md +22 -0
  171. package/dist/phoenix-diagram/bundle/references/delivery-contract.md +127 -0
  172. package/dist/phoenix-diagram/bundle/references/extending-types.md +14 -0
  173. package/dist/phoenix-diagram/bundle/references/migration.md +57 -0
  174. package/dist/phoenix-diagram/bundle/references/preview.md +45 -0
  175. package/dist/phoenix-diagram/bundle/references/repository-authoring.md +29 -0
  176. package/dist/phoenix-diagram/bundle/references/viewer-runtime.md +27 -0
  177. package/dist/phoenix-diagram/bundle/schemas/README.md +23 -0
  178. package/dist/phoenix-diagram/bundle/schemas/architecture.schema.json +329 -0
  179. package/dist/phoenix-diagram/bundle/schemas/class.schema.json +348 -0
  180. package/dist/phoenix-diagram/bundle/schemas/common.schema.json +358 -0
  181. package/{skills/archify → dist/phoenix-diagram/bundle}/schemas/dataflow.schema.json +36 -8
  182. package/dist/phoenix-diagram/bundle/schemas/erd.schema.json +384 -0
  183. package/dist/phoenix-diagram/bundle/schemas/lifecycle.schema.json +202 -0
  184. package/{skills/archify → dist/phoenix-diagram/bundle}/schemas/sequence.schema.json +41 -10
  185. package/dist/phoenix-diagram/bundle/schemas/timeline.schema.json +170 -0
  186. package/dist/phoenix-diagram/bundle/schemas/tree.schema.json +144 -0
  187. package/dist/phoenix-diagram/bundle/schemas/waterfall.schema.json +150 -0
  188. package/{skills/archify → dist/phoenix-diagram/bundle}/schemas/workflow.schema.json +42 -10
  189. package/dist/phoenix-diagram/bundle/scripts/phoenix-bootstrap.cjs +589 -0
  190. package/dist/phoenix-diagram/bundle/scripts/phoenix-diagram +6 -0
  191. package/dist/phoenix-diagram/bundle/scripts/phoenix-launcher.cjs +10 -0
  192. package/dist/phoenix-ui/THIRD-PARTY.json +164 -158
  193. package/dist/phoenix-ui/VERSION.json +17 -17
  194. package/dist/phoenix-ui/bundle/blobs/00727f7b333a7be8ac7740aa257a3a3f691db8ae545a6afab2b787acab5e88df +46 -0
  195. package/dist/phoenix-ui/bundle/blobs/{547e3c89d5b8feeddd67e43131fd84b95253eb42bf7d730b4e471dba011f6e51 → 00f4a6a630f31eb05fbdd5725e4a294233d24574bd70f4f32f4597d8256a7c1c} +0 -4
  196. package/dist/phoenix-ui/bundle/blobs/{41400e182e2180a567923d58bfa935d2799a54f2a747b2c5813c3884c84f768b → 04057592e18ea9dd3c4edcac14cde3fa5b75239c2552d4459db8e047068f61a8} +6 -7
  197. package/dist/phoenix-ui/bundle/blobs/{34571f7d46632205d518d15cb008457494dfad745c6b483bb11d63ca3a22ac48 → 0cb3bf26e1980b0e530373fb32edbe5864a171492a04e2abe1952ffe78bff231} +6 -7
  198. package/dist/phoenix-ui/bundle/blobs/{852d2943678a76c33b2f7a090d2ca6c152cd120e9ae62775fcc91519b9289011 → 0e684572eb98d24b39cd70fa23e66c163178f5a11756dcf8a98fe2335636b33f} +6 -3
  199. package/dist/phoenix-ui/bundle/blobs/{d17b3a454146e74ef4ecf69d7b72a8fa45c4fe1c695dffb0d36690b653cd2d8f → 10553c45c7bf38e527a57a281c4365152a768b4dd7ef597ff34ae841e9ff7d41} +6 -7
  200. package/dist/phoenix-ui/bundle/blobs/{e49257c0fd32b195cccb16fbfda769c007be6b38f25aceefecd23cfff9366cec → 125bc7030d7f2ba789d7b1d5f474af34f8902b764e7bc351b98f1f6f55779929} +6 -3
  201. package/dist/phoenix-ui/bundle/blobs/{74dbcbbad6c3831e95abb38775dd488c59ae9f1d44a95f5fd4bc0051577488fa → 13cf6c054ed424e2eb639ea12d20a4aa2b1c85eeb00afa8cbd8a30c6c22aadd8} +1 -1
  202. package/dist/phoenix-ui/bundle/blobs/1832ff9624cebd30370eb0e806665c656ac879215f93d33bcc0750baa47459dc +46 -0
  203. package/dist/phoenix-ui/bundle/blobs/{8e7de5ca347036a07f5f1e9cab942d8ff378d029bc101fa6d126406f3298c9db → 1864a10c29e7062cca5e49d1790dc7d9d8ea777bfa2ab6fd941635965cd0084d} +1 -1
  204. package/dist/phoenix-ui/bundle/blobs/{784722b72224a7005a80cdcd6408dd2b25b23fd9619d0f6c8788f7ac681fad4c → 1ecc81de39d28b85b95e797bcc338d4213a50231c3315a741d14571fd22c844f} +6 -7
  205. package/dist/phoenix-ui/bundle/blobs/{b8c614dc7c2eb30ee0f864fec116dbcafb39e5a199dce66d0c1a88b13f76265a → 2079e4146039a8dadf19a39237cbdc0b8b54ea1fa16d320716c2cbf58161c835} +1 -1
  206. package/dist/phoenix-ui/bundle/blobs/{dba6e4a09c5d752e5ddebe7c2c1aefc9c4b2a84e01a3178599579778ed2d09e9 → 2813aa68c0804a7fe061d88201d8a684cac9987b48511e1e2cbfe0a869a67a82} +6 -7
  207. package/dist/phoenix-ui/bundle/blobs/{2889c2817b5079abff254bb6d13f92dbde0fabc38be4acc7d20e613eef5e5829 → 2873e340be947c83c3d03520139b73524fd166a34063d2693d3b711021ea5b87} +6 -7
  208. package/dist/phoenix-ui/bundle/blobs/{64c4aa2d1c24ae5028e987498ac544020d48600a51d9654b2df562681ba480f2 → 298ef41899acefa056eccf2345378078832db6d868d2377f471f896d5c1599f9} +6 -14
  209. package/dist/phoenix-ui/bundle/blobs/{1b7174a6f3f49a8efc8f7fa74ff84cf8960e2646b9bc976e4129a7c8ad608faa → 2b5cef2a14a5b1256ec6de9172a4f57f227948ced1921ef86e899f48524d7fb8} +1 -1
  210. package/dist/phoenix-ui/bundle/blobs/{f148f630f43f3c91cf10feeda5a3c21448ca0683ce82d0fe763c1b43dee584d6 → 2d376cbbf7ec1e262614aac4f1b200e8f60e86e940c7137a2a26788bc857e509} +6 -7
  211. package/dist/phoenix-ui/bundle/blobs/2e5985a6eb339d70cfa25f6d2b420a0ef286caa8467f0226eb841702ec438d0b +46 -0
  212. package/dist/phoenix-ui/bundle/blobs/{7e199833376de5d2b6e088ee2965b448f94da842f28ccbd707e1cc3a295147c8 → 3322d691bf7b578b38723576df6b266993b2afb9e567b0cd1ded898ffe1dc17e} +1 -1
  213. package/dist/phoenix-ui/bundle/blobs/{f82bfc4c6bc9169d4978d5e16fb925f6e152fdd21dc6a2fae719dfdc1645581f → 3625c5c2750f117021232ce81c1e39ac5ef7c21445729327b88cf54dfc937df0} +6 -3
  214. package/dist/phoenix-ui/bundle/blobs/{2ceacad745665f79fd7ad5565646426a36a1b508c0469b931d0f202fad45a80b → 36310febe3e7bd4c9b21407603f2a04afefdc87b7821758bb47098b1b2876765} +6 -3
  215. package/dist/phoenix-ui/bundle/blobs/{24d92a176573768bfffaf8f9c6483e58bceb5bf2a095d1cdf3d3a2c0bcda0707 → 3a9c2daf4ef284ca83b0e7f6fef3a5300e273c32b20769e090463cb8a8b0b06f} +1 -1
  216. package/dist/phoenix-ui/bundle/blobs/{153e377c44b162cf0074698a61716db7f664db78f5635efa926bed484de4f54c → 3ce1a44efe39b93e7a39307c6a5e5f514e938fbae818e358986b4db1b05883ca} +1 -1
  217. package/dist/phoenix-ui/bundle/blobs/{ad8ad0b7acf6c88ef9ce0ee1a640c2200da77821f0d97d605d4f1d4a10e5897a → 403fcde498d75abec7844ee31434201152ac229f7675772164d69563f0572da4} +1 -1
  218. package/dist/phoenix-ui/bundle/blobs/{e8ee6c08e94b80324173d89d6f4cdc5b4829ea6858b3a11fc186588a490cada4 → 45d0e7eff0923c40296e971318756617944c4f1c97f03126cd74c0f8c629f8a4} +3 -1
  219. package/dist/phoenix-ui/bundle/blobs/{e23dabf908842be08751fc4e7f3b586e8c6b1ca0fc30303ec5317c77f83dcf26 → 4c0f396bfa85171f61972d3f3765733318769bb53fe06d2cdcb5d7f64578b5b8} +1 -1
  220. package/dist/phoenix-ui/bundle/blobs/{a5517d32c1539c388c47c00879a0d807ed2989647bfa8c0844ef22328f75f5be → 4f6563876e0e0cc51c38a06767b8800eb3238611e9fdd11e5ff9dd487c742e74} +1 -1
  221. package/dist/phoenix-ui/bundle/blobs/{a9d2203acd45ca33a13d5c68b02b23ed512425ac15f0e8438318ed124b43729d → 4fcada229d0c689c1a493d13184145a81ff40c498e882142ae390bda8e5b2492} +15 -0
  222. package/dist/phoenix-ui/bundle/blobs/5293adc55cf66068b6df20468ad9e91433fd1c48e75d66c86f874aca951a8fb9 +46 -0
  223. package/dist/phoenix-ui/bundle/blobs/{96e2e6bd4fcf9a2c6da65fb029f96d9176308fae2efd9d8653d3b8d838960e07 → 5436f0301ec258f3badcc6842019ee29a9b870d2727dc425fbc9cc0f4f88a284} +3 -1
  224. package/dist/phoenix-ui/bundle/blobs/{d0f4939e86a62b0ca437d51a997ceba7e77d64566b7fa8ca2747487e31ca819d → 54a09a4afdffca3cc135e5007716ea684dc1ed7a78349de859225c55a2fed810} +6 -7
  225. package/dist/phoenix-ui/bundle/blobs/{d5102701d41f7c6195d410a873f742ac72c428b04196e47df5555c5ccaf80504 → 55277fa15eb4bd2f09bf7bb24c4e79df417b06654b1e10f502c7928b192fd7cc} +6 -3
  226. package/dist/phoenix-ui/bundle/blobs/{878064e46af4e4109bab405f965e4149bee40bbe8912ffede10b74cec6cff027 → 567c3f42394f9aee9b048a001016a7ba9d8773d78027f8c995c379886634e719} +6 -3
  227. package/dist/phoenix-ui/bundle/blobs/57c8f33a7401f918566b8a4883871a69ef2223438c51f158c67f69e3250be465 +46 -0
  228. package/dist/phoenix-ui/bundle/blobs/{bc29e115fd337dda2cc7fc70b868dc18e426b08ec186fd270fcfe96bb2efaa5d → 61450dbef64859e3136cd17ae3e997134d5df5721d96985c4e07367f38522129} +6 -3
  229. package/dist/phoenix-ui/bundle/blobs/{e3c1e925be0b2deb0e3765b83ab94b86560292364f275e98bb23a8bdf2c2e049 → 656bbfda3e72b40d53b5832293dc8700ad8a784e804a6246271bf0ea23527822} +1 -1
  230. package/dist/phoenix-ui/bundle/blobs/{ffcaa5c58e779ec74d18bfc3013ad8003f6e7a23f629c1a3b878618961a8b6a3 → 68b454a99ba72c3b9b93ed96c4267847297169f6a5bf321b20e60d637c271068} +6 -3
  231. package/dist/phoenix-ui/bundle/blobs/68e44832c82b873b0aeb2da56def7b1de5f612c019445e5e28238c690124cbbe +46 -0
  232. package/dist/phoenix-ui/bundle/blobs/{45bbd4a8e02ca0012216c5c68e1dcd655ae0046bd50ba4295ef1f58ec4a0957c → 6b8d4c71355429a0b16bf367163fea46103a0a99b4e34f87608a39d85b1b980a} +6 -3
  233. package/dist/phoenix-ui/bundle/blobs/{264815d0080e4862715a4f82542e66241c6563f07259d32aed4a17bbc329b9cc → 6cef874722442de7c60ea96f4221dc54cc4250a270cd05a1e818b58c5b43e232} +6 -7
  234. package/dist/phoenix-ui/bundle/blobs/{2028a857c0476324a4256faf66693e2a869275e53a88d2b182a28b62c2a17893 → 7181f1f4c452c4345695f9100f6deb610f54f4c55f126043433a65b8491fc680} +6 -7
  235. package/dist/phoenix-ui/bundle/blobs/{ccb76aabba47938d518a5d46a09d7e70c4a9222bc391e163763f2a7f12d30437 → 75850a8c9d2a8259f71ef1f86dd5d1325415227c1887e81a3467ae1ee400979f} +1 -1
  236. package/dist/phoenix-ui/bundle/blobs/{4b03cdb5b17d534b5c7e84b079c066f59e8b60b9e454671a453867c4aeb9920d → 77bcc6c2d6ac00a8bfead3b6c6b5fc69f4b60bf086ebbc89271e1b23003168c9} +1 -1
  237. package/dist/phoenix-ui/bundle/blobs/{9520e25a381c82af6f46e175b7c347d1dc513d933dd6cf8c52570c72abb4ca7f → 792552563745d208594cf4ade19110f2c811a0e1a2661ae1ef43a185ccff5a69} +1 -1
  238. package/dist/phoenix-ui/bundle/blobs/{f7c8af35acf71a96056afb6afcff6a3ea42f65561f02652d04e11ad9ece9b8e9 → 7acd9b6f2f61b509c6a518508b8b52c2f0de67cdea4fd3f3d383b3ce8b38cf5e} +6 -7
  239. package/dist/phoenix-ui/bundle/blobs/7bacc1e3da7e8b7127ca3f8f69a2422098b9b2d23fbedefc56dfe76117c1c0e3 +46 -0
  240. package/dist/phoenix-ui/bundle/blobs/{78662176c1d31cec2d640f70df203f93cc1aec604cfc31619f4d2c62ab78861b → 8078b804bea630ed9c4ea07ec2f8ac92aba4128725860a66599eda90390d98f6} +6 -3
  241. package/dist/phoenix-ui/bundle/blobs/{2291169748fe0c4c80634dff3083e7464f82d4358b9b2186759b316e612d466f → 88b150cb804bc141b80a5687a091f61b99627155c465a27adb88546ef615af92} +6 -3
  242. package/dist/phoenix-ui/bundle/blobs/{bde88bf5ac59d744440d9b65f95ceaae01c803b101d48e6afd644a06eeb5de63 → 90f8b07ec12b78e633e306322cda58415aea70d8e0f9ff85bd439361c01dabe1} +6 -3
  243. package/dist/phoenix-ui/bundle/blobs/{486145071d3445e82774f1b39b2bb15986ce52277e798a31ef7e9c27afb42af3 → 95b2944686e8258a655c3b5e6db68593e24e5199354e46aac553918ea2c0f55a} +1 -1
  244. package/dist/phoenix-ui/bundle/blobs/{a1998e37084c11f496d4970f86a85d5a6375bbeaa4797b9f42bbac2d44048d23 → 979639f0e8859d600a8db57e733566d9ad37ff8258c3e05a6f9c0f3008e92373} +1 -1
  245. package/dist/phoenix-ui/bundle/blobs/{3173293607055ea6e1a153ec6f51fb8154782157c8a61abf411da1f41be61728 → 9eaaa00049844060f842fe7fb73cc8edc4be5225cf38a96f33bda3ffc381456c} +6 -7
  246. package/dist/phoenix-ui/bundle/blobs/{69086f7cb235b35ccc230e1f2da41cbb10cea8f0636b6d4514672113a3adc2cb → a420bbda622399399a6b5c7c3614dcaebc6c62faceaf7b3c83c97db53d26b165} +1 -1
  247. package/dist/phoenix-ui/bundle/blobs/a63054b8920905045753facece83f154bf806158c6f46ef380036e7a82d4fde5 +46 -0
  248. package/dist/phoenix-ui/bundle/blobs/{e802e4f7bdc89050a9c0f2ca506e1d493a2316e6e810c0336c57aa073717ef3e → a63788c764b0e4fdcbc029d46093016310edcbcf702d62688e5aaac7ddeee6fd} +3 -1
  249. package/dist/phoenix-ui/bundle/blobs/{827a211ea03d2cb44b4ea1bc81ba1a6dc51a87fa16d6692997c4e4751241c815 → acfc4c26b135d5b27fc0930738486c9d43d379704102fab45564320180942e4b} +4 -2
  250. package/dist/phoenix-ui/bundle/blobs/{8da14f3eabac53c990a66e721387367b46cb676cc4204e8c67d6f88c95a6217f → ad243ca615349127aa422bccc1a6604ad17149735659087ca5bab3c5fae97f4e} +6 -7
  251. package/dist/phoenix-ui/bundle/blobs/b63931066e2b2623d012e1a3c1a0769cc43ed6640460c3899669b45539d6a20d +46 -0
  252. package/dist/phoenix-ui/bundle/blobs/{bb65af58ecc3e0c0093dc9a705a7ab643035e4e592c3adb93583c82d1aef1f51 → bde793ab5ad776f7e6f6d25ce2b838c1b5022054a1dad5502a873423eb0ad917} +6 -7
  253. package/dist/phoenix-ui/bundle/blobs/{8de7c97949b0bc4194b3be7645e4b13e9419767927482d01cf19476f6cbeda14 → c0a70ab2889e5c16e1f09249aefad948ce352c42cfe2b5afb758a4524e1b21b6} +6 -3
  254. package/dist/phoenix-ui/bundle/blobs/{60b2914df394800688c4e20f4eb34e117cd430df9954cf4d48574734507723f4 → c9ee9006ae6c0194a5d39a9f0cb275c52d74a71ea3f6dc2b4c1c7bd89f48a2c0} +1 -1
  255. package/dist/phoenix-ui/bundle/blobs/{6d8315e307eab11d3236935daf7267746cce6da3b51296e6999651ac97bda3a3 → cadc2daefcf238aab981fa56388381d3d5ab9c0686bb9dd8187035c9933dfcee} +6 -3
  256. package/dist/phoenix-ui/bundle/blobs/{d7b744fcc95164d96d9f811a93e2e8a374887146eb762ef775f3d3c7f27abc8d → cbea5728b90f58ff047be6ec4f14eed9d63c7148f5db99b5f147d2f17b472317} +1 -1
  257. package/dist/phoenix-ui/bundle/blobs/d408a4fea71b656aa8a5f6b5c037815a6e4229df336629ebddf4b5c85ed82fac +46 -0
  258. package/dist/phoenix-ui/bundle/blobs/{6ff950a5729ad9ea480ddf8c1b489b1c84189bbf7d6034b3b5a98e7c11a28cec → d9ae0c782d8a77787561536c0d7bc3b61175d59303f3cb8c20796f85140c6984} +1 -1
  259. package/dist/phoenix-ui/bundle/blobs/{1d53e2226465b1047faec7cda2e743e61540ea69e073a3a4057e8d86b277405f → e2932d63eb7f52a82960a19ba79bc800ef4f212164e098f96dee7a4326302f38} +1 -1
  260. package/dist/phoenix-ui/bundle/blobs/{fa576f6655b235bdea535198647305b7a3855e810180cbdf5d4c246c03c7d190 → e381bcfec42ac541d574011460600cf0818aa0e3362e8c6d205b4157890bf821} +6 -7
  261. package/dist/phoenix-ui/bundle/blobs/{8fbce5b4859e6011afa83b1c07c4436589cd7181f9cb997538f4c27f196d0d34 → e415657d8725d9b60ece42cc18581da177c42fc47cb11e501db722a5f524ecf7} +6 -7
  262. package/dist/phoenix-ui/bundle/blobs/{546a8428a2d8628bb3496fadb8c36a6dd65a33464291f214ceb581828f37081b → e46d63e5f8a6ead1d44c8b6302a0c7247af8585b975ab5715518381777622ede} +6 -3
  263. package/dist/phoenix-ui/bundle/blobs/ee63b3f9b354d69443d05ea4a338af56546897335ace7533546e10be56ea2207 +46 -0
  264. package/dist/phoenix-ui/bundle/blobs/{c23617601e9c4d97b775c175a5ce1642c40459b157d0821609fe1d253b83ced8 → ef7d57633252f4604749447608850e299c277f7dd1a32776685df0724b1051c8} +6 -7
  265. package/dist/phoenix-ui/bundle/blobs/{0581c8428246f43c5374393878a29e38f2b1865df87e6f13f2309b8eae54e76f → f0652c6ce41e6949133360178f192ea4ee9f6129a018c7a8b6652870c2330392} +1 -1
  266. package/dist/phoenix-ui/bundle/blobs/{cfac9eaf96481a8874391e5cecc6149abea1f1f19622f77f1ebb9e1876720e91 → f06c9d797ca2ac8c6a49d3dcd2e99d1b4df8bc9637a49c7e80f3161f49d06b1b} +4 -2
  267. package/dist/phoenix-ui/bundle/blobs/{d50780cb0a345051ae3fb12c5f8249a5dac9324d6a1963f04d03aaf769ffc27c → f077545caeb3ecb9f51a3f703a09736ca924869f4b4345c1b1ffbd9bf927a287} +6 -3
  268. package/dist/phoenix-ui/bundle/blobs/f781c5874bcd79ebe1b3b012275b9af7eae6c4867e9a16e29bb3d3ed3dc1940b +46 -0
  269. package/dist/phoenix-ui/bundle/blobs/fa10c0c926997387c89b7c1070e25b1b2b53ee891741e3c450a89ec6c6dcaf7d +46 -0
  270. package/dist/phoenix-ui/bundle/blobs/fb1a36ab7116b0c6709b89720cdded29d80982114c2f87cad614e01e126270dd +46 -0
  271. package/dist/phoenix-ui/bundle/blobs/fbd3214fc12ba70d9c69a995742ba73dc5365823af63afdc93c0c8a8f0c484af +46 -0
  272. package/dist/phoenix-ui/bundle/blobs/{77682e9d63b484f94a699f2c0b393e4540797d311362c384a3d643aec11d6985 → fea19b8381ec10ff8ed1923a336332974bbb552227ed215e7ddaaf0ec0112c1d} +1 -1
  273. package/dist/phoenix-ui/bundle/manifest.json +126 -126
  274. package/docs/phoenix-diagram.md +173 -0
  275. package/docs/phoenix-ui.md +40 -12
  276. package/package.json +14 -10
  277. package/skills/agi-mode/SKILL.md +3 -1
  278. package/skills/agi-mode/assets/sdlc/event.md +4 -5
  279. package/skills/agi-mode/assets/sdlc/object-status.md +1 -1
  280. package/skills/agi-mode/assets/sdlc/protocol.md +4 -2
  281. package/skills/agi-mode/evals/scenarios.md +108 -3
  282. package/skills/agi-mode/playbooks/authoring-a-skill.md +13 -2
  283. package/skills/agi-mode/playbooks/eval.md +19 -3
  284. package/skills/agi-mode/playbooks/hillclimb.md +4 -2
  285. package/skills/agi-mode/playbooks/reflection.md +1 -1
  286. package/skills/agi-mode/playbooks/sdlc.md +10 -6
  287. package/skills/agi-mode/playbooks/what-next.md +6 -2
  288. package/skills/agi-mode/references/eval-protocol.md +13 -4
  289. package/skills/agi-mode/references/interface-design.md +1 -0
  290. package/skills/agi-mode/references/remote-evolution.md +178 -0
  291. package/skills/agi-mode/references/skill-evolution.md +2 -0
  292. package/skills/agi-mode/scripts/evolution/compare.py +569 -0
  293. package/skills/agi-mode/scripts/evolution/evolution.py +2886 -0
  294. package/skills/agi-mode/scripts/evolution/examples/public-smoke.json +128 -0
  295. package/skills/agi-mode/scripts/evolution/examples/quality-calibration.json +128 -0
  296. package/skills/agi-mode/scripts/evolution/examples/quality-rubric.json +133 -0
  297. package/skills/agi-mode/scripts/evolution/protocol.py +1586 -0
  298. package/skills/agi-mode/scripts/evolution/pyproject.toml +16 -0
  299. package/skills/agi-mode/scripts/evolution/quality.py +689 -0
  300. package/skills/agi-mode/scripts/evolution/remote.py +2303 -0
  301. package/skills/agi-mode/scripts/evolution/tests/support.py +201 -0
  302. package/skills/agi-mode/scripts/evolution/tests/test_apply.py +643 -0
  303. package/skills/agi-mode/scripts/evolution/tests/test_bounded_exploration.py +236 -0
  304. package/skills/agi-mode/scripts/evolution/tests/test_bundles.py +414 -0
  305. package/skills/agi-mode/scripts/evolution/tests/test_calibration.py +460 -0
  306. package/skills/agi-mode/scripts/evolution/tests/test_compare.py +377 -0
  307. package/skills/agi-mode/scripts/evolution/tests/test_protocol.py +357 -0
  308. package/skills/agi-mode/scripts/evolution/tests/test_quality.py +647 -0
  309. package/skills/agi-mode/scripts/evolution/tests/test_remote.py +857 -0
  310. package/skills/agi-mode/scripts/evolution/tests/test_search.py +1109 -0
  311. package/skills/agi-mode/scripts/evolution/tests/test_typesafe.py +624 -0
  312. package/skills/agi-mode/scripts/evolution/tests/test_verifier_context.py +132 -0
  313. package/skills/agi-mode/scripts/evolution/typesafe_worker.py +145 -0
  314. package/skills/agi-mode/scripts/evolution/uv.lock +2548 -0
  315. package/skills/apply-code-review/SKILL.md +1 -0
  316. package/skills/apply-code-review/agents/openai.yaml +2 -0
  317. package/skills/apply-doc-review/SKILL.md +1 -0
  318. package/skills/apply-doc-review/agents/openai.yaml +2 -0
  319. package/skills/apply-ui-review/SKILL.md +1 -0
  320. package/skills/apply-ui-review/agents/openai.yaml +2 -0
  321. package/skills/autoresearch/SKILL.md +1 -0
  322. package/skills/clean-artifacts/SKILL.md +52 -0
  323. package/skills/clean-artifacts/agents/openai.yaml +4 -0
  324. package/skills/clean-artifacts/evals/scenarios.md +13 -0
  325. package/skills/clean-artifacts/references/history-cleanup.md +41 -0
  326. package/skills/crd/SKILL.md +100 -65
  327. package/skills/crd/assets/cr-template.md +15 -0
  328. package/skills/crd-respond/SKILL.md +17 -5
  329. package/skills/crd-respond/agents/openai.yaml +2 -2
  330. package/skills/crd-respond/assets/response-template.md +7 -0
  331. package/skills/crd-respond/evals/scenarios.md +7 -0
  332. package/skills/create-verification-skill/SKILL.md +1 -0
  333. package/skills/debugging/SKILL.md +1 -0
  334. package/skills/design-md/SKILL.md +1 -0
  335. package/skills/design-reference/SKILL.md +6 -2
  336. package/skills/design-reference/evals/scenarios.md +4 -0
  337. package/skills/dev-plan/SKILL.md +11 -6
  338. package/skills/dev-plan/references/execution-workflow.md +1 -1
  339. package/skills/dev-plan/references/plan-skeleton.md +234 -69
  340. package/skills/dev-plan/scripts/check_plan.py +1 -1
  341. package/skills/documentation-writer/SKILL.md +19 -14
  342. package/skills/documentation-writer/references/architecture.md +6 -2
  343. package/skills/documentation-writer/references/user-manual.md +2 -2
  344. package/skills/elintp/SKILL.md +12 -6
  345. package/skills/experience-capture/SKILL.md +1 -0
  346. package/skills/gdpr-compliant/SKILL.md +1 -0
  347. package/skills/kpi-dashboard-design/SKILL.md +1 -0
  348. package/skills/landing-page-conversion-audit/SKILL.md +1 -0
  349. package/skills/mcp-release-qa/SKILL.md +2 -1
  350. package/skills/meeting-minutes/SKILL.md +1 -0
  351. package/skills/optimize-agents-md/SKILL.md +128 -0
  352. package/skills/optimize-agents-md/assets/coding-principles.md +118 -0
  353. package/skills/phoenix-diagram/ENGINE.json +39 -0
  354. package/skills/phoenix-diagram/SKILL.md +109 -0
  355. package/skills/phoenix-diagram/examples/legacy.agent-tool-call.workflow.json +94 -0
  356. package/skills/phoenix-diagram/examples/legacy.async-job-roundtrip.sequence.json +61 -0
  357. package/skills/phoenix-diagram/examples/legacy.deployment-release.lifecycle.json +49 -0
  358. package/skills/phoenix-diagram/examples/legacy.product-analytics.dataflow.json +76 -0
  359. package/skills/{archify/test/fixtures/v1-baseline/web-app.architecture.json → phoenix-diagram/examples/legacy.web-app.architecture.json} +16 -11
  360. package/skills/phoenix-diagram/examples/minimal.architecture.json +11 -0
  361. package/skills/phoenix-diagram/examples/minimal.class.json +23 -0
  362. package/skills/phoenix-diagram/examples/minimal.dataflow.json +11 -0
  363. package/skills/phoenix-diagram/examples/minimal.erd.json +25 -0
  364. package/skills/phoenix-diagram/examples/minimal.lifecycle.json +11 -0
  365. package/skills/phoenix-diagram/examples/minimal.sequence.json +13 -0
  366. package/skills/phoenix-diagram/examples/minimal.timeline.json +15 -0
  367. package/skills/phoenix-diagram/examples/minimal.tree.json +13 -0
  368. package/skills/phoenix-diagram/examples/minimal.waterfall.json +12 -0
  369. package/skills/phoenix-diagram/examples/minimal.workflow.json +12 -0
  370. package/skills/phoenix-diagram/references/architecture-compare.md +111 -0
  371. package/skills/phoenix-diagram/references/authoring-defaults.md +42 -0
  372. package/skills/phoenix-diagram/references/brand-marks.md +52 -0
  373. package/skills/phoenix-diagram/references/compatibility.md +22 -0
  374. package/skills/phoenix-diagram/references/delivery-contract.md +127 -0
  375. package/skills/phoenix-diagram/references/extending-types.md +14 -0
  376. package/skills/phoenix-diagram/references/migration.md +57 -0
  377. package/skills/phoenix-diagram/references/preview.md +45 -0
  378. package/skills/phoenix-diagram/references/repository-authoring.md +29 -0
  379. package/skills/phoenix-diagram/references/viewer-runtime.md +27 -0
  380. package/skills/phoenix-diagram/schemas/README.md +23 -0
  381. package/skills/phoenix-diagram/schemas/architecture.schema.json +329 -0
  382. package/skills/phoenix-diagram/schemas/class.schema.json +348 -0
  383. package/skills/phoenix-diagram/schemas/common.schema.json +358 -0
  384. package/skills/{archify/schemas/lifecycle.schema.json → phoenix-diagram/schemas/dataflow.schema.json} +63 -58
  385. package/skills/phoenix-diagram/schemas/erd.schema.json +384 -0
  386. package/skills/phoenix-diagram/schemas/lifecycle.schema.json +202 -0
  387. package/skills/phoenix-diagram/schemas/sequence.schema.json +254 -0
  388. package/skills/phoenix-diagram/schemas/timeline.schema.json +170 -0
  389. package/skills/phoenix-diagram/schemas/tree.schema.json +144 -0
  390. package/skills/phoenix-diagram/schemas/waterfall.schema.json +150 -0
  391. package/skills/phoenix-diagram/schemas/workflow.schema.json +460 -0
  392. package/skills/phoenix-diagram/scripts/phoenix-bootstrap.cjs +589 -0
  393. package/skills/phoenix-diagram/scripts/phoenix-diagram +6 -0
  394. package/skills/phoenix-diagram/scripts/phoenix-launcher.cjs +10 -0
  395. package/skills/phoenix-ui/GENERATED.json +255 -240
  396. package/skills/phoenix-ui/SKILL.md +7 -4
  397. package/skills/phoenix-ui/evals/scenarios.md +8 -1
  398. package/skills/phoenix-ui/reference/craft-floor.md +3 -1
  399. package/skills/phoenix-ui/reference/critique.md +6 -14
  400. package/skills/phoenix-ui/reference/init.md +1 -1
  401. package/skills/phoenix-ui/reference/live.md +1 -1
  402. package/skills/phoenix-ui/reference/operate.md +15 -0
  403. package/skills/phoenix-ui/scripts/ENGINE.json +17 -17
  404. package/skills/phoenix-ui/scripts/phoenix-bootstrap.cjs +0 -4
  405. package/skills/portal-app-exchange/SKILL.md +1 -0
  406. package/skills/portal-dev-setup/SKILL.md +71 -12
  407. package/skills/portal-dev-setup/scripts/onebox.sh +69 -6
  408. package/skills/portal-external-app/SKILL.md +55 -16
  409. package/skills/portal-external-app/references/config-placement.md +108 -2
  410. package/skills/portal-external-app/references/registration-and-onebox.md +56 -2
  411. package/skills/portal-logging/SKILL.md +1 -0
  412. package/skills/portal-micro-app/SKILL.md +2 -1
  413. package/skills/portal-micro-app/references/sdk-reference.md +3 -1
  414. package/skills/prd/SKILL.md +238 -159
  415. package/skills/prd/evals/scenarios.md +13 -0
  416. package/skills/prd/references/prd-skeleton.md +14 -4
  417. package/skills/react/SKILL.md +1 -0
  418. package/skills/resolve-blocked/SKILL.md +46 -19
  419. package/skills/resolve-blocked/agents/openai.yaml +2 -2
  420. package/skills/resolve-blocked/evals/scenarios.md +22 -0
  421. package/skills/resolve-blocked/references/decisions-contract.md +7 -4
  422. package/skills/review-code/SKILL.md +308 -46
  423. package/skills/review-code/agents/openai.yaml +2 -0
  424. package/skills/review-dev-plan/SKILL.md +88 -33
  425. package/skills/review-dev-plan/agents/openai.yaml +2 -0
  426. package/skills/review-dev-plan/references/report-contract.md +53 -19
  427. package/skills/review-dev-plan/references/review-lenses.md +2 -1
  428. package/skills/review-prd/SKILL.md +90 -34
  429. package/skills/review-prd/agents/openai.yaml +2 -0
  430. package/skills/review-prd/references/report-contract.md +54 -18
  431. package/skills/review-prd-dev-gaps/SKILL.md +1 -0
  432. package/skills/review-prd-dev-gaps/agents/openai.yaml +2 -0
  433. package/skills/review-ui/SKILL.md +369 -71
  434. package/skills/review-ui/agents/openai.yaml +2 -0
  435. package/skills/review-ui/evals/scenarios.md +2 -0
  436. package/skills/rust/SKILL.md +76 -84
  437. package/skills/rust/references/api-design.md +97 -0
  438. package/skills/rust/references/{chapter_10.md → async-tokio.md} +42 -18
  439. package/skills/rust/references/behavioral-patterns.md +49 -0
  440. package/skills/rust/references/bevy.md +95 -0
  441. package/skills/rust/references/{chapter_02.md → clippy-and-linting.md} +26 -15
  442. package/skills/rust/references/{chapter_01.md → coding-idioms.md} +58 -7
  443. package/skills/rust/references/crates-and-dependencies.md +66 -0
  444. package/skills/rust/references/{chapter_08.md → documentation.md} +30 -3
  445. package/skills/rust/references/{chapter_04.md → error-handling.md} +32 -6
  446. package/skills/rust/references/{chapter_06.md → generics-and-dispatch.md} +28 -11
  447. package/skills/rust/references/macros.md +45 -0
  448. package/skills/rust/references/{chapter_03.md → performance.md} +25 -2
  449. package/skills/rust/references/{chapter_09.md → pointers-and-ownership.md} +37 -17
  450. package/skills/rust/references/{chapter_05.md → testing.md} +18 -2
  451. package/skills/rust/references/{chapter_07.md → type-state.md} +5 -1
  452. package/skills/rust/references/unsafe-and-ffi.md +56 -0
  453. package/skills/rust-port/SKILL.md +144 -0
  454. package/skills/rust-review/SKILL.md +177 -0
  455. package/skills/security-audit/SKILL.md +1 -0
  456. package/skills/spec-human-decision/SKILL.md +1 -0
  457. package/skills/sql-optimization/SKILL.md +1 -0
  458. package/skills/story-points/SKILL.md +1 -0
  459. package/skills/swarm/SKILL.md +1 -0
  460. package/skills/test-plan/SKILL.md +1 -0
  461. package/skills/ui-loop/SKILL.md +39 -0
  462. package/skills/ui-loop/agents/openai.yaml +3 -0
  463. package/skills/ui-pattern-research/SKILL.md +1 -0
  464. package/skills/use-llm-gateway/SKILL.md +58 -0
  465. package/skills/use-llm-gateway/agents/openai.yaml +4 -0
  466. package/skills/use-llm-gateway/references/api.md +129 -0
  467. package/skills/use-llm-gateway/references/recovery.md +86 -0
  468. package/skills/use-prompt-dsl/SKILL.md +165 -0
  469. package/skills/use-prompt-dsl/references/examples.md +726 -0
  470. package/skills/use-prompt-dsl/references/language.md +938 -0
  471. package/skills/use-rustify-docs/SKILL.md +60 -0
  472. package/skills/use-rustify-docs/agents/openai.yaml +4 -0
  473. package/skills/use-rustify-docs/references/rustify-docs.md +138 -0
  474. package/skills/use-task-gateway/SKILL.md +60 -0
  475. package/skills/use-task-gateway/agents/openai.yaml +3 -0
  476. package/skills/use-task-gateway/references/authentication.md +75 -0
  477. package/skills/use-task-gateway/references/task-api.md +121 -0
  478. package/skills/use-task-gateway/references/workers.md +85 -0
  479. package/skills/use-task-gateway/references/workflow-actions.md +66 -0
  480. package/skills/use-workflow-service/SKILL.md +57 -0
  481. package/skills/use-workflow-service/agents/openai.yaml +3 -0
  482. package/skills/use-workflow-service/references/action-provider.md +84 -0
  483. package/skills/use-workflow-service/references/authentication.md +76 -0
  484. package/skills/use-workflow-service/references/authoring.md +62 -0
  485. package/skills/use-workflow-service/references/mcp.md +47 -0
  486. package/skills/use-workflow-service/references/open-api.md +88 -0
  487. package/skills/use-workflow-service/references/orchestration-choice.md +63 -0
  488. package/skills/working-with-mbx/SKILL.md +1 -0
  489. package/skills/working-with-mise/SKILL.md +1 -0
  490. package/skills/xgent-app-release/SKILL.md +114 -16
  491. package/skills/xgent-app-release/references/build-and-package.md +2 -1
  492. package/skills/xgent-app-release/references/publish-api.md +6 -1
  493. package/skills/xgent-app-release/references/troubleshooting.md +2 -1
  494. package/skills/xgent-app-release/references/verify-preflight.mjs +21 -1
  495. package/skills/xgent-app-release/scripts/preflight.mjs +42 -3
  496. package/skills/xgent-image-push/SKILL.md +1 -0
  497. package/skills/xgent-init/SKILL.md +1 -0
  498. package/docs/claude-context-goal-guard.md +0 -124
  499. package/docs/codex-context-goal-guard.md +0 -109
  500. package/hooks/claude/context-goal-guard.js +0 -139
  501. package/hooks/claude/settings.example.json +0 -26
  502. package/hooks/codex/context-goal-guard.py +0 -189
  503. package/hooks/codex/hooks.example.json +0 -26
  504. package/skills/archify/SKILL.md +0 -137
  505. package/skills/archify/assets/template.html +0 -14937
  506. package/skills/archify/bin/archify.mjs +0 -2139
  507. package/skills/archify/bin/open-artifact.mjs +0 -86
  508. package/skills/archify/bin/preview.mjs +0 -653
  509. package/skills/archify/bin/visual-check.mjs +0 -829
  510. package/skills/archify/brand-marks/README.md +0 -31
  511. package/skills/archify/brand-marks/catalog.json +0 -131
  512. package/skills/archify/delta/architecture-delta.mjs +0 -1232
  513. package/skills/archify/examples/agent-run.lifecycle.json +0 -60
  514. package/skills/archify/examples/brand-aware-delivery.architecture.json +0 -47
  515. package/skills/archify/examples/cache-miss-request.sequence.json +0 -82
  516. package/skills/archify/examples/checkout-platform.base.architecture.json +0 -31
  517. package/skills/archify/examples/checkout-platform.head.architecture.json +0 -31
  518. package/skills/archify/examples/dataflow-product-analytics.html +0 -15048
  519. package/skills/archify/examples/event-stream.dataflow.json +0 -57
  520. package/skills/archify/examples/incident-response.workflow.json +0 -64
  521. package/skills/archify/examples/lifecycle-agent-run.html +0 -14983
  522. package/skills/archify/examples/production-deployment.architecture.json +0 -71
  523. package/skills/archify/examples/release-delivery.workflow.json +0 -62
  524. package/skills/archify/examples/sequence-cache-miss-request.html +0 -15063
  525. package/skills/archify/examples/web-app-rendered.html +0 -15012
  526. package/skills/archify/examples/workflow-agent-tool-call-rendered.html +0 -15054
  527. package/skills/archify/migrations/workflow-v2.mjs +0 -279
  528. package/skills/archify/package-lock.json +0 -149
  529. package/skills/archify/package.json +0 -39
  530. package/skills/archify/recipes/scenarios.mjs +0 -391
  531. package/skills/archify/references/authoring-contract.md +0 -247
  532. package/skills/archify/references/brand-marks.md +0 -65
  533. package/skills/archify/references/delivery-contract.md +0 -138
  534. package/skills/archify/references/viewer-runtime.md +0 -45
  535. package/skills/archify/renderers/architecture/grid.mjs +0 -62
  536. package/skills/archify/renderers/architecture/render-architecture.mjs +0 -1078
  537. package/skills/archify/renderers/dataflow/README.md +0 -104
  538. package/skills/archify/renderers/dataflow/render-dataflow.mjs +0 -483
  539. package/skills/archify/renderers/lifecycle/README.md +0 -115
  540. package/skills/archify/renderers/lifecycle/render-lifecycle.mjs +0 -561
  541. package/skills/archify/renderers/sequence/README.md +0 -114
  542. package/skills/archify/renderers/sequence/render-sequence.mjs +0 -464
  543. package/skills/archify/renderers/shared/brand-marks.mjs +0 -563
  544. package/skills/archify/renderers/shared/cli.mjs +0 -218
  545. package/skills/archify/renderers/shared/desktop-readability.mjs +0 -26
  546. package/skills/archify/renderers/shared/diagnostics.mjs +0 -160
  547. package/skills/archify/renderers/shared/engineering-profiles.mjs +0 -157
  548. package/skills/archify/renderers/shared/generated-brand-marks.mjs +0 -2003
  549. package/skills/archify/renderers/shared/generated-validators.mjs +0 -13
  550. package/skills/archify/renderers/shared/geometry.mjs +0 -1423
  551. package/skills/archify/renderers/shared/i18n.mjs +0 -595
  552. package/skills/archify/renderers/shared/layout-report.mjs +0 -40
  553. package/skills/archify/renderers/shared/legend.mjs +0 -217
  554. package/skills/archify/renderers/shared/output-path.mjs +0 -340
  555. package/skills/archify/renderers/shared/repository-evidence.mjs +0 -239
  556. package/skills/archify/renderers/shared/repository-location.mjs +0 -58
  557. package/skills/archify/renderers/shared/text-fit.mjs +0 -49
  558. package/skills/archify/renderers/shared/utils.mjs +0 -232
  559. package/skills/archify/renderers/shared/validator.mjs +0 -86
  560. package/skills/archify/renderers/workflow/README.md +0 -223
  561. package/skills/archify/renderers/workflow/render-workflow.mjs +0 -35
  562. package/skills/archify/renderers/workflow/workflow-compiler.mjs +0 -4400
  563. package/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +0 -144
  564. package/skills/archify/schemas/README.md +0 -211
  565. package/skills/archify/schemas/architecture.schema.json +0 -178
  566. package/skills/archify/schemas/common.schema.json +0 -115
  567. package/skills/archify/scripts/check-render-output.mjs +0 -916
  568. package/skills/archify/scripts/check-update.mjs +0 -1667
  569. package/skills/archify/scripts/generate-brand-marks.mjs +0 -141
  570. package/skills/archify/scripts/generate-validators.mjs +0 -66
  571. package/skills/archify/scripts/render-examples.mjs +0 -26
  572. package/skills/archify/scripts/update-contract.mjs +0 -182
  573. package/skills/archify/skill-release.json +0 -10
  574. package/skills/archify/test/adaptive-reader-layout.test.mjs +0 -86
  575. package/skills/archify/test/animation.test.mjs +0 -179
  576. package/skills/archify/test/architecture-compare-recovery.test.mjs +0 -157
  577. package/skills/archify/test/architecture-delta-markers.test.mjs +0 -137
  578. package/skills/archify/test/architecture-delta.test.mjs +0 -705
  579. package/skills/archify/test/artifact-receipt-flush.test.mjs +0 -126
  580. package/skills/archify/test/authored-reachability.test.mjs +0 -95
  581. package/skills/archify/test/authoring-safety-contract.test.mjs +0 -54
  582. package/skills/archify/test/automatic-port-spread.test.mjs +0 -376
  583. package/skills/archify/test/base-input-compatibility.test.mjs +0 -42
  584. package/skills/archify/test/brand-marks.test.mjs +0 -678
  585. package/skills/archify/test/chapter-delta-preview.test.mjs +0 -157
  586. package/skills/archify/test/chapter-handoff.test.mjs +0 -97
  587. package/skills/archify/test/chapter-rail.test.mjs +0 -86
  588. package/skills/archify/test/checkout-line-endings.test.mjs +0 -72
  589. package/skills/archify/test/ci-scope.test.mjs +0 -59
  590. package/skills/archify/test/clean-skill-staging.test.mjs +0 -440
  591. package/skills/archify/test/cli-output-types.test.mjs +0 -201
  592. package/skills/archify/test/cli.test.mjs +0 -986
  593. package/skills/archify/test/community-proof-intake.test.mjs +0 -125
  594. package/skills/archify/test/cursor-onboarding.test.mjs +0 -74
  595. package/skills/archify/test/degraded.test.mjs +0 -161
  596. package/skills/archify/test/delivery-contract.test.mjs +0 -52
  597. package/skills/archify/test/desktop-reader-browser.test.mjs +0 -80
  598. package/skills/archify/test/diagram-guide.test.mjs +0 -92
  599. package/skills/archify/test/engineering-profile.test.mjs +0 -209
  600. package/skills/archify/test/export-browser.test.mjs +0 -305
  601. package/skills/archify/test/export-cleanup-browser.test.mjs +0 -294
  602. package/skills/archify/test/finder-browser.test.mjs +0 -274
  603. package/skills/archify/test/finder.test.mjs +0 -104
  604. package/skills/archify/test/fixtures/automatic-routing-node-border-clearance.workflow.json +0 -40
  605. package/skills/archify/test/fixtures/fail-migration-cleanup.mjs +0 -17
  606. package/skills/archify/test/fixtures/issue-126/custom-widths.workflow.json +0 -18
  607. package/skills/archify/test/fixtures/issue-126/explicit-route.workflow.json +0 -28
  608. package/skills/archify/test/fixtures/issue-126/explicit-viewbox.workflow.json +0 -19
  609. package/skills/archify/test/fixtures/issue-126/labels.workflow.json +0 -18
  610. package/skills/archify/test/fixtures/v1-baseline/agent-run.lifecycle.json +0 -64
  611. package/skills/archify/test/fixtures/v1-baseline/agent-tool-call.workflow.json +0 -88
  612. package/skills/archify/test/fixtures/v1-baseline/cache-miss-request.sequence.json +0 -75
  613. package/skills/archify/test/fixtures/v1-baseline/event-stream.dataflow.json +0 -57
  614. package/skills/archify/test/fixtures/v1-baseline/product-analytics.dataflow.json +0 -70
  615. package/skills/archify/test/fixtures/v1-baseline/production-deployment.architecture.json +0 -71
  616. package/skills/archify/test/fixtures/v1-workflow-700x400.workflow.json +0 -22
  617. package/skills/archify/test/fixtures/v1-workflow-explicit-coordinates.workflow.json +0 -47
  618. package/skills/archify/test/focus-browser.test.mjs +0 -226
  619. package/skills/archify/test/gallery.test.mjs +0 -130
  620. package/skills/archify/test/generate-validators.test.mjs +0 -59
  621. package/skills/archify/test/generate-viewer.test.mjs +0 -165
  622. package/skills/archify/test/generated-artifact-xml.test.mjs +0 -88
  623. package/skills/archify/test/geometry.test.mjs +0 -739
  624. package/skills/archify/test/golden.mjs +0 -207
  625. package/skills/archify/test/grid.test.mjs +0 -47
  626. package/skills/archify/test/guide-page.test.mjs +0 -85
  627. package/skills/archify/test/guide.test.mjs +0 -81
  628. package/skills/archify/test/guided-views-browser.test.mjs +0 -460
  629. package/skills/archify/test/guided-views.test.mjs +0 -144
  630. package/skills/archify/test/helpers/desktop-browser.mjs +0 -48
  631. package/skills/archify/test/helpers/offline-fonts.mjs +0 -76
  632. package/skills/archify/test/helpers/viewer-click.mjs +0 -72
  633. package/skills/archify/test/helpers/xml.mjs +0 -37
  634. package/skills/archify/test/i18n.test.mjs +0 -422
  635. package/skills/archify/test/intent-trace-browser.test.mjs +0 -284
  636. package/skills/archify/test/intent-trace.test.mjs +0 -111
  637. package/skills/archify/test/landing.test.mjs +0 -97
  638. package/skills/archify/test/layout-rules.test.mjs +0 -1498
  639. package/skills/archify/test/legend-contract.test.mjs +0 -404
  640. package/skills/archify/test/motion-governor-browser.test.mjs +0 -342
  641. package/skills/archify/test/motion-governor.test.mjs +0 -111
  642. package/skills/archify/test/offline-font-browser.test.mjs +0 -210
  643. package/skills/archify/test/offline-self-containment.test.mjs +0 -80
  644. package/skills/archify/test/open-artifact.test.mjs +0 -118
  645. package/skills/archify/test/ordinary-model-floor.test.mjs +0 -1052
  646. package/skills/archify/test/output-path.test.mjs +0 -587
  647. package/skills/archify/test/presentation.test.mjs +0 -71
  648. package/skills/archify/test/preset-tryon.test.mjs +0 -113
  649. package/skills/archify/test/preview-contract.test.mjs +0 -40
  650. package/skills/archify/test/preview.test.mjs +0 -530
  651. package/skills/archify/test/proof-aperture.test.mjs +0 -78
  652. package/skills/archify/test/reach-share-card.test.mjs +0 -149
  653. package/skills/archify/test/reader-layout-browser.test.mjs +0 -320
  654. package/skills/archify/test/readme-showcase.test.mjs +0 -319
  655. package/skills/archify/test/real-repository-proof.test.mjs +0 -209
  656. package/skills/archify/test/relationship-direct-explorer.test.mjs +0 -115
  657. package/skills/archify/test/relationship-lens.test.mjs +0 -128
  658. package/skills/archify/test/relationship-permalink.test.mjs +0 -130
  659. package/skills/archify/test/relationship-pulse.test.mjs +0 -122
  660. package/skills/archify/test/release-identity.test.mjs +0 -476
  661. package/skills/archify/test/release-package-gates.test.mjs +0 -750
  662. package/skills/archify/test/render-output-checks.test.mjs +0 -588
  663. package/skills/archify/test/renderer-diagnostic-boundary.test.mjs +0 -107
  664. package/skills/archify/test/repair-receipt.test.mjs +0 -181
  665. package/skills/archify/test/repository-evidence-replacement.test.mjs +0 -136
  666. package/skills/archify/test/repository-evidence.test.mjs +0 -605
  667. package/skills/archify/test/repository-language-metadata.test.mjs +0 -67
  668. package/skills/archify/test/route-journey.test.mjs +0 -125
  669. package/skills/archify/test/route-probe-browser.test.mjs +0 -363
  670. package/skills/archify/test/route-probe.test.mjs +0 -114
  671. package/skills/archify/test/route-share-card.test.mjs +0 -163
  672. package/skills/archify/test/semantic-camera.test.mjs +0 -88
  673. package/skills/archify/test/semantic-flow.test.mjs +0 -90
  674. package/skills/archify/test/semantic-legend-gateway.test.mjs +0 -156
  675. package/skills/archify/test/semantic-lens-browser.test.mjs +0 -372
  676. package/skills/archify/test/semantic-lens.test.mjs +0 -103
  677. package/skills/archify/test/semantic-passport.test.mjs +0 -99
  678. package/skills/archify/test/semantic-radar.test.mjs +0 -735
  679. package/skills/archify/test/semantic-zoom.test.mjs +0 -86
  680. package/skills/archify/test/sequence-column-fit.test.mjs +0 -137
  681. package/skills/archify/test/settled-flow.test.mjs +0 -97
  682. package/skills/archify/test/share-card-export.test.mjs +0 -132
  683. package/skills/archify/test/site-language-continuity.test.mjs +0 -569
  684. package/skills/archify/test/site-language-integration.mjs +0 -9
  685. package/skills/archify/test/skill-metadata.test.mjs +0 -84
  686. package/skills/archify/test/stable-update-manifest.test.mjs +0 -167
  687. package/skills/archify/test/start-page.test.mjs +0 -312
  688. package/skills/archify/test/story-beat-navigator.test.mjs +0 -103
  689. package/skills/archify/test/story-carrier.test.mjs +0 -90
  690. package/skills/archify/test/story-director-strip.test.mjs +0 -91
  691. package/skills/archify/test/story-follow-camera.test.mjs +0 -103
  692. package/skills/archify/test/story-horizon.test.mjs +0 -91
  693. package/skills/archify/test/story-moment-link.test.mjs +0 -93
  694. package/skills/archify/test/story-shelf.test.mjs +0 -84
  695. package/skills/archify/test/story-trail.test.mjs +0 -81
  696. package/skills/archify/test/toolbar-polish.test.mjs +0 -57
  697. package/skills/archify/test/update-contract.test.mjs +0 -133
  698. package/skills/archify/test/update-notifier.test.mjs +0 -3317
  699. package/skills/archify/test/v1-compatibility.test.mjs +0 -329
  700. package/skills/archify/test/vertical-edge.test.mjs +0 -68
  701. package/skills/archify/test/viewer-camera-browser.test.mjs +0 -395
  702. package/skills/archify/test/viewer-chrome-layout.test.mjs +0 -1104
  703. package/skills/archify/test/viewer-identifiers-browser.test.mjs +0 -135
  704. package/skills/archify/test/visual-check.test.mjs +0 -400
  705. package/skills/archify/test/webm-artifact.smoke.mjs +0 -1855
  706. package/skills/archify/test/workflow-compiler-hard-contract.test.mjs +0 -2136
  707. package/skills/archify/test/workflow-compiler.test.mjs +0 -1163
  708. package/skills/archify/test/workflow-migration.test.mjs +0 -620
  709. package/skills/archify/test/workflow-semantic-contract.test.mjs +0 -131
  710. /package/{skills/archify/THIRD_PARTY_NOTICES.md → dist/phoenix-diagram/THIRD-PARTY-LICENSES/0b7fb59365dc21c93b0f62526d74ee913aeec9ae532c112bc76afa7edcd56e14.txt} +0 -0
  711. /package/{skills/archify/LICENSE → dist/phoenix-diagram/THIRD-PARTY-LICENSES/b799ab081703e7821ae5096d2c1abdf14bbdc75e8ea1c4045998c36ed6db9706.txt} +0 -0
  712. /package/{skills/archify/assets/JetBrainsMono-OFL.txt → dist/phoenix-diagram/THIRD-PARTY-LICENSES/c1ab7c666206842a02b35b30770dac0d7a10156ed401c9defc3f02a754d89e90.txt} +0 -0
  713. /package/{skills/archify/examples/agent-tool-call.workflow.json → dist/phoenix-diagram/bundle/examples/legacy.agent-tool-call.workflow.json} +0 -0
  714. /package/{skills/archify/examples/async-job-roundtrip.sequence.json → dist/phoenix-diagram/bundle/examples/legacy.async-job-roundtrip.sequence.json} +0 -0
  715. /package/{skills/archify/examples/deployment-release.lifecycle.json → dist/phoenix-diagram/bundle/examples/legacy.deployment-release.lifecycle.json} +0 -0
  716. /package/{skills/archify/examples/product-analytics.dataflow.json → dist/phoenix-diagram/bundle/examples/legacy.product-analytics.dataflow.json} +0 -0
  717. /package/{skills/archify/examples/web-app.architecture.json → dist/phoenix-diagram/bundle/examples/legacy.web-app.architecture.json} +0 -0
@@ -0,0 +1,13 @@
1
+ {
2
+ "schema_version": 1,
3
+ "diagram_type": "tree",
4
+ "meta": { "title": "Service ownership", "output": "minimal.tree.html", "input_contract": "phoenix-v1", "quality_profile": "showcase", "locale": "en" },
5
+ "nodes": [
6
+ { "id": "platform", "label": "Platform", "sublabel": "Owned capabilities" },
7
+ { "id": "payments", "label": "Payments", "parent": "platform" },
8
+ { "id": "card", "label": "Card payments", "parent": "payments" },
9
+ { "id": "wallet", "label": "Wallet payments", "parent": "payments" },
10
+ { "id": "operations", "label": "Operations", "parent": "platform", "collapsed": true },
11
+ { "id": "refunds", "label": "Refunds", "parent": "operations" }
12
+ ]
13
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "schema_version": 1,
3
+ "diagram_type": "waterfall",
4
+ "meta": { "title": "Checkout request", "output": "minimal.waterfall.html", "input_contract": "phoenix-v1", "quality_profile": "showcase", "locale": "en", "evidence": "illustrative", "unit": "ms" },
5
+ "spans": [
6
+ { "id": "request", "name": "POST /checkout", "service": "checkout", "start": 0, "end": 420 },
7
+ { "id": "auth", "name": "Authenticate", "service": "identity", "parent": "request", "start": 0, "duration": 60 },
8
+ { "id": "stock", "name": "Reserve stock", "service": "inventory", "parent": "request", "start": 60, "duration": 180 },
9
+ { "id": "charge", "name": "Charge card", "service": "payments", "parent": "request", "start": 240, "duration": 150, "status": "error" },
10
+ { "id": "receipt", "name": "Send receipt", "parent": "request", "start": 390, "status": "incomplete" }
11
+ ]
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "schema_version": 2,
3
+ "diagram_type": "workflow",
4
+ "meta": { "title": "Request workflow", "output": "minimal.workflow.html", "input_contract": "phoenix-v1", "quality_profile": "showcase", "locale": "en" },
5
+ "lanes": [{ "id": "work", "label": "Work" }],
6
+ "nodes": [
7
+ { "id": "prepare", "lane": "work", "col": 0, "type": "backend", "label": "Prepare" },
8
+ { "id": "complete", "lane": "work", "col": 1, "type": "backend", "label": "Complete" }
9
+ ],
10
+ "edges": [{ "id": "continue", "from": "prepare", "to": "complete", "label": "Continue", "role": "main" }],
11
+ "mainPath": ["prepare", "complete"]
12
+ }
@@ -0,0 +1,111 @@
1
+ # 架构比较
2
+
3
+ 仅在用户明确要求比较两份架构时使用。两份输入都必须是 `architecture`;其他图型继续使用各自的单图流程。比较只陈述输入中可追溯的变化,不推断运行影响、因果、风险或可合并性。
4
+
5
+ ## 输入与生成
6
+
7
+ 保留原 JSON。组件通过 `components[].id` 对应,连接通过作者明确写入的 `connections[].id` 对应,边界通过 `kind + label` 对应。边界键须唯一,两份输入至少共享一个组件 ID;两侧都写仓库时必须属于同一仓库。连接缺稳定 ID 时,普通单图仍可使用,比较会拒绝;由作者确认对应关系后再补 ID,不能按数组位置、标签相似度或端点猜同一关系。
8
+
9
+ ```sh
10
+ "$PD" compare architecture base.json head.json comparison.html --json
11
+ "$PD" compare architecture base.json head.json comparison.html \
12
+ --base-contract legacy-2.17 --head-contract phoenix-v1 \
13
+ --quality showcase --repo-root "<仓库根>" --brand-cache "<本地品牌缓存>" --json
14
+ ```
15
+
16
+ 合同选择按每侧明确标记处理,不重写源文件。`--quality` 与输入已有质量标记冲突时会失败;不要为换取比较通过而降低质量。仓库来源和品牌继续使用已固定的本地身份,普通比较不联网采集资源。
17
+
18
+ 默认比较回执为 `comparison.html.compare.json`;`--receipt PATH` 可指定同一物理父目录中的另一个文件。两份输入、HTML 和比较回执必须是四个不同的普通文件,拒绝符号链接或硬链接别名。
19
+
20
+ 比较回执包含双侧原始/语义摘要、编译配置、引擎、来源、品牌资源、比较 IR、HTML 身份和成对事务位置。`status: pass` 只表示本次比较和双成果发布已成功,`browserStatus: not-run`、`visualReview.status: required-pending`、`deliveryStatus: incomplete` 仍须如实保留。它不等于默认交付完成。
21
+
22
+ ## 阅读三个视图
23
+
24
+ Before、Delta、After 分别展示原版、变化和新版。Delta 保留完整的新版事实,旧位置或已移除内容以幽灵层作对照;这些辅助图元不成为新版 Reader 的真实拓扑。点击变化列表定位相应对象,保留未变事实和每侧完整标签、来源及 Reader 控件。无变化时仍可读取原版和新版。
25
+
26
+ 字段变化分类为 semantic、evidence、geometry、topology、scope。来源变化与移动、改线等几何变化分开;数组重排、对象键顺序、来源条目顺序或 `meta.output` 改动不自行成为业务变化。仅在两侧来源已验证、仓库相同且提交已固定时为 `proofLevel: revision-pinned`,其他情况为 `authored`。
27
+
28
+ ## 自动检查与实际看图
29
+
30
+ ```sh
31
+ "$PD" check comparison.html --strict-provenance --json
32
+ "$PD" visual-check comparison.html --out-dir compare-evidence-01 --json
33
+ ```
34
+
35
+ 按 `visual-check` 返回的 `evidence.summaryReceipt` 和 `evidence.browserReceipt` 中的真实路径读取文件;两者都含 `identity: {sha256, bytes}`,不要猜文件名。比较的独立 summary 为 `kind: architecture-comparison-summary`,包含完整 `comparison` 绑定,以及真实的 `check`、`visual-check` 两门。它不复用普通 finalize 的四门 summary,也不改写原 HTML 或原比较回执。
36
+
37
+ 每个视图分别测量四个桌面窗口及窄屏,暗亮主题分别检查。实际看图使用浏览器回执中的 12 张当前截图:每个视图的 1440×900、2048×1320 各 light/dark。逐张打开,核对主图、标签、卡片、关系遮挡、层级和控件;Delta 还须核旧位置、删除标记和变化定位与输入相符。DOM 数值、截图存在或自动测试不能替代观察。
38
+
39
+ 自动两门均通过后,`automatedStatus` 才为 `pass`,视觉仍是 `required-pending`、交付仍为 `incomplete`。缺工具、浏览器失败、某视图缺测或尚未实际看图分别报告,不沿用普通单图或另一次比较的审核。
40
+
41
+ ## 创建完整审核草稿
42
+
43
+ 将以下 summary 路径换成 `visual-check` 回执中的真实值。Node.js 18+ 可运行,不需要源码或 Rust。示例只复制绑定,不能替代打开图片;空 reviewer、`observed: false` 和 `verdict: unavailable` 必须按实际观察填写。
44
+
45
+ ```sh
46
+ node - "<比较summary真实路径>" "comparison-review-01.json" <<'NODE'
47
+ const fs = require('node:fs');
48
+ const assert = require('node:assert/strict');
49
+ const [summaryPath, recordPath] = process.argv.slice(2);
50
+ const summary = JSON.parse(fs.readFileSync(summaryPath, 'utf8'));
51
+ const names = ['check', 'visual-check'];
52
+ if (summary.kind !== 'architecture-comparison-summary' || summary.automatedStatus !== 'pass'
53
+ || summary.stages.length !== 2 || !names.every((name, index) =>
54
+ summary.stages[index].name === name && summary.stages[index].status === 'pass')) {
55
+ throw new Error('Both current comparison automated gates must pass before review.');
56
+ }
57
+ const browserRef = summary.evidence.browserReceipt;
58
+ const browser = JSON.parse(fs.readFileSync(browserRef.path, 'utf8'));
59
+ assert.deepStrictEqual(browser.comparison, summary.comparison);
60
+ if (browser.status !== 'pass' || browser.screenshots.length !== 12) {
61
+ throw new Error('Twelve current screenshots from all three views are required.');
62
+ }
63
+ const expected = new Set(['before', 'delta', 'after'].flatMap(view =>
64
+ ['1440x900', '2048x1320'].flatMap(size => ['light', 'dark'].map(theme => `${view}/${size}/${theme}`))));
65
+ const actual = browser.screenshots.map(shot =>
66
+ `${shot.viewId}/${shot.viewport.width}x${shot.viewport.height}/${shot.theme}`);
67
+ if (new Set(actual).size !== 12 || actual.some(key => !expected.has(key))) {
68
+ throw new Error('Comparison screenshot view, viewport or theme coverage differs.');
69
+ }
70
+ const record = {
71
+ schemaVersion: 1,
72
+ kind: 'architecture-comparison-review',
73
+ command: 'review-record',
74
+ comparison: summary.comparison,
75
+ browserReceipt: browserRef,
76
+ screenshotIdentities: browser.screenshots.map(shot => ({
77
+ viewId: shot.viewId,
78
+ file: { path: shot.path, identity: shot.identity },
79
+ viewport: shot.viewport,
80
+ theme: shot.theme,
81
+ observed: false,
82
+ observations: ''
83
+ })),
84
+ reviewer: '',
85
+ scope: ['diagram', 'labels', 'cards', 'relationship-occlusion', 'hierarchy', 'controls'],
86
+ verdict: 'unavailable',
87
+ findings: ['Image review has not been performed.']
88
+ };
89
+ fs.writeFileSync(recordPath, JSON.stringify(record, null, 2) + '\n', { flag: 'wx' });
90
+ NODE
91
+ ```
92
+
93
+ 填写真实 reviewer;已打开的每张图写 `observed: true` 与非空 `observations`。没有缺陷才能用 `verdict: passed`、`findings: []`;有缺陷用 `failed` 并写具体 findings;无法看图用 `unavailable` 并写实际限制。所有记录都必须保留双输入完整绑定与 12 张原件身份,不加未知字段,不用单图记录替代。
94
+
95
+ ```sh
96
+ "$PD" review-record comparison.html --record comparison-review-01.json --json
97
+ ```
98
+
99
+ 读取返回的 `evidence.summaryReceipt.path`。只有同一 `comparison` 的两门为 pass、`automatedStatus: pass`、`visualReview.status: passed`、`deliveryStatus: complete`,身份仍匹配当前输入、配置、资源、引擎、IR、HTML、比较回执和截图,才能报告完成。`failed` 或 `unavailable` 的观察结果保持 `incomplete`。
100
+
101
+ 相同已封存记录可幂等重试。若封存完成但 summary 更新失败,保留同一记录字节,解决摘要冲突或输出恢复后重试 `review-record`;不要再次 compare/visual-check 取得另一个身份。不同记录不覆盖已封存记录;输入或浏览器证据发生变化,需要新的对应审核。
102
+
103
+ ## 成对恢复
104
+
105
+ HTML 和比较 JSON 通过一个专用私有 journal 发布。短暂看见其中一个文件不表示成对成功;失败或中断后保留真实状态与恢复位置。读取回执的 `transaction.directory` 或诊断中的实际 `recoveryDirectory`,确认属于本次已授权输出后,显式传该目录:
106
+
107
+ ```sh
108
+ "$PD" recover-compare "<确切私有比较事务目录>" --json
109
+ ```
110
+
111
+ 未 committed 的事务恢复旧对,已 committed 的事务只清理本事务临时物。后来修改、重建目录、未知 claimant 或备份变化均保留并报告 `recovery-required`,重复恢复同一事务应幂等。stdout 丢失时,在原输出父目录只读定位 `.phoenix-diagram-compare-<id>` 并核其目标;多个候选须明确选择,不按修改时间推定,不改记录或删除备份强行通过。恢复只处理文件事务,不自动补浏览器或实际看图通过。
@@ -0,0 +1,42 @@
1
+ # 创作默认值
2
+
3
+ 新稿写 candidate 前读一次;已有候选仅在修复需要改变创作决策时读取。以用户材料和匹配 schema 为准,示例不是可复制的私人事实。
4
+
5
+ ## 事实与修复
6
+
7
+ 保留所有必要责任、实体、关系方向、协议、同步/异步行为、条件、waiting 与恢复路径。关键审批、授权或状态条件放在受影响节点或边上,卡片补充解释;资格条件不能替代批准结果,进入审批也不能替代批准后执行。例如,材料给“合并前可撤回”时,图中单独表示的批准阶段或获批后尚未合并的阶段也要保留撤回路径,不能在审批通过时提前结束这项许可。节点 `tag`/`sublabel`、卡片标题与条目同样只写有依据的事实,不从组件名称推定任务执行方式;可省略的无依据标注直接省略,不追加问题。组件的用途同样须有材料依据,不能按常见用法补充;例如,材料只给“读写 Redis”时,不标为“缓存”。例如,“超预算还需批准”只说明追加条件;材料未要求具体执行先后时,不补造先后,也不为细化先后追加问题。边界必须有真实隔离、所有权、运行或持久化依据。没有节点、边、来源、卡片或边界配额;需要更多内容时增加有意义的行和页面高度。
8
+
9
+ 关系标签携带动作、协议、数据和方向含义。碰撞时先调整间距、自动路线或标签位置,再在保留意义的前提下改写措辞。schema 允许空标签时,仅可省略两端已完整表达且无新增语义的文字,并解释这一创作选择;不能为修几何删除必要标签。Dataflow 的每条 flow 必须有非空 `label`。
10
+
11
+ 用诊断的 `subject` 定位对象、`evidence` 核对实测、`supportedFixes` 选择允许修复。保持语义清单、用户 pins 与已确认拓扑,只修改相关布局邻域。按实际失败门记录 error 数、历史最佳和停滞计数:首次失败计数0,修复后严格低于该门最佳才更新并清零,否则加1;到2立即停止,即使不再运行命令,也不能修改 candidate 或回退到历史较好版本;不因错误种类变化重置或再试。重建交付或返回已记录门时,沿用该门历史,不因新回执重新初始化;环境失败也不允许无限重试。例如同一门 `6 → 4 → 5 → 4` 的后两轮都未优于历史最佳4,应停止。前门通过后首次进入后门是实际进展,按新门初始化并保留全部门状态,不混算跨门的顶层 error 数;同一 validate 门内,诊断 `stage` 首次由 `input` 变为 `layout` 也按进入后门计。也不额外添加强制摆放或重试轮次。
12
+
13
+ Workflow 修法写明整图验证通过时,按它列出的全部路径一并修改,一轮修完:撤掉列出的路由 pin;文字容量诊断把列出的全部文字控制在给出的文字单位上限内(CJK 字符记 2),超出部分移入卡片条目而不删除。`input/main-path` 列倒退时,按修法一次调整它列出的全部 `col`。
14
+
15
+ ## 新旧合同
16
+
17
+ 新稿明确写 `meta.input_contract: "phoenix-v1"`,默认 showcase。Workflow 新稿使用 `schema_version: 2`,Lifecycle 新稿使用 `schema_version: 3`;其余八类为 1。ER、类、树、时间线、耗时瀑布只有 `phoenix-v1`,未标记时也按它读取。已有未标记 JSON 保留原字节,按 `legacy-2.17` 验证;不要仅为套用新默认值迁移合同。CLI 的显式 `--input-contract` 覆盖必须与用户已授权的导入意图一致。
18
+
19
+ 读取 `compatibility.coreCompatibility` 与 `compatibility.dispositions`,按[兼容约定](compatibility.md)逐项报告非 `supported` 字段的实际处理与原因,并保留原 JSON;不能将核心兼容通过说成旧展示能力全部复刻,也不能借展示限制删除核心事实。品牌仅在明确请求时按[品牌资源](brand-marks.md)处理,普通编译不联网采集;旧安装移除另需明确迁移授权和确认。`sources` 与 `meta.repository` 交付时按[仓库来源创作](repository-authoring.md)核对。
20
+
21
+ ## 布局
22
+
23
+ - Architecture:先按真实连接组织主路径与子系统,支线靠近负责节点;保留真实边界及显式坐标。新稿可用 schema 的 grid 字段组织有意义的行,省略无依据的固定 viewBox,先用自动路线。
24
+ - Workflow:保留泳道、条件、分支、回路及 mainPath。跨阶段许可按已加载 SKILL 的创作步骤逐状态核对,不能将先补交、重提等业务动作变为前提;保留等价表达,不要求逐节点直接边。新稿省略固定 viewBox 和手工宽度,让编译器测量标签;已有 v1 固定几何不切成 v2。出现共用通道或箭头拥挤时,按诊断的实测节点与整组相关路线,先给共用起点或终点周围留出独立通道;必要时调整未固定节点的 `col`、`row` 或间距,包括回路起点、多入边的汇合与撤回目标。端点可在图的边缘或内部,以所有相关路线的实测结果为准,不由 mainPath 顺序预定位置;不要为了保留拥挤布局而先叠加端口或通道 pin。自己添加的端口或路线 pins 发生冲突时,撤掉这些约束,让自动路线重新联排相关边,避免继续叠加单边 pins;剩余实测问题再按诊断选择端口或路线。
25
+ - Sequence:保留参与者顺序、消息方向、`y`、同步/异步、return 与完整 notes。新稿省略 `meta.column_fit` 和 viewBox 使用新合同默认布局;旧合同缺省 fixed 保持原样。参与者内部动作放在其真实跨参与者消息的 note 中,不造 self-message。给 note 的实际换行高度留空间,28px 基础消息间距不代表 note 容量;修复时协调后续消息、segment 和 activation,不能删 note 含义。
26
+ - Dataflow:明确每个输入由哪个 producer 实际输出,组合转换应保留独立标注的各路输入。真实存储端使用 `database`,内存计算通过生成它的 `backend` 表达。以 stage/row 网格开始;普通数据用 default,主数据 emphasis,确有策略/PII 含义才用 security,异步批处理才用 dashed。
27
+ - Lifecycle:`mainPath` 列出真实主路径,并显式写出每条 transition;保留退出边的 label、note、variant。等待用 waiting,可恢复失败必须存在真实返回边。不得把终止或无法恢复伪装成 recovery。
28
+ - ERD:表优先,列出每张表的全部物理列,保留源 SQL 类型;字段注释写进类型串(如 `varchar(64)|客户名`),卡片可解释约束但不能代替字段列表。`key` 写出该列承担的全部角色(如 `["pk", "fk"]`),外键必须带 `entity.attribute` 形式的 `references`。分别核对每端最大基数、最小参与数与引用列可空性:外键不自动证明 `NOT NULL`,“可有多个”不单独证明最小数为零。以已给 SQL 约束、联合主键、显式文字或 Mermaid 端点为依据;已明确的事实直接用,不重复询问或要求另选表现形式。需要表示而缺少依据的最小数/可空性,按 SKILL 的开放问题规则先问并停止,不先生成 candidate、画 `0..N`/`1` 再标“待确认”或用卡片兜底;明确授权拟定规则时仍走建议分支。关系两端各写最大基数;`fromOptional`/`toOptional` 省略或写 `false` 表示该端最小值为1,写 `true` 表示0。两种取值都要有材料依据,省略字段不能表示未知。按已核实的功能域写 `tag`,同域表占一块实心的行、列或矩形格子,不夹无关表;有 tag 的表必须用 `row`/`col`。自引用留作外键列,不画自连边。默认仍用 showcase;大型 schema 停滞时按上文停滞规则报告,可询问用户是否改用 standard,未经要求不先降级。
29
+ - Class:每个类型写 `kind`;只选解释所需的成员,成员不截断,长签名由编译器折行。关系从 `from` 读向 `to`:realization 只能由非接口指向接口,inheritance 不跨接口边界,继承不能成环。超类放在子类上方,用 `row`/`col` 摆放。关系种类与两端数量分别据材料确定:成员可脱离整体存在,不等于整体可以没有成员;“包含多个”也不单独给出数量下界。未给下界时保留“多个”等已有数量含义,不补 `0..*`、`1..*` 等数值或其简写,只省略无依据的可选数值标注。“一个/单个/多个”等文字也属于已给数量;交付前逐条核对这些数量已由关系标签或相应的单值/集合成员明确表达,不能仅以组合符号或创建销毁文字替代。明确数值或 Mermaid 端点照用,不重复询问,也不为可选数量标注追加问题。
30
+ - Tree:恰一个根,其余节点各写一个 `parent`,链接只表示包含,不表达调用或数据流。浅而均衡的分解用 `layout.direction: "down"`,深或叶子多的(如仓库目录)用 `"right"`。`collapsed` 只决定阅读器的初始折叠,导出始终是完整树。
31
+ - Timeline:每个 `at` 是带 `Z` 或 `±HH:MM` 的 ISO 时间;`meta.timezone` 是显示时钟,接受 IANA 名、固定偏移及 ICU 兼容别名,缺省 UTC。本期新增接受 `SystemV/AST4ADT`、`SystemV/CST6CDT`、`SystemV/EST5EDT`、`SystemV/MST7MDT`、`SystemV/PST8PDT`、`SystemV/YST9YDT`;曾因不支持而拒绝的这六区输入可直接重试,不改成近似城市时区。这些说明不是名称白名单,实际接受范围以原生输入门为准。`meta.evidence` 必填:记录到的事件用 `observed`,说明性的用 `illustrative`,不把推测或近似的时间标为 observed。只有日期的记录写在该偏移的 12:00 并设 `precision: "day"`,不在卡片里另作说明。声明 `lanes` 时每个事件都要写其中一个 lane;只按输入画事件,不补缺口。
32
+ - Waterfall:跨度的 `start` 与 `end` 或 `duration` 用同一 `meta.unit`;两者同写时必须一致,没有记录结束的跨度必须 `status: "incomplete"`。`meta.evidence` 只有真实计时(trace、日志、性能剖析)才写 `measured`,否则写 `illustrative`;不从代码结构推断时长,也不为计时去运行项目。请求或父跨度的 `end` 只说明该跨度结束,不自动给出 trace 的精确采集截止时刻;仅由自动扩展或人为固定得到的窗口边界不能作为观测事实。未给精确截止时,不在名称、`detail`、卡片、提示或最终答复中补精确截止时刻或截至该时的精确已观测时长。有记录支持的区间可表达“至少/≥”时长下界:同一 trace 已记录的最晚时刻可给出采集截止下界,采集截止时仍开放的跨度可据其起点到该时刻的差给出时长下界,无须知道精确截止;不能由此补精确截止或最终耗时,缺少可省略的截止说明不追加问题。推导时长比较、极值或排序结论时,以材料已给事实、已知数值或上下界为依据,不能默认未结束跨度短于已完成跨度。材料直接给定的比较事实照用,不为证明它额外索要数值。上下界足以证明时,未知总时长也可参与比较;否则写清仅比较已知完成跨度或明确窗口内片段,不把该结论扩为全部跨度的最终耗时比较。判断无子跨度覆盖的区间时,必须核对相关未结束子跨度;缺少其结束依据就不作零覆盖断言。百分比是相对整体墙钟,父子时长不相加;输入没写依赖时不标关键路径。
33
+
34
+ 只有实测缺陷或用户固定几何要求才添加 route/label pins。自动端口方向是离开/进入边界的方向合同;不得接受穿过无关不透明节点、含混共用通道或标签盖住其他关系的路线。
35
+
36
+ ## 文本与展示
37
+
38
+ 沿用户选择或对话主语言创作,保留原样标识;繁体中文请求写繁体内容。`meta.locale` 只选择 Viewer 固定界面,支持 `en`、`zh-CN`、`zh-TW`、`es`、`ko`(大小写不敏感);其他标签回退英文界面和 `<html lang="en">`,回执 `locale.fallback` 为 true,需在答复中说明。不翻译作者内容。
39
+
40
+ 省略默认 `meta.visual_preset` 得到 classic;省略 subtitle、legend 得到标题与 truthful auto。其他视觉风格、额外副标题须有用户请求。`engineering_profile` 仅在明确请求且事实已知的部署所有权场景启用,启用后不为过检而删除。
41
+
42
+ 桌面图保持完整可读且无水平溢出;按真实内容增加纵向节奏。只接受 Reader 已声明、浏览器已测量的页面纵向滚动,具体见[交付合同](delivery-contract.md)。禁止裁剪、内部图解滚动或缩小字体来伪造通过。
@@ -0,0 +1,52 @@
1
+ # 品牌资源
2
+
3
+ 仅在用户明确要求品牌标识时使用。品牌只补身份,不能替代组件标签、职责或 type 语义标识;不从组件名称猜品牌或官方网站。明确要求标识不等于授权联网采集;只有用户明确要求采集、并给出公共 HTTP(S) URL 时才运行 capture。
4
+
5
+ 命令沿主 SKILL 中已解析的 `PD`,从用户工作目录执行。普通 validate/deliver/finalize/compare/preview 只读取固定目录或已固定的本地缓存,不联网补资源,不隐式安装或更新引擎。
6
+
7
+ ## 离线查询与使用
8
+
9
+ ```sh
10
+ "$PD" brands "<用户指定的品牌查询>" --json
11
+ ```
12
+
13
+ 省略 query 列出固定目录;查询匹配 ID、title、category、aliases、domains 的子串。返回 `catalogVersion`、`query`、`matches`、`diagnostics`,每个 match 有 `id`、`title`、`category`、`aliases`、`domains`、`provenance`。空 matches 就是无匹配,不能按相似名称换成别的品牌。
14
+
15
+ 无目录匹配且用户未提供官方 URL 时,省略这项可选品牌标识,保留原职责、标签并说明未加入标识;不猜站点、不下载,也不为可选品牌扩展业务澄清。已有输入明确固定 brand 而资源缺失或变更时,按真实诊断失败,不能删除该字段来过检。
16
+
17
+ 在原图对应元素的 `brand` 字段使用已核实的 canonical ID。原五类的支持位置为 architecture.components、workflow.nodes、sequence.participants、dataflow.nodes、lifecycle.states;ER、class、tree、timeline、waterfall 不扩加 brand 字段。在brand输入或capture中,已知目录域名的HTTP(S) URL可离线解析为内置品牌,仍优先使用回执给出的ID;brands查询本身只做上述子串检索。
18
+
19
+ ## 明确采集官方 URL
20
+
21
+ 先把 `OFFICIAL_URL` 设为用户给出的实际 URL,`BRAND_CACHE` 设为本次选择的缓存目录;不执行含占位符的命令。
22
+
23
+ ```sh
24
+ "$PD" brands capture "$OFFICIAL_URL" --brand-cache "$BRAND_CACHE" --json
25
+ ```
26
+
27
+ 省略 `--brand-cache` 时,缓存为当前工作目录下 `.phoenix-diagram/brands/v1`。成功后把回执的 `brand` 值原样用于对应元素:
28
+
29
+ - 已知目录域名:`brand` 为字符串 ID;使用内置向量,零网络,`cachePath` 为 null。
30
+ - 其他获准 URL:`brand` 为 `{ "url": "…", "sha256": "…" }`;URL 与64位小写 SHA-256 必须一起固定,后续编译使用同一缓存目录。
31
+
32
+ `brand` 不是整个回执,不把 `resource`、`cachePath` 或 dataBase64 填入输入。未知 URL 的裸字符串不会触发采集,也不能通过删除 brand 来绕过失败。资源变更时,只在已获明确采集授权的范围内重新采集并交接新的摘要;不静默刷新。
33
+
34
+ CaptureReceipt 的公共头为 `schemaVersion/tool/toolVersion/command/status/diagnostics`,command 为 `brands capture`,status 为 pass/failed;另有 `brand`、`resource`、`cachePath`,失败时不返回已激活资源。`resource` 包含 `id/sha256/bytes/mediaType/urlSha256/sourceUrl/resolvedUrl/catalogVersion`;不适用项可为 null。公共来源和 HTML 内资源事实去掉 URL query/fragment;消费缓存仍按 capture 返回的 brand 身份,不自行改写 URL 或摘要。
35
+
36
+ 网络仅读取指定 URL、受检查的重定向,以及该页 head 明确声明的 HTTP(S) 图标链接或 favicon;声明的 CDN 图标也逐请求检查,不另行发现其他品牌网站、不执行页面脚本。只收 MIME/签名/尺寸/边界相符的 PNG、JPEG、WebP、ICO;网络 SVG 不接受,可信内置向量仍走离线路径。总期限8秒,HTML head上限256KiB,图像1MiB、宽高各不超过4096;安全限制不能用私网开关、代理或随意换图绕过。userinfo、非标准端口、私有/回环/保留地址及不安全 DNS 结果均拒绝。
37
+
38
+ ## 诊断与交付
39
+
40
+ | code | 处理 |
41
+ | --- | --- |
42
+ | `brand/unknown` | 核对用户指定身份和目录结果,不猜替代品牌。 |
43
+ | `brand/unpinned-url` | 未固定的非目录 URL;仅获明确授权后采集。 |
44
+ | `brand/cache-missing` | 同一 URL/摘要的安全缓存不可用;不在普通生成中联网。 |
45
+ | `brand/digest-mismatch` | URL、摘要或缓存身份不符;保留现有材料,核对原回执。 |
46
+ | `brand/blocked` | URL/DNS/IP安全边界拒绝,不绕过。 |
47
+ | `brand/capture-unavailable` | 资源或网络不可获得,报告实际缺口,不换来源。 |
48
+ | `brand/invalid-image` | MIME、字节、尺寸或边界不符,不冒充已采集成功。 |
49
+
50
+ 品牌失败的退出码区分输入/策略1、归属冲突3、I/O4、资源或缓存不可获得5;参数错误为2,仍须读 diagnostics。图标占用标题轨容量,固定几何不足应修获准几何或报告诊断,不缩字、删标签或改用户 pins 过检。
51
+
52
+ 继续正常 finalize、实际打开当前截图、review-record,并回读同一 summary;采集成功不代表图解或来源整体已通过。保留主 SKILL 的强事实规则、语言选择和同一失败门两次停滞即停止的规则;品牌请求不授权补造业务事实。
@@ -0,0 +1,22 @@
1
+ # 输入与展示兼容
2
+
3
+ 导入已有 JSON 或解释兼容回执时读取。本约定不授权改写原输入、迁移安装或替用户补事实。
4
+
5
+ | 输入 | 合同 |
6
+ | --- | --- |
7
+ | 新稿,全部十类 | 明确写 `meta.input_contract: "phoenix-v1"` |
8
+ | 未标记的 architecture、workflow、sequence、dataflow、lifecycle 旧稿 | `legacy-2.17`,保留原字节及默认几何 |
9
+ | 已知来自 Archify 3.1 的原五类稿件 | 显式传 `--input-contract phoenix-v1`,不为导入改写原文件 |
10
+ | erd、class、tree、timeline、waterfall | 只有 `phoenix-v1` |
11
+
12
+ 显式合同、质量参数与输入已有声明冲突时会拒绝;不能通过覆盖参数消除已声明的语义。五份 `examples/legacy.*.json` 保留固定 2.17 原例字节,只供兼容输入使用,不是新稿默认值。
13
+
14
+ 读取 deliver 阶段的 `receipt.compatibility`,不要仅看退出码:
15
+
16
+ - `coreCompatibility` 表示核心输入兼容结果,不能证明旧 Reader 的全部展示能力已复刻。
17
+ - `dispositions` 按 JSON pointer 给出 `path`、`disposition`、`reason`。`brand` 为 `supported`,由固定目录或摘要固定的本地资源解析;缺失资源仍须按实际诊断处理。
18
+ - `/meta/views` 为 `unsupported-display`:旧 Guided Views 不重建,当前 Reader 提供导航。
19
+ - `legacy-2.17` 的 `/meta/animation` 为 `ignored-display`:旧播放偏好不覆盖首次 Still。
20
+ - 有非 `supported` 项时 `status` 为 `partial`;这些是终局处理,`deferredFields` 为空,不再承诺某个后续阶段补齐。
21
+
22
+ 在交付答复中逐项说明非 `supported` 字段及原因。保留原 JSON 和已有独立 HTML,不把不支持的展示改成卡片、删掉必要事实或宣称全量兼容。仓库来源核对、时间证据及语言回退仍分别按各自回执交接。
@@ -0,0 +1,127 @@
1
+ # 交付与实际审核
2
+
3
+ 读本文件处理 finalize、诊断、实际图像审核、review-record、环境失败或输出恢复。用户明确请求双输入架构比较时,使用[架构比较合同](architecture-compare.md)的三视图、独立两门 summary 和 12 图观察记录;本文件下方的单图四门与四图记录保持原合同。命令使用 `SKILL.md` 中已解析的 `PD`,从用户工作目录执行。
4
+
5
+ ## 四门与身份
6
+
7
+ ```sh
8
+ "$PD" finalize <type> candidate.json diagram.html --json
9
+ "$PD" finalize <type> candidate.json diagram.html --repo-root "<仓库根>" --json
10
+ ```
11
+
12
+ 带 `sources` 或 `meta.repository` 的图用第二种,单图的 `--repo-root` 接受 `validate`、`deliver`、`finalize`;双输入架构比较另由 `compare --repo-root` 处理。来源核对独立于四门:回执与 summary 的 `evidence.status` 为 `verified`、`partial`、`unverified` 或 `none`,校验与交付回执另列 `evidence.unverified`(pointer、元素、原因)与 `evidence.unsourced`。结构错误(凭据 URL、路径逃逸、非法行区间、provider 与主机不符、网页链接用了不支持的主机)在 input 阶段失败且不生成 HTML。
13
+
14
+ 固定顺序为 `validate → deliver → check → browser-check`。首个非 pass 阶段后其余阶段保持 `not-run`。`validate` 做输入/布局与独立 artifact 检查;`deliver` 发布本次 HTML;`check` 严格绑定当前交付;`browser-check` 检查浏览器实测并采集当前截图。读取每个阶段真实 status,不能补造通过。
15
+
16
+ stdout 是单一 JSON。保留首次成功自动验收的 `deliveryReceiptId`、`browserReceiptIdentity`、`candidate` / `artifact` 的 `path` 与 `identity:{sha256,bytes}`、`configSha256` 和完整 `engine`。HTML 已提交不等于整体完成;自动四门通过后,`visualReview.status` 仍为 `required-pending`,`deliveryStatus` 为 `incomplete`。finalize 回执的 `locale` 给出请求、解析后的界面语言与是否回退英文。
17
+
18
+ 从 `evidence.summaryReceipt.path` 或 `evidence.summaryPath` 定位本次 summary,从 `evidence.browserReceipt.path` 读取绑定的浏览器回执。summary 在输出旁,`--out-dir` 指定截图/浏览器证据目录;按回执给出的真实路径读取,勿猜测文件名或跨图混用。
19
+
20
+ 失败时使用当前 summary 的 diagnostics。`producedByThisRun: false` 或 validate/deliver 未过时,不对输出路径执行视觉验收:该路径可能仍是旧的 last-good 文件。修复 candidate 后重新 finalize,使用新的 `--out-dir` 留存新证据;原 candidate、HTML、配置、引擎或截图身份变化后,旧审核不能继承。仅为取完整状态或登记看图结果不得再次 finalize。
21
+
22
+ ## 浏览器与实际看图
23
+
24
+ 自动检查覆盖 1440×900、1600×1000、1920×1080、2048×1320 桌面;实际审核使用回执中的四张截图:1440×900 与 2048×1320 各 light/dark。打开每张当前图片,检查主图、全部标签/notes、卡片、关系遮挡、层级和控件。截图文件、digest、DOM 数值或测试输出都不代表已经观察。
25
+
26
+ 每个桌面尺寸必须无水平溢出。纵向滚动仅按 Reader 声明和测量接受:`intrinsic-height` / `width-first` 的自动画布,或 Architecture 显式 viewBox 的 `authored-height`,需完整内容留在 panel 内,无内部滚动或裁剪,页面允许纵向滚动,且回执确认可读并给出 `verticalScrollAccepted: true` / `overflowDisposition: "readable-vertical-scroll"`。未知声明、水平溢出、不可读文字和 chrome 遮挡仍失败。不能手工改 DOM 属性伪造该例外。
27
+
28
+ 定向诊断可用下列公开命令;它们不替代同一交付的四门 summary:
29
+
30
+ ```sh
31
+ "$PD" validate <type> candidate.json --quality showcase --layout-json --json
32
+ "$PD" check diagram.html --strict-provenance --json
33
+ "$PD" browser-check diagram.html --out-dir evidence-2 --json
34
+ "$PD" visual-check diagram.html --out-dir evidence-3 --json
35
+ ```
36
+
37
+ 环境 `unavailable`、执行或断言 `failed`、后续 `not-run` 与未实际看图必须分别报告。自动门失败先修该门;没有图像能力时不得从测量推测 `passed`。不自动安装引擎或浏览器,也不打开用户现有浏览器、启动 preview。
38
+
39
+ ## 生成完整审核草稿
40
+
41
+ 以下命令只从**当前自动四门已通过**的 summary/browser 回执复制身份,创建一个新文件。先将 summary 和 review 路径换成真实路径。Node.js 18+ 即可运行,不需要仓库或 Rust。它不会替你看图,草稿中的空 reviewer、`observed: false` 和 `verdict: "unavailable"` 必须按实际情况处理;`status: "pass"` 是记录协议字段,不是视觉通过。
42
+
43
+ ```sh
44
+ node - "<当前summary路径>" "review-01.json" <<'NODE'
45
+ const fs = require('node:fs');
46
+ const [summaryPath, recordPath] = process.argv.slice(2);
47
+ const summary = JSON.parse(fs.readFileSync(summaryPath, 'utf8'));
48
+ const names = ['validate', 'deliver', 'check', 'browser-check'];
49
+ if (summary.automatedStatus !== 'pass' || summary.stages.length !== 4
50
+ || !names.every(name => summary.stages.filter(stage => stage.name === name && stage.status === 'pass').length === 1)) {
51
+ throw new Error('The current four automated gates must pass before review.');
52
+ }
53
+ const browser = JSON.parse(fs.readFileSync(summary.evidence.browserReceipt.path, 'utf8'));
54
+ if (browser.screenshots.length !== 4) throw new Error('Four current screenshots are required.');
55
+ const bound = file => ({ path: file.path, identity: file.identity });
56
+ const record = {
57
+ schemaVersion: 1,
58
+ tool: 'phoenix-diagram',
59
+ toolVersion: summary.toolVersion,
60
+ command: 'review-record',
61
+ status: 'pass',
62
+ diagnostics: [],
63
+ artifact: bound(summary.artifact),
64
+ candidate: bound(summary.candidate),
65
+ configSha256: summary.configSha256,
66
+ engine: summary.engine,
67
+ deliveryReceiptId: summary.deliveryReceiptId,
68
+ browserReceiptIdentity: summary.browserReceiptIdentity,
69
+ screenshotIdentities: browser.screenshots.map(screenshot => ({
70
+ file: bound(screenshot),
71
+ viewport: screenshot.viewport,
72
+ theme: screenshot.theme,
73
+ observed: false,
74
+ observations: ''
75
+ })),
76
+ reviewer: '',
77
+ scope: ['diagram', 'labels', 'cards', 'relationship-occlusion', 'hierarchy', 'controls'],
78
+ verdict: 'unavailable',
79
+ findings: ['Image review has not been performed.']
80
+ };
81
+ fs.writeFileSync(recordPath, JSON.stringify(record, null, 2) + '\n', { flag: 'wx' });
82
+ NODE
83
+ ```
84
+
85
+ 实际打开四张图片后,填写真实 reviewer;逐张写 `observed: true` 和非空 `observations`,描述实际看到的上述六类内容。无缺陷才能设 `verdict: "passed"`、`findings: []`;有缺陷用 `failed` 并列具体 findings。确实没有图像工具/审核者时使用 `unavailable`、真实 reviewer 标识与非空限制说明,保持未完成。不要新增未知 JSON 字段、改身份、改 viewport/theme 或把观察复制到未打开的截图。
86
+
87
+ ## 原身份收口
88
+
89
+ ```sh
90
+ "$PD" review-record diagram.html --record review-01.json --json
91
+ ```
92
+
93
+ 读取返回的 `evidence.summaryReceipt.path`,再读该交付的当前 summary。核对四门全部 pass、`automatedStatus: "pass"`、`visualReview.status: "passed"`、`deliveryStatus: "complete"`;`deliveryReceiptId`、`browserReceiptIdentity`、输入/HTML/配置/引擎绑定须与首次审核材料一致。仅凭 review-record 退出码或截图存在不能称完成。
94
+
95
+ 相同已封存记录可幂等重试;若记录已保存但 summary 写失败,保留同一记录字节并重试 review-record。不要再次 deliver/finalize 取得另一个身份,也不要覆盖已封存的不同记录。用户要求或实际缺陷导致改 candidate 时,生成新交付和新证据,再做对应审核。
96
+
97
+ ## 输出恢复
98
+
99
+ `commitState` / diagnostics 表明 `recovery-required` 时,报告实际 public 文件状态及保留记录。在原输出父目录执行 `ls -la "<原输出父目录>"`,只读核对记录中的 target。设原输出父目录为 `P`、记录内 transactionId 为 `ID`,同一事务的记录可能处于以下三处:
100
+
101
+ 1. `P/.phoenix-diagram-recovery-ID/publication-recovery-v1.json`。
102
+ 2. 清理中的 sibling witness:`P/.phoenix-diagram-recovery-ID.cleanup.json`。
103
+ 3. 最后清理 quarantine:`P/.phoenix-diagram-output-cleanup/ID.json`。固定目录为当前用户 0700,保留自身绑定的 0600 `owner-v1.json`;有效 owner 的空壳允许保留,不等于 pending。
104
+
105
+ 对已授权、与本次目标绑定的事务,**始终显式传原 recovery-ID 目录,即使该目录已不存在**。不能把 witness 或 quarantine JSON 路径当作参数;命令只从这个原目录路径导出同 ID 的另外两处记录。
106
+
107
+ ```sh
108
+ "$PD" recover-output "P/.phoenix-diagram-recovery-ID" --json
109
+ ```
110
+
111
+ 将 P/ID 换为已识别的真实值。多个记录必须明确选择,不扫描后自动挑事务,不按目录时间推断。未知 owner、额外条目、替换对象或多处记录歧义均保留拒绝;不得删除、移动或重写它们来强行通过。
112
+
113
+ 读取返回的 `publicState`、`preserved`、`recoveryStatus`、diagnostics 和退出码。原目录不存在但可信 witness/quarantine 记录仍在时须继续由命令验证,不能自行宣称 absent。恢复只处理文件事务,仍需适用的交付检查与实际图像审核;后来的 claimant 或绑定改变应被保留并如实报告。
114
+
115
+ ## 架构比较的独立收口
116
+
117
+ 仅明确的架构比较请求使用以下顺序,完整约束和可复制的审核草稿见[架构比较](architecture-compare.md#创建完整审核草稿):
118
+
119
+ ```sh
120
+ "$PD" compare architecture base.json head.json comparison.html --json
121
+ "$PD" check comparison.html --strict-provenance --json
122
+ "$PD" visual-check comparison.html --out-dir compare-evidence-01 --json
123
+ # 从返回的 evidence.summaryReceipt / evidence.browserReceipt 读取原件,实际观察 12 张图并填写完整记录。
124
+ "$PD" review-record comparison.html --record comparison-review-01.json --json
125
+ ```
126
+
127
+ 比较 summary 的 `comparison` 绑定原比较回执、双输入、配置/资源/引擎、IR 与 HTML;stages 仅为真实 `check`、`visual-check`。三个视图的 12 张当前图片均须观察。自动通过仍为 `required-pending` / `incomplete`,只有该 summary 的自动两门与实际审核通过才 `complete`。不要用单图记录、原 compare JSON 或重新生成成果代替这份可变收口摘要。
@@ -0,0 +1,14 @@
1
+ # 增加图型
2
+
3
+ 仅在维护者明确要求扩展工具时读取。普通作图不扩展引擎;当前支持十类,未知类型继续返回 `input/unsupported-type`。
4
+
5
+ 一个新类型须同时交付以下路径,不能只增加 schema 或模仿已有 SVG:
6
+
7
+ 1. **输入与语义**:定义类型标识、合同、schema/common 引用及完整语义校验;保持现有十类和两种合同的解释。新能力不能静默改变旧输入默认值或原 JSON。
8
+ 2. **发现与创作**:同步 `DiagramType`、CLI/guide、包内 schema 与完整最小示例、skill 图型映射及必要创作规则。明确与相邻类型的边界,未知类型仍拒绝。
9
+ 3. **布局、渲染与检查**:实现类型布局、结构化图元、独立 HTML、语义/几何/文字检查和可操作 diagnostics。保持标签、关系、数量、来源与用户 pins;不加内容配额或通过裁切、缩字、隐藏来过检。
10
+ 4. **Reader 与导出**:为适用的选择、详情、搜索、图关系、相机及范围操作提供真实 graph 数据;不适用的能力明确禁用。覆盖主题、Still/Live、键盘、五语言/回退、移动端与各导出路径,保留离线字体及许可。
11
+ 5. **交付与分发**:接入 finalize、浏览器检查、实际看图及 review-record 身份链;纳入 sourceInputs、bundle manifest、安装允许成员、npm tgz、来源与完整许可。不把运行期依赖转成下载源码、Node renderer 或未声明资源。
12
+ 6. **回归**:以有辨别力的正常、边界、错误输入和完整事实用例验证新类型;同时验证既有十类、CLI、两种合同、已有独立 HTML/Reader、离线与安装边界。自动检查和实际看图分别记录,未运行的环境不计通过。
13
+
14
+ 类型扩展不自动扩展架构比较、品牌采集、预览或迁移的授权范围。同步所有复述类型/命令的当前接口文档,保留冻结 oracle、历史记录与第三方文本;按构建流程重建 bundle,不能只更新 skill 源文件。
@@ -0,0 +1,57 @@
1
+ # 项目级旧入口迁移与回滚
2
+
3
+ 仅在用户明确请求迁移所选项目的旧 Archify 入口时使用。先展示精确移除范围和不备份后果,只有覆盖该范围的明确确认才进入apply;已有明确授权不重复询问。普通install或普通作图不授权迁移。迁移保留原JSON、已有独立HTML以及范围外内容,不接管个人目录、Phoenix UI、共享settings/hooks或其他provider。
4
+
5
+ 旧skill是确认后直接移除,**没有目标备份**。固定历史源码是识别与显式重装依据,不是用户旧目录的备份。回滚只处理新Phoenix Diagram受管写入,不自动恢复已删除的Archify。
6
+
7
+ ## 查看范围,再确认执行
8
+
9
+ 沿主 SKILL 使用当前加载的 `PD`。`PROJECT` 是用户明确指定的实际项目目录,不从个人安装位置推定。skill launcher会为from-archify补入配套包内bundle-root;若直接运行原生引擎,必须显式给配套 `--bundle-root DIR`。
10
+
11
+ ```sh
12
+ "$PD" migrate --from-archify --project "$PROJECT" --providers claude,codex --dry-run --json
13
+ # 仅在用户已确认上面精确范围及无旧备份后执行:
14
+ "$PD" migrate --from-archify --project "$PROJECT" --providers claude,codex --confirm-remove-archify --json
15
+ ```
16
+
17
+ `--providers` 可省略:按项目已存在的已知provider目录选择;都没有时默认claude。选择codex会同时检查.agents与.codex的旧入口,新Diagram skill只写入.agents;最终以回执providers和逐项路径为准,不把示例的两个provider当全部支持名单。
18
+
19
+ dry-run只报告计划与冲突,零写入;遇pending只报告,不恢复。检查 `status`、`project`、`providers`、`migrationSources`、`removals`、`preserved`、`legacyBackupPolicy`、`reinstallInstructions`。只识别完整匹配固定来源、没有外部管理归属且物理快照稳定的项目副本;自定义/多缺文件、链接、未知来源、外部管理或个人安装应保留,不能为了过检强删。
20
+
21
+ 实际apply必须带 `--confirm-remove-archify`;缺少时是 `install/confirmation-required`、exit3,删除与新入口写入都不开始。确认仅限所展示的项目/provider/目录,不授权清理其他位置。先持久化事务意图、确认范围与快照,再逐项受检查移除旧文件并发布新入口,active最后提交。没有跨整个过程的“失败就零变更”承诺;中断时交接真实已删、剩余和保留项。
22
+
23
+ 联合安装的 `--migrate-archify` 属于独立的联合安装器入口,不是给 `PD migrate` 添加的参数;它先展示原生dry-run;TTY肯定答复才apply,拒绝/EOF不开始,非TTY必须显式确认标志。`--no-phoenix-diagram`仍跳过并保留旧入口;迁移分支提前返回,不进入hooks/settings/AGENTS/UI安装。仅给确认标志不构成迁移请求。
24
+
25
+ ## 指定事务恢复或回滚
26
+
27
+ 从本次回执取得真实 `transactionId`、`recoveryCommand`、`rollbackCommand`,优先原样使用绑定本项目的命令,不扫描后自动挑一个事务。三种mode互斥:
28
+
29
+ ```sh
30
+ "$PD" migrate --recover "$TRANSACTION_ID" --project "$PROJECT" --json
31
+ "$PD" migrate --rollback "$TRANSACTION_ID" --project "$PROJECT" --dry-run --json
32
+ "$PD" migrate --rollback "$TRANSACTION_ID" --project "$PROJECT" --json
33
+ ```
34
+
35
+ 若部分回滚已恢复旧 launcher/ENGINE,旧引擎可能不支持 migrate;使用原回执给出的已验证新原生引擎 recoveryCommand,不换成旧 launcher,也不按 PATH 猜引擎。
36
+
37
+ recover不接受dry-run;recover/rollback都不接受bundle-root、providers或confirm-remove-archify。它们核已存在的固定正确引擎与本地事务,不下载、不更新、不重装旧skill,不要求当前active安装已完整提交。
38
+
39
+ 普通 install 的 pending 恢复仍按其回执重跑原显式 install;`migrate --recover ID` 用于已确认的迁移或正在回滚的指定事务,不能代替普通安装恢复。优先执行对应回执的 `recoveryCommand`,不要只因有 journal ID 就改用迁移恢复命令。
40
+
41
+ - Recover继续指定已确认事务的安全剩余步骤;同一确认范围不重复索取确认。后来新增/改写、删除后重建或父目录身份变化保留并报告recovery-required;不凭stdout推断哪些文件已删。
42
+ - Rollback仅回滚**当前committed事务**的新入口受管写入;包括仍为v1的当前事务经原生引擎验证并扩展后的回滚,不是跳过后来安装去回滚任意历史ID。后来修改在预检时冲突,先保持零变更;中途身份变化仍保留拒绝。成功rolled-back,同一ID可幂等重试。
43
+ - 恢复之前的Diagram active语义须重新绑定恢复后的实际文件身份/checksum;不手拷旧active、journal或备份内容。Archify删除不逆向恢复,按回执reinstallInstructions另获授权后显式重装。
44
+
45
+ ## 回执与后续检查
46
+
47
+ InstallReceipt公共头为 `schemaVersion/tool/toolVersion/command/status/diagnostics`。migrate的status使用 planned/installed/unchanged/conflict/recovery-required/recovered/rolled-back等安装状态,不按普通图解pass解释;cancelled只用于真实取消,不能把中断或失败写成取消。冲突/recovery-required为exit3,参数2、I/O4;仍读逐项诊断和实际结果。
48
+
49
+ 重点交接:
50
+
51
+ - `transactionSchemaVersion` 与外层 `schemaVersion` 不同,不能据外层1推断journal仍为v1。
52
+ - `transactionId/journal/recoveryCommand/rollbackCommand` 定位实际事务,`engine`与manifest摘要绑定来源。
53
+ - `removals`逐项含 `path/source/status`,区分planned/removed/preserved/remaining;同时读 `preserved/conflicts/recovered/writes/unchanged`。
54
+ - `legacyBackupPolicy: "none"`、`legacyRestoration: "not-supported"`、`reinstallInstructions`明确旧skill不恢复;`backup`仅涉及Diagram受管写入,不能称为Archify备份。
55
+ - `reloadSteps`要求新建provider会话并核实际加载phoenix-diagram路径。外部/个人旧入口未处理时,不声称全机唯一入口生效。
56
+
57
+ 迁移成功不代表既有图像已重新验收;需要新交付时仍保留主 SKILL 强事实、语言、Still、两次停滞即停止及 mandatory visual,不因更换入口删事实或降低验收。
@@ -0,0 +1,45 @@
1
+ # 显式本地预览
2
+
3
+ 只有用户明确要求本地预览才启动前台服务。普通作图不启动 preview;启动预览也不自动授权打开用户浏览器窗口。只有用户希望打开窗口时才加 `--open`。预览不充当正式交付或实际图像审核。
4
+
5
+ 沿主 SKILL 设置 `PD`,使用事实齐备的现有 candidate,不为预览重新猜测或改写输入。首次阅读仍为 Still,Live 由用户主动选择;不采用旧入口的默认 Live。
6
+
7
+ ## 启动与事件
8
+
9
+ ```sh
10
+ "$PD" preview <type> candidate.json diagram.html --port 0 --json
11
+ # 用户同时明确希望打开窗口时:
12
+ "$PD" preview <type> candidate.json diagram.html --port 0 --open --json
13
+ ```
14
+
15
+ 支持现有十类。可加 `--quality standard|showcase`、`--input-contract legacy-2.17|phoenix-v1`、`--repo-root DIR`、`--brand-cache DIR`;合同适用类型和声明冲突规则沿普通编译。repo-root 须为现有目录,来源是否 verified 仍单独核对。preview 不接受 `--out-dir` 或 `--layout-json`。品牌只消费本地固定资源,服务不隐式联网补品牌。
16
+
17
+ 固定监听127.0.0.1,默认 port=0由系统分配;`--port` 范围0–65535。未加 `--open` 时从 started 读取 URL。stdout 是前台 NDJSON,每行一个事件,不能把多行整体当单个 JSON,也不能在第一条 updated 后把仍运行的进程当已停止。
18
+
19
+ | event | 含义 |
20
+ | --- | --- |
21
+ | `started` | 会话/监听已建立;额外给 `url`、`port`,不表示已有成功图。 |
22
+ | `checking` | 正在检查当前 generation。 |
23
+ | `updated` | 当前结果已正式发布并回读,HTTP artifact与正式文件同字节。 |
24
+ | `failed` | 本次尝试失败;可能继续等待修改,不能把该事件直接当进程已退出。 |
25
+ | `stopped` | 停止结果;核 `shutdownComplete` 与 `exitCode`,不只看事件名。 |
26
+
27
+ 每条事件有公共头 `schemaVersion/tool/toolVersion/command/status/diagnostics`,command 为 preview;另有 `event/sessionId/generation/lastSuccessfulGeneration/lastAttemptStatus/artifact/artifactAvailable/locale/browserStatus/visualReviewStatus`。event 与 status 不同:status可能为 waiting/checking/ready/error/stopped;lastAttemptStatus可能为 not-run/checking/pass/failed/cancelled。failed与stopped事件另给真实 exitCode;shutdownComplete仅 stopped 给出。
28
+
29
+ 首次 generation/lastSuccessfulGeneration为0、artifact=null、artifactAvailable=false。artifact可用时给 `generation/inputSha256/sha256/bytes`;后两个是正式 HTML 的摘要和字节数。browserStatus与visualReviewStatus保持 not-run,不能由updated推出浏览器或看图通过。
30
+
31
+ ## 修改、last-good与冲突
32
+
33
+ 输入按800ms轮询、400ms稳定窗口处理;内容摘要或不可用/删除状态变化产生新 generation,同字节不重复推进。单worker和最新待处理槽保证旧结果不能倒退覆盖新结果。
34
+
35
+ 半写、非法或删除输入时保留最后成功文件。shell在画布外显示最新失败、诊断和仍显示的成功版本;首个成功之前为waiting/error,即使输出路径原本有文件,也不冒称本会话已有成功图。修复后只有最新且仍绑定原输入/资源的结果才发布。
36
+
37
+ 输出被后来替换时停止发布并报告冲突,不能拿内存旧图冒充正式路径的当前文件;不能覆盖外来文件来继续演示成功。需要输出恢复时按 diagnostics 指明的精确事务和现有 recover-output 合同处理,不自行选记录、删除锁或重建恢复材料。
38
+
39
+ 服务仅提供该随机会话路径下 GET/HEAD 的shell、status、artifact;URL直接取started,不猜路径。Host/Origin受检查,无CORS或任意文件服务,响应no-store/no-referrer。正式HTML/导出不混入会话端口、token、输入绝对路径或错误栈;连接断开不等于视觉通过。
40
+
41
+ ## 停止与正式交付
42
+
43
+ 用Ctrl+C或SIGTERM停止前台会话,只结束自己的监听、连接与worker;等停止事件并确认shutdownComplete=true。最后成功正式文件保留。SIGKILL没有正常收尾回执,不能补写stopped或关闭通过;留下的发布事务仍按原恢复入口检查,不杀未知PID。
44
+
45
+ 停止后按普通 finalize、实际查看当前四张截图、review-record 和同一 summary 收口。已有HTML、HTTP可打开或updated都不能代替四门与 mandatory visual。预览期间的编辑不重置同一失败门的历史最佳和停滞计数;达到2后停止继续修 candidate,按主 SKILL 交接未解决项。服务不授权补造事实、删除语义或改语言原则。
@@ -0,0 +1,29 @@
1
+ # 仓库来源创作
2
+
3
+ 图要解释真实仓库时读本文件。源码是职责、调用、边界与持久化的依据;请求的含义全部覆盖、每条断言都有来源支持时,图才算完成。只读用户指定的仓库与切片,不全仓扫描,不 fetch、不改仓库,也不调托管 API。
4
+
5
+ ## 按需阅读
6
+
7
+ 1. **固定身份。** 在目标仓库记录 `git rev-parse HEAD`、`git remote get-url origin` 与 `git status --short`。origin 若含 HTTP(S) 用户名、密码或 token,先去掉再写入 candidate(工具会拒绝带凭据的 URL);保留其传输方式、端口、路径与 `.git` 后缀,不把内部 SSH 地址改写成 HTTPS。把去凭据的 URL 与 40 位提交写进 `meta.repository`。SSH origin、非 GitHub/Gitee/GitLab 托管、只需本地链接或测试用仓库时设 `link_mode: "local-only"`;只有 GitHub、Gitee、gitlab.com 或声明 `provider: "gitlab"` 的自管 GitLab HTTPS 地址能生成网页链接。来源按固定提交的已提交字节核对,不按工作树:工作树有改动时,工具对与固定提交不同的被引文件记 `worktree-differs`,答复中仍须列出这些改动路径。
8
+ 2. **划定切片。** 用项目说明、manifest、入口、注册与部署配置定位相关运行单元,读入口、配置和与请求相关的模块。沿 import 与调用点追到该职责实际的输入、输出或副作用;读一小段相连的切片,不为找方便的标签扫描整个仓库。
9
+ 3. **追踪归属。** 运行与 I/O 关系取自调用点上实际的执行者、操作和目标;部署与信任关系取自对应配置或执行处。区分发起操作的控制者、执行它的运行时和接收字节的存储。文件或数据库边的来源必须指向实际读写者;“负责维护任务”之类的职责描述不能证明直接 I/O。已配置的提供方、注入的适配器、本地 stub 与持久服务是不同断言,只标来源支持的那一个。
10
+ 4. **边读边记来源。** 每个组件和重要关系记下仓库相对路径与闭区间行号。沿实际分支、重试、回退与错误处理走;导出或配置了但正常路径不调用的函数是可选能力,不是必经边。关于权威状态变更或控制归属的断言,要追到实际写入或执行处及其允许条件。
11
+ 5. **写明不确定。** 把未解决的问题写在受影响的断言旁,例如“这里调用了 `writeFile`,持久性未知”。继续读下一段相关源码解决它,或作为明确的未知保留;不把标签、包描述或配置值变成未观察到的服务或行为。
12
+
13
+ 每个请求的职责、关系与边界都有来源支持,剩余未知不会改变这一覆盖时停止阅读。没有节点、边、引用或卡片数量目标。用带原始行号的方式读源码(如 `nl -ba <file> | sed -n '40,90p'`),从显示的行号抄写引用起止行;摘录读到文件末尾时写实际末行。
14
+
15
+ ## 各图型的来源
16
+
17
+ 只有主要元素写 `sources`,每个至多三段:Architecture 组件,Workflow、Dataflow 与 Tree 节点,Sequence 参与者,Lifecycle 状态,ERD 实体,Class 类型,Timeline 事件,Waterfall 跨度。关系、消息、流与转换没有来源:把调用、写入或转换处引在拥有它的元素上(调用方、写入方、离开的状态),其余依据写进 note 或卡片。目录节点引用自己的 README 或入口文件,否则引用定义或运行它的文件。
18
+
19
+ Timeline 事件引用固定提交里记录它的文件(如 changelog 条目),时间取自该历史中的 tag 或提交;只有日期的记录写在该偏移的 12:00 并设 `precision: "day"`。不在该历史中的 tag 或提交不能引用。没有记录 trace 的 Waterfall 用 `meta.evidence: "illustrative"`,时长保持示意标注,不为计时去运行项目。
20
+
21
+ ## 交付与答复
22
+
23
+ ```sh
24
+ "$PD" finalize <type> candidate.json diagram.html --repo-root "<仓库根>" --json
25
+ ```
26
+
27
+ `--repo-root` 必须是该仓库的顶层目录。核对只读:校验 origin 与声明一致、固定提交存在、被引文件与行在该提交中存在,并逐段比较工作树文件(不跟随符号链接)。缺少 `--repo-root`、git 不可用或超时、提交或对象缺失、文件缺失、行越界、工作树不同,或旧版 git 遇到部分克隆时,对应来源记为待核实并附原因;HTML 照常生成,来源状态不改变四门结论和退出码。
28
+
29
+ 读回执 `evidence.status`:`verified` 表示全部来源已核对且每个主要元素都有来源;`partial` 表示部分核对;`unverified` 表示零条核对;`none` 表示没有声明仓库也没有来源。答复中列出待核实元素及原因、未提供来源的元素和工作树改动路径,不把非 `verified` 的图称为已核对。工具只证明“路径与行在固定提交中存在,且作者读到的工作树与之相同”;引用内容是否支持断言,由作者按上文纪律负责。