pactkit 3.0.2__tar.gz → 3.0.4__tar.gz

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.

Potentially problematic release.


This version of pactkit might be problematic. Click here for more details.

Files changed (1887) hide show
  1. pactkit-3.0.4/.github/workflows/pactkit.yml +34 -0
  2. pactkit-3.0.4/.github/workflows/publish.yml +133 -0
  3. pactkit-3.0.4/.github/workflows/release-acceptance.yml +261 -0
  4. pactkit-3.0.4/.github/workflows/runner-heartbeat.yml +48 -0
  5. pactkit-3.0.4/.gitignore +81 -0
  6. pactkit-3.0.4/.secrets.baseline +3020 -0
  7. pactkit-3.0.4/CHANGELOG.md +1301 -0
  8. pactkit-3.0.4/PKG-INFO +705 -0
  9. pactkit-3.0.4/docs/architecture/governance/adapter-registration-step0-2026-09-23.md +156 -0
  10. pactkit-3.0.4/docs/architecture/governance/adapter-residual-audit-2026-09-23.md +252 -0
  11. pactkit-3.0.4/docs/architecture/governance/artifact-lifecycle.md +458 -0
  12. pactkit-3.0.4/docs/architecture/governance/legacy-done-records.md +99 -0
  13. pactkit-3.0.4/docs/architecture/governance/legacy-isolation.md +1131 -0
  14. pactkit-3.0.4/docs/architecture/governance/lessons/LESSON-20260918101234-c06eb97892.md +12 -0
  15. pactkit-3.0.4/docs/architecture/governance/lessons/LESSON-20260921055739-5f89ab5c4b.md +10 -0
  16. pactkit-3.0.4/docs/architecture/governance/philosophy.md +196 -0
  17. pactkit-3.0.4/docs/architecture/governance/rules.md +24 -0
  18. pactkit-3.0.4/docs/architecture/governance/truth-hierarchy.md +551 -0
  19. pactkit-3.0.4/docs/guides/opencode-pretool-channel-evidence.md +174 -0
  20. pactkit-3.0.4/docs/guides/support-matrix.md +177 -0
  21. pactkit-3.0.4/docs/product/planning/STORY-slim-2026092120652367d4c6.md +1055 -0
  22. pactkit-3.0.4/docs/product/sprint_board.md +1385 -0
  23. pactkit-3.0.4/docs/product/stories/BUG-slim-20260922031fccf35af5.yaml +18 -0
  24. pactkit-3.0.4/docs/product/stories/BUG-slim-2026092296f6ab6005f4.yaml +18 -0
  25. pactkit-3.0.4/docs/product/stories/BUG-slim-20260922afbc8ddf5252.yaml +18 -0
  26. pactkit-3.0.4/docs/product/stories/BUG-slim-2026092323db7dc89b51.yaml +20 -0
  27. pactkit-3.0.4/docs/product/stories/BUG-slim-2026092384946b894b94.yaml +21 -0
  28. pactkit-3.0.4/docs/product/stories/BUG-slim-20260923919e4022ec24.yaml +18 -0
  29. pactkit-3.0.4/docs/product/stories/BUG-slim-202609239940ba8bc08b.yaml +23 -0
  30. pactkit-3.0.4/docs/product/stories/BUG-slim-20260923aeb5e4807a2b.yaml +27 -0
  31. pactkit-3.0.4/docs/product/stories/BUG-slim-20260923eb9b2de2033b.yaml +17 -0
  32. pactkit-3.0.4/docs/product/stories/STORY-slim-202609210596e436fafc.yaml +20 -0
  33. pactkit-3.0.4/docs/product/stories/STORY-slim-202609212d6222f99f99.yaml +21 -0
  34. pactkit-3.0.4/docs/product/stories/STORY-slim-202609213d81204e2d45.yaml +24 -0
  35. pactkit-3.0.4/docs/product/stories/STORY-slim-2026092148349386a757.yaml +43 -0
  36. pactkit-3.0.4/docs/product/stories/STORY-slim-202609215cfbe6b6c4a0.yaml +29 -0
  37. pactkit-3.0.4/docs/product/stories/STORY-slim-202609215fcccbd0851a.yaml +26 -0
  38. pactkit-3.0.4/docs/product/stories/STORY-slim-202609216555d0788942.yaml +27 -0
  39. pactkit-3.0.4/docs/product/stories/STORY-slim-2026092167351bbe8c16.yaml +33 -0
  40. pactkit-3.0.4/docs/product/stories/STORY-slim-202609217251f027db09.yaml +28 -0
  41. pactkit-3.0.4/docs/product/stories/STORY-slim-202609217d99ffad0d99.yaml +35 -0
  42. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921a562f2ea66c4.yaml +30 -0
  43. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921b2cfd6574674.yaml +26 -0
  44. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921ce43695e5306.yaml +25 -0
  45. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921e7716b1f465a.yaml +38 -0
  46. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921e8c4a1f7b9d2.yaml +26 -0
  47. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921ede7d5c2135f.yaml +39 -0
  48. pactkit-3.0.4/docs/product/stories/STORY-slim-20260921f19a0c4d7b3e.yaml +39 -0
  49. pactkit-3.0.4/docs/product/stories/STORY-slim-20260922a3f81c72e940.yaml +42 -0
  50. pactkit-3.0.4/docs/product/stories/STORY-slim-20260922b7d40e19c58f.yaml +29 -0
  51. pactkit-3.0.4/docs/product/stories/STORY-slim-20260922dffb2377b769.yaml +29 -0
  52. pactkit-3.0.4/docs/product/stories/STORY-slim-20260923956d0d036a12.yaml +53 -0
  53. pactkit-3.0.4/docs/product/stories/STORY-slim-20260923e89f3d0b32ab.yaml +29 -0
  54. pactkit-3.0.4/docs/specs/BUG-001.md +72 -0
  55. pactkit-3.0.4/docs/specs/BUG-003.md +33 -0
  56. pactkit-3.0.4/docs/specs/BUG-004.md +32 -0
  57. pactkit-3.0.4/docs/specs/BUG-005.md +40 -0
  58. pactkit-3.0.4/docs/specs/BUG-006.md +38 -0
  59. pactkit-3.0.4/docs/specs/BUG-007.md +54 -0
  60. pactkit-3.0.4/docs/specs/BUG-008.md +70 -0
  61. pactkit-3.0.4/docs/specs/BUG-009.md +76 -0
  62. pactkit-3.0.4/docs/specs/BUG-010.md +65 -0
  63. pactkit-3.0.4/docs/specs/BUG-011.md +62 -0
  64. pactkit-3.0.4/docs/specs/BUG-012.md +68 -0
  65. pactkit-3.0.4/docs/specs/BUG-013.md +82 -0
  66. pactkit-3.0.4/docs/specs/BUG-014.md +123 -0
  67. pactkit-3.0.4/docs/specs/BUG-015.md +58 -0
  68. pactkit-3.0.4/docs/specs/BUG-016.md +71 -0
  69. pactkit-3.0.4/docs/specs/BUG-018.md +103 -0
  70. pactkit-3.0.4/docs/specs/BUG-019.md +97 -0
  71. pactkit-3.0.4/docs/specs/BUG-020.md +74 -0
  72. pactkit-3.0.4/docs/specs/BUG-021.md +115 -0
  73. pactkit-3.0.4/docs/specs/BUG-022.md +104 -0
  74. pactkit-3.0.4/docs/specs/BUG-023.md +89 -0
  75. pactkit-3.0.4/docs/specs/BUG-028.md +95 -0
  76. pactkit-3.0.4/docs/specs/BUG-031.md +56 -0
  77. pactkit-3.0.4/docs/specs/BUG-032.md +64 -0
  78. pactkit-3.0.4/docs/specs/BUG-slim-107.md +17 -0
  79. pactkit-3.0.4/docs/specs/BUG-slim-20260922031fccf35af5.md +341 -0
  80. pactkit-3.0.4/docs/specs/BUG-slim-2026092296f6ab6005f4.md +453 -0
  81. pactkit-3.0.4/docs/specs/BUG-slim-20260922afbc8ddf5252.md +423 -0
  82. pactkit-3.0.4/docs/specs/BUG-slim-2026092323db7dc89b51.md +145 -0
  83. pactkit-3.0.4/docs/specs/BUG-slim-20260923557c805d9a7a.md +127 -0
  84. pactkit-3.0.4/docs/specs/BUG-slim-2026092384946b894b94.md +375 -0
  85. pactkit-3.0.4/docs/specs/BUG-slim-20260923919e4022ec24.md +249 -0
  86. pactkit-3.0.4/docs/specs/BUG-slim-202609239940ba8bc08b.md +171 -0
  87. pactkit-3.0.4/docs/specs/BUG-slim-20260923aeb5e4807a2b.md +341 -0
  88. pactkit-3.0.4/docs/specs/BUG-slim-20260923eb9b2de2033b.md +567 -0
  89. pactkit-3.0.4/docs/specs/HOTFIX-slim-067.md +17 -0
  90. pactkit-3.0.4/docs/specs/HOTFIX-slim-087.md +15 -0
  91. pactkit-3.0.4/docs/specs/HOTFIX-slim-099.md +19 -0
  92. pactkit-3.0.4/docs/specs/HOTFIX-slim-107.md +24 -0
  93. pactkit-3.0.4/docs/specs/HOTFIX-slim-126.md +22 -0
  94. pactkit-3.0.4/docs/specs/HOTFIX-slim-130.md +104 -0
  95. pactkit-3.0.4/docs/specs/HOTFIX-slim-202609166a956c024963.md +90 -0
  96. pactkit-3.0.4/docs/specs/HOTFIX-slim-2026091673a4d1c8c33b.md +115 -0
  97. pactkit-3.0.4/docs/specs/HOTFIX-slim-20260916991f0b0d0a2e.md +115 -0
  98. pactkit-3.0.4/docs/specs/HOTFIX-slim-2026091699cba1b49506.md +96 -0
  99. pactkit-3.0.4/docs/specs/HOTFIX-slim-20260916c4f2a9e6b013.md +107 -0
  100. pactkit-3.0.4/docs/specs/HOTFIX-slim-202609200d44cb016534.md +60 -0
  101. pactkit-3.0.4/docs/specs/STORY-001.md +150 -0
  102. pactkit-3.0.4/docs/specs/STORY-002.md +135 -0
  103. pactkit-3.0.4/docs/specs/STORY-003.md +101 -0
  104. pactkit-3.0.4/docs/specs/STORY-004.md +90 -0
  105. pactkit-3.0.4/docs/specs/STORY-005.md +192 -0
  106. pactkit-3.0.4/docs/specs/STORY-006.md +141 -0
  107. pactkit-3.0.4/docs/specs/STORY-007.md +89 -0
  108. pactkit-3.0.4/docs/specs/STORY-008.md +98 -0
  109. pactkit-3.0.4/docs/specs/STORY-009.md +88 -0
  110. pactkit-3.0.4/docs/specs/STORY-010.md +86 -0
  111. pactkit-3.0.4/docs/specs/STORY-011.md +149 -0
  112. pactkit-3.0.4/docs/specs/STORY-012.md +87 -0
  113. pactkit-3.0.4/docs/specs/STORY-013.md +112 -0
  114. pactkit-3.0.4/docs/specs/STORY-014.md +56 -0
  115. pactkit-3.0.4/docs/specs/STORY-015.md +68 -0
  116. pactkit-3.0.4/docs/specs/STORY-016.md +60 -0
  117. pactkit-3.0.4/docs/specs/STORY-019.md +64 -0
  118. pactkit-3.0.4/docs/specs/STORY-020.md +69 -0
  119. pactkit-3.0.4/docs/specs/STORY-021.md +72 -0
  120. pactkit-3.0.4/docs/specs/STORY-022.md +64 -0
  121. pactkit-3.0.4/docs/specs/STORY-023.md +68 -0
  122. pactkit-3.0.4/docs/specs/STORY-024.md +127 -0
  123. pactkit-3.0.4/docs/specs/STORY-025.md +104 -0
  124. pactkit-3.0.4/docs/specs/STORY-026.md +122 -0
  125. pactkit-3.0.4/docs/specs/STORY-027.md +131 -0
  126. pactkit-3.0.4/docs/specs/STORY-028.md +132 -0
  127. pactkit-3.0.4/docs/specs/STORY-029.md +134 -0
  128. pactkit-3.0.4/docs/specs/STORY-030.md +149 -0
  129. pactkit-3.0.4/docs/specs/STORY-031.md +48 -0
  130. pactkit-3.0.4/docs/specs/STORY-032.md +56 -0
  131. pactkit-3.0.4/docs/specs/STORY-033.md +65 -0
  132. pactkit-3.0.4/docs/specs/STORY-034.md +60 -0
  133. pactkit-3.0.4/docs/specs/STORY-035.md +55 -0
  134. pactkit-3.0.4/docs/specs/STORY-036.md +73 -0
  135. pactkit-3.0.4/docs/specs/STORY-037.md +73 -0
  136. pactkit-3.0.4/docs/specs/STORY-038.md +73 -0
  137. pactkit-3.0.4/docs/specs/STORY-040.md +145 -0
  138. pactkit-3.0.4/docs/specs/STORY-061.md +78 -0
  139. pactkit-3.0.4/docs/specs/STORY-062.md +105 -0
  140. pactkit-3.0.4/docs/specs/STORY-slim-20260916b5beb25459bd.md +41 -0
  141. pactkit-3.0.4/docs/specs/STORY-slim-20260917cb17ae9bbc87.md +83 -0
  142. pactkit-3.0.4/docs/specs/STORY-slim-202609210596e436fafc.md +333 -0
  143. pactkit-3.0.4/docs/specs/STORY-slim-202609212d6222f99f99.md +311 -0
  144. pactkit-3.0.4/docs/specs/STORY-slim-202609213d81204e2d45.md +296 -0
  145. pactkit-3.0.4/docs/specs/STORY-slim-2026092148349386a757.md +472 -0
  146. pactkit-3.0.4/docs/specs/STORY-slim-202609215cfbe6b6c4a0.md +858 -0
  147. pactkit-3.0.4/docs/specs/STORY-slim-202609215fcccbd0851a.md +617 -0
  148. pactkit-3.0.4/docs/specs/STORY-slim-202609216555d0788942.md +450 -0
  149. pactkit-3.0.4/docs/specs/STORY-slim-2026092167351bbe8c16.md +450 -0
  150. pactkit-3.0.4/docs/specs/STORY-slim-202609217251f027db09.md +256 -0
  151. pactkit-3.0.4/docs/specs/STORY-slim-202609217d99ffad0d99.md +822 -0
  152. pactkit-3.0.4/docs/specs/STORY-slim-20260921a562f2ea66c4.md +750 -0
  153. pactkit-3.0.4/docs/specs/STORY-slim-20260921b2cfd6574674.md +518 -0
  154. pactkit-3.0.4/docs/specs/STORY-slim-20260921ce43695e5306.md +354 -0
  155. pactkit-3.0.4/docs/specs/STORY-slim-20260921e7716b1f465a.md +700 -0
  156. pactkit-3.0.4/docs/specs/STORY-slim-20260921e8c4a1f7b9d2.md +371 -0
  157. pactkit-3.0.4/docs/specs/STORY-slim-20260921ede7d5c2135f.md +1565 -0
  158. pactkit-3.0.4/docs/specs/STORY-slim-20260921f19a0c4d7b3e.md +746 -0
  159. pactkit-3.0.4/docs/specs/STORY-slim-20260921reconcilengine.md +1210 -0
  160. pactkit-3.0.4/docs/specs/STORY-slim-20260922a3f81c72e940.md +419 -0
  161. pactkit-3.0.4/docs/specs/STORY-slim-20260922b7d40e19c58f.md +359 -0
  162. pactkit-3.0.4/docs/specs/STORY-slim-20260922dffb2377b769.md +289 -0
  163. pactkit-3.0.4/docs/specs/STORY-slim-20260923956d0d036a12.md +2222 -0
  164. pactkit-3.0.4/docs/specs/STORY-slim-20260923e89f3d0b32ab.md +593 -0
  165. pactkit-3.0.4/docs/test_cases/STORY-slim-202609210596e436fafc_case.md +299 -0
  166. pactkit-3.0.4/docs/test_cases/STORY-slim-202609212d6222f99f99_case.md +123 -0
  167. pactkit-3.0.4/docs/test_cases/STORY-slim-202609213d81204e2d45_case.md +129 -0
  168. pactkit-3.0.4/docs/test_cases/STORY-slim-2026092148349386a757_case.md +446 -0
  169. pactkit-3.0.4/docs/test_cases/STORY-slim-202609215cfbe6b6c4a0_case.md +509 -0
  170. pactkit-3.0.4/docs/test_cases/STORY-slim-202609215fcccbd0851a_case.md +266 -0
  171. pactkit-3.0.4/docs/test_cases/STORY-slim-202609216555d0788942_case.md +345 -0
  172. pactkit-3.0.4/docs/test_cases/STORY-slim-2026092167351bbe8c16_case.md +160 -0
  173. pactkit-3.0.4/docs/test_cases/STORY-slim-202609217251f027db09_case.md +136 -0
  174. pactkit-3.0.4/docs/test_cases/STORY-slim-202609217d99ffad0d99_case.md +185 -0
  175. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921a562f2ea66c4_case.md +436 -0
  176. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921b2cfd6574674_case.md +315 -0
  177. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921ce43695e5306_case.md +492 -0
  178. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921e7716b1f465a_case.md +386 -0
  179. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921e8c4a1f7b9d2_case.md +352 -0
  180. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921ede7d5c2135f_case.md +469 -0
  181. pactkit-3.0.4/docs/test_cases/STORY-slim-20260921f19a0c4d7b3e_case.md +412 -0
  182. pactkit-3.0.4/docs/test_cases/STORY-slim-20260922a3f81c72e940_case.md +413 -0
  183. pactkit-3.0.4/docs/test_cases/STORY-slim-20260922b7d40e19c58f_case.md +425 -0
  184. pactkit-3.0.4/docs/test_cases/STORY-slim-20260922dffb2377b769_case.md +221 -0
  185. pactkit-3.0.4/pactkit-v4.md +2918 -0
  186. pactkit-3.0.4/pactkit.yaml +69 -0
  187. pactkit-3.0.4/pyproject.toml +135 -0
  188. pactkit-3.0.4/scripts/provision-self-hosted-runner.sh +211 -0
  189. pactkit-3.0.4/scripts/runner-watchdog.sh +114 -0
  190. pactkit-3.0.4/src/pactkit/__init__.py +3 -0
  191. pactkit-3.0.4/src/pactkit/audit.py +1528 -0
  192. pactkit-3.0.4/src/pactkit/capability.py +664 -0
  193. pactkit-3.0.4/src/pactkit/ci_commands.py +195 -0
  194. pactkit-3.0.4/src/pactkit/cli.py +2949 -0
  195. pactkit-3.0.4/src/pactkit/commit_gate.py +2790 -0
  196. pactkit-3.0.4/src/pactkit/config.py +2077 -0
  197. pactkit-3.0.4/src/pactkit/context_gen.py +471 -0
  198. pactkit-3.0.4/src/pactkit/delivery_evidence.py +113 -0
  199. pactkit-3.0.4/src/pactkit/deploy_manifest.py +908 -0
  200. pactkit-3.0.4/src/pactkit/doctor.py +1703 -0
  201. pactkit-3.0.4/src/pactkit/done_verify.py +466 -0
  202. pactkit-3.0.4/src/pactkit/evidence_measure.py +641 -0
  203. pactkit-3.0.4/src/pactkit/garden.py +442 -0
  204. pactkit-3.0.4/src/pactkit/gate_matrix.py +495 -0
  205. pactkit-3.0.4/src/pactkit/generated_marker.py +130 -0
  206. pactkit-3.0.4/src/pactkit/generators/__init__.py +34 -0
  207. pactkit-3.0.4/src/pactkit/generators/deploy_base.py +520 -0
  208. pactkit-3.0.4/src/pactkit/generators/deployer.py +1946 -0
  209. pactkit-3.0.4/src/pactkit/generators/spi.py +423 -0
  210. pactkit-3.0.4/src/pactkit/governance.py +740 -0
  211. pactkit-3.0.4/src/pactkit/graph_query.py +361 -0
  212. pactkit-3.0.4/src/pactkit/host_payloads.py +238 -0
  213. pactkit-3.0.4/src/pactkit/ir.py +1216 -0
  214. pactkit-3.0.4/src/pactkit/lint_runner.py +97 -0
  215. pactkit-3.0.4/src/pactkit/profiles.py +1681 -0
  216. pactkit-3.0.4/src/pactkit/project_bootstrap.py +159 -0
  217. pactkit-3.0.4/src/pactkit/prompts/commands.py +906 -0
  218. pactkit-3.0.4/src/pactkit/prompts/rules.py +1650 -0
  219. pactkit-3.0.4/src/pactkit/prompts/skills.py +878 -0
  220. pactkit-3.0.4/src/pactkit/prompts/workflows.py +948 -0
  221. pactkit-3.0.4/src/pactkit/regression.py +979 -0
  222. pactkit-3.0.4/src/pactkit/schemas.py +287 -0
  223. pactkit-3.0.4/src/pactkit/skills/analyzers/__init__.py +357 -0
  224. pactkit-3.0.4/src/pactkit/skills/analyzers/go_analyzer.py +322 -0
  225. pactkit-3.0.4/src/pactkit/skills/analyzers/java_analyzer.py +227 -0
  226. pactkit-3.0.4/src/pactkit/skills/analyzers/python_analyzer.py +307 -0
  227. pactkit-3.0.4/src/pactkit/skills/analyzers/ts_analyzer.py +339 -0
  228. pactkit-3.0.4/src/pactkit/skills/board.py +277 -0
  229. pactkit-3.0.4/src/pactkit/skills/report.py +1040 -0
  230. pactkit-3.0.4/src/pactkit/skills/scaffold.py +596 -0
  231. pactkit-3.0.4/src/pactkit/skills/spec_linter.py +905 -0
  232. pactkit-3.0.4/src/pactkit/skills/visualize.py +2634 -0
  233. pactkit-3.0.4/src/pactkit/spec_preflight.py +348 -0
  234. pactkit-3.0.4/src/pactkit/spec_status.py +84 -0
  235. pactkit-3.0.4/src/pactkit/tamper_guard.py +770 -0
  236. pactkit-3.0.4/src/pactkit/test_mapper.py +103 -0
  237. pactkit-3.0.4/src/pactkit/validators.py +211 -0
  238. pactkit-3.0.4/src/pactkit/workflow_engine.py +59 -0
  239. pactkit-3.0.4/src/pactkit/workflow_validators.py +415 -0
  240. pactkit-3.0.4/tests/conformance/__init__.py +7 -0
  241. pactkit-3.0.4/tests/conformance/contracts.py +997 -0
  242. pactkit-3.0.4/tests/conformance/harness.py +395 -0
  243. pactkit-3.0.4/tests/conformance/test_conformance.py +901 -0
  244. pactkit-3.0.4/tests/conftest.py +304 -0
  245. pactkit-3.0.4/tests/e2e/acceptance/test_verification_acceptance.py +547 -0
  246. pactkit-3.0.4/tests/e2e/cli/test_cli_e2e.py +579 -0
  247. pactkit-3.0.4/tests/e2e/cli/test_story_slim149_query_cli.py +137 -0
  248. pactkit-3.0.4/tests/e2e/test_local_git_full_flow_e2e.py +141 -0
  249. pactkit-3.0.4/tests/fixtures/cli_help_golden/query.txt +16 -0
  250. pactkit-3.0.4/tests/fixtures/cli_help_golden/regression.txt +36 -0
  251. pactkit-3.0.4/tests/fixtures/config_golden/copy_claude.json +188 -0
  252. pactkit-3.0.4/tests/fixtures/config_golden/copy_codex.json +182 -0
  253. pactkit-3.0.4/tests/fixtures/config_golden/copy_github.json +183 -0
  254. pactkit-3.0.4/tests/fixtures/config_golden/empty.json +182 -0
  255. pactkit-3.0.4/tests/fixtures/config_golden/full_legacy.json +182 -0
  256. pactkit-3.0.4/tests/fixtures/config_golden/minimal.json +182 -0
  257. pactkit-3.0.4/tests/fixtures/config_golden/unknown_keys.json +185 -0
  258. pactkit-3.0.4/tests/fixtures/gitlab_ci_python.golden.yml +20 -0
  259. pactkit-3.0.4/tests/fixtures/host_artifact_paths.json +816 -0
  260. pactkit-3.0.4/tests/fixtures/host_dispatch_baseline.json +17 -0
  261. pactkit-3.0.4/tests/fixtures/host_dispatch_classification.json +75 -0
  262. pactkit-3.0.4/tests/fixtures/host_prompt_snapshots/classic.json +177 -0
  263. pactkit-3.0.4/tests/fixtures/host_prompt_snapshots/codex.json +149 -0
  264. pactkit-3.0.4/tests/fixtures/host_prompt_snapshots/opencode.json +173 -0
  265. pactkit-3.0.4/tests/scripts/adapter_import_firewall.py +205 -0
  266. pactkit-3.0.4/tests/scripts/environment_capabilities.py +104 -0
  267. pactkit-3.0.4/tests/scripts/gen_host_dispatch_classification.py +216 -0
  268. pactkit-3.0.4/tests/scripts/host_artifact_snapshot.py +517 -0
  269. pactkit-3.0.4/tests/scripts/host_dispatch_ratchet.py +418 -0
  270. pactkit-3.0.4/tests/unit/_spec_changes.py +161 -0
  271. pactkit-3.0.4/tests/unit/test_ac4_ownership_evidence.py +463 -0
  272. pactkit-3.0.4/tests/unit/test_analyzer_outcome.py +191 -0
  273. pactkit-3.0.4/tests/unit/test_blast_radius_absence.py +221 -0
  274. pactkit-3.0.4/tests/unit/test_bug006_scan_excludes.py +199 -0
  275. pactkit-3.0.4/tests/unit/test_bug_slim202609239940ba8bc08b_test_file_classifier.py +165 -0
  276. pactkit-3.0.4/tests/unit/test_bug_slim20260923aeb5e4807a2b_dialect.py +259 -0
  277. pactkit-3.0.4/tests/unit/test_capability_predicates.py +181 -0
  278. pactkit-3.0.4/tests/unit/test_ci_checkout_options.py +196 -0
  279. pactkit-3.0.4/tests/unit/test_ci_matrix_layering.py +417 -0
  280. pactkit-3.0.4/tests/unit/test_ci_runner_temp.py +72 -0
  281. pactkit-3.0.4/tests/unit/test_classic_deploy_paths.py +50 -0
  282. pactkit-3.0.4/tests/unit/test_cli_help_surface.py +156 -0
  283. pactkit-3.0.4/tests/unit/test_codex_hook_channel.py +381 -0
  284. pactkit-3.0.4/tests/unit/test_codex_hook_migration.py +174 -0
  285. pactkit-3.0.4/tests/unit/test_commit_gate.py +547 -0
  286. pactkit-3.0.4/tests/unit/test_config.py +348 -0
  287. pactkit-3.0.4/tests/unit/test_contract_conflict_fixes.py +416 -0
  288. pactkit-3.0.4/tests/unit/test_deploy_base.py +155 -0
  289. pactkit-3.0.4/tests/unit/test_deployer_cleanup.py +299 -0
  290. pactkit-3.0.4/tests/unit/test_done_verify.py +339 -0
  291. pactkit-3.0.4/tests/unit/test_enterprise_flags.py +174 -0
  292. pactkit-3.0.4/tests/unit/test_gate_matrix.py +384 -0
  293. pactkit-3.0.4/tests/unit/test_gate_reuse_dedup.py +324 -0
  294. pactkit-3.0.4/tests/unit/test_hook_expansion.py +422 -0
  295. pactkit-3.0.4/tests/unit/test_hotfix_slim2026091645aa03e71927_cli_venv_fixes.py +104 -0
  296. pactkit-3.0.4/tests/unit/test_hotfix_slim2026091673a4d1c8c33b_gate_bypass.py +421 -0
  297. pactkit-3.0.4/tests/unit/test_mcp_retired.py +203 -0
  298. pactkit-3.0.4/tests/unit/test_mmd_retirement.py +244 -0
  299. pactkit-3.0.4/tests/unit/test_overlay_contract.py +207 -0
  300. pactkit-3.0.4/tests/unit/test_profiles.py +315 -0
  301. pactkit-3.0.4/tests/unit/test_scan_owned_paths.py +452 -0
  302. pactkit-3.0.4/tests/unit/test_schemas.py +263 -0
  303. pactkit-3.0.4/tests/unit/test_skill_structure.py +232 -0
  304. pactkit-3.0.4/tests/unit/test_spec40_07_command_form.py +431 -0
  305. pactkit-3.0.4/tests/unit/test_spec40_08_classic_predicate.py +240 -0
  306. pactkit-3.0.4/tests/unit/test_spec40_09_command_layout.py +326 -0
  307. pactkit-3.0.4/tests/unit/test_spec40_21_adapter_registration.py +510 -0
  308. pactkit-3.0.4/tests/unit/test_spec40_22_adapter_self_sufficiency.py +151 -0
  309. pactkit-3.0.4/tests/unit/test_spec40_22_capability_registry.py +590 -0
  310. pactkit-3.0.4/tests/unit/test_spec40_22_doctor_registry.py +387 -0
  311. pactkit-3.0.4/tests/unit/test_spec40_22_path_derivation.py +232 -0
  312. pactkit-3.0.4/tests/unit/test_spec40_22_security_declaration.py +631 -0
  313. pactkit-3.0.4/tests/unit/test_spec40_22_security_lifecycle.py +414 -0
  314. pactkit-3.0.4/tests/unit/test_spec_changes_dispatch.py +200 -0
  315. pactkit-3.0.4/tests/unit/test_story025_ci_pipeline.py +350 -0
  316. pactkit-3.0.4/tests/unit/test_story028_rule_scoping.py +130 -0
  317. pactkit-3.0.4/tests/unit/test_story029_doctor.py +49 -0
  318. pactkit-3.0.4/tests/unit/test_story059_codex_removal.py +82 -0
  319. pactkit-3.0.4/tests/unit/test_story106_lateral_scan.py +241 -0
  320. pactkit-3.0.4/tests/unit/test_story_pdca_semantics_v2.py +231 -0
  321. pactkit-3.0.4/tests/unit/test_story_slim012_ci.py +521 -0
  322. pactkit-3.0.4/tests/unit/test_story_slim014_context.py +232 -0
  323. pactkit-3.0.4/tests/unit/test_story_slim028.py +430 -0
  324. pactkit-3.0.4/tests/unit/test_story_slim030.py +313 -0
  325. pactkit-3.0.4/tests/unit/test_story_slim054.py +205 -0
  326. pactkit-3.0.4/tests/unit/test_story_slim102_version_marker.py +150 -0
  327. pactkit-3.0.4/tests/unit/test_story_slim127_managed_block.py +287 -0
  328. pactkit-3.0.4/tests/unit/test_story_slim142_all_target_isolation.py +271 -0
  329. pactkit-3.0.4/tests/unit/test_story_slim149.py +350 -0
  330. pactkit-3.0.4/tests/unit/test_story_slim20260915ac3e5c24fdd3_governance.py +324 -0
  331. pactkit-3.0.4/tests/unit/test_story_slim20260918dda35a04d01d_opencode_pretool.py +537 -0
  332. pactkit-3.0.4/tests/unit/test_story_slim20260919752e74b3f591_host_translate.py +467 -0
  333. pactkit-3.0.4/tests/unit/test_story_slim20260920826d30afae88_evidence_wiring.py +654 -0
  334. pactkit-3.0.4/tests/unit/test_story_slim202609210596e436fafc_legacy_isolation.py +457 -0
  335. pactkit-3.0.4/tests/unit/test_story_slim202609212d6222f99f99_spi_firewall.py +559 -0
  336. pactkit-3.0.4/tests/unit/test_story_slim202609213d81204e2d45_capability.py +601 -0
  337. pactkit-3.0.4/tests/unit/test_story_slim2026092167351bbe8c16_evidence_provenance.py +549 -0
  338. pactkit-3.0.4/tests/unit/test_story_slim202609217251f027db09_evidence_lifecycle.py +398 -0
  339. pactkit-3.0.4/tests/unit/test_story_slim20260921a562f2ea66c4_canonical_ir.py +959 -0
  340. pactkit-3.0.4/tests/unit/test_story_slim20260921ce43695e5306_lifecycle.py +639 -0
  341. pactkit-3.0.4/tests/unit/test_story_slim20260921e7716b1f465a_canonical_config.py +918 -0
  342. pactkit-3.0.4/tests/unit/test_story_slim20260921ede7d5c2135f_batch4_classification.py +500 -0
  343. pactkit-3.0.4/tests/unit/test_story_slim20260921ede7d5c2135f_batch4_core.py +484 -0
  344. pactkit-3.0.4/tests/unit/test_story_slim20260921ede7d5c2135f_batch4_hooks.py +575 -0
  345. pactkit-3.0.4/tests/unit/test_story_slim20260921f19a0c4d7b3e_packaging_ruling.py +143 -0
  346. pactkit-3.0.4/tests/unit/test_story_slim20260921reconcilengine_reconcile.py +437 -0
  347. pactkit-3.0.4/tests/unit/test_story_transition_contract.py +674 -0
  348. pactkit-3.0.4/tests/unit/test_support_matrix.py +115 -0
  349. pactkit-3.0.4/tests/unit/test_target_resolution.py +238 -0
  350. pactkit-3.0.4/tests/unit/test_verification_decision.py +254 -0
  351. pactkit-3.0.4/tests/unit/test_verification_scope_records.py +299 -0
  352. pactkit-3.0.4/tests/unit/test_visualize_chain_fix.py +219 -0
  353. pactkit-3.0.2/.github/workflows/pactkit.yml +0 -31
  354. pactkit-3.0.2/.github/workflows/publish.yml +0 -117
  355. pactkit-3.0.2/.github/workflows/release-acceptance.yml +0 -240
  356. pactkit-3.0.2/.gitignore +0 -84
  357. pactkit-3.0.2/.secrets.baseline +0 -1929
  358. pactkit-3.0.2/CHANGELOG.md +0 -1212
  359. pactkit-3.0.2/PKG-INFO +0 -705
  360. pactkit-3.0.2/docs/architecture/governance/legacy-done-records.md +0 -77
  361. pactkit-3.0.2/docs/architecture/governance/lessons/LESSON-20260918101234-c06eb97892.md +0 -10
  362. pactkit-3.0.2/docs/architecture/governance/philosophy.md +0 -194
  363. pactkit-3.0.2/docs/architecture/governance/rules.md +0 -24
  364. pactkit-3.0.2/docs/guides/opencode-pretool-channel-evidence.md +0 -168
  365. pactkit-3.0.2/docs/guides/support-matrix.md +0 -176
  366. pactkit-3.0.2/docs/product/sprint_board.md +0 -958
  367. pactkit-3.0.2/docs/specs/BUG-001.md +0 -72
  368. pactkit-3.0.2/docs/specs/BUG-003.md +0 -28
  369. pactkit-3.0.2/docs/specs/BUG-004.md +0 -27
  370. pactkit-3.0.2/docs/specs/BUG-005.md +0 -35
  371. pactkit-3.0.2/docs/specs/BUG-006.md +0 -33
  372. pactkit-3.0.2/docs/specs/BUG-007.md +0 -49
  373. pactkit-3.0.2/docs/specs/BUG-008.md +0 -66
  374. pactkit-3.0.2/docs/specs/BUG-009.md +0 -76
  375. pactkit-3.0.2/docs/specs/BUG-010.md +0 -65
  376. pactkit-3.0.2/docs/specs/BUG-011.md +0 -58
  377. pactkit-3.0.2/docs/specs/BUG-012.md +0 -64
  378. pactkit-3.0.2/docs/specs/BUG-013.md +0 -78
  379. pactkit-3.0.2/docs/specs/BUG-014.md +0 -119
  380. pactkit-3.0.2/docs/specs/BUG-015.md +0 -54
  381. pactkit-3.0.2/docs/specs/BUG-016.md +0 -67
  382. pactkit-3.0.2/docs/specs/BUG-018.md +0 -103
  383. pactkit-3.0.2/docs/specs/BUG-019.md +0 -97
  384. pactkit-3.0.2/docs/specs/BUG-020.md +0 -74
  385. pactkit-3.0.2/docs/specs/BUG-021.md +0 -115
  386. pactkit-3.0.2/docs/specs/BUG-022.md +0 -104
  387. pactkit-3.0.2/docs/specs/BUG-023.md +0 -89
  388. pactkit-3.0.2/docs/specs/BUG-028.md +0 -95
  389. pactkit-3.0.2/docs/specs/BUG-031.md +0 -56
  390. pactkit-3.0.2/docs/specs/BUG-032.md +0 -64
  391. pactkit-3.0.2/docs/specs/BUG-slim-107.md +0 -12
  392. pactkit-3.0.2/docs/specs/HOTFIX-slim-067.md +0 -14
  393. pactkit-3.0.2/docs/specs/HOTFIX-slim-087.md +0 -10
  394. pactkit-3.0.2/docs/specs/HOTFIX-slim-099.md +0 -14
  395. pactkit-3.0.2/docs/specs/HOTFIX-slim-107.md +0 -19
  396. pactkit-3.0.2/docs/specs/HOTFIX-slim-126.md +0 -17
  397. pactkit-3.0.2/docs/specs/HOTFIX-slim-130.md +0 -104
  398. pactkit-3.0.2/docs/specs/HOTFIX-slim-202609166a956c024963.md +0 -85
  399. pactkit-3.0.2/docs/specs/HOTFIX-slim-2026091673a4d1c8c33b.md +0 -110
  400. pactkit-3.0.2/docs/specs/HOTFIX-slim-20260916991f0b0d0a2e.md +0 -110
  401. pactkit-3.0.2/docs/specs/HOTFIX-slim-2026091699cba1b49506.md +0 -91
  402. pactkit-3.0.2/docs/specs/HOTFIX-slim-20260916c4f2a9e6b013.md +0 -102
  403. pactkit-3.0.2/docs/specs/HOTFIX-slim-202609200d44cb016534.md +0 -55
  404. pactkit-3.0.2/docs/specs/STORY-001.md +0 -147
  405. pactkit-3.0.2/docs/specs/STORY-002.md +0 -132
  406. pactkit-3.0.2/docs/specs/STORY-003.md +0 -98
  407. pactkit-3.0.2/docs/specs/STORY-004.md +0 -87
  408. pactkit-3.0.2/docs/specs/STORY-005.md +0 -189
  409. pactkit-3.0.2/docs/specs/STORY-006.md +0 -137
  410. pactkit-3.0.2/docs/specs/STORY-007.md +0 -85
  411. pactkit-3.0.2/docs/specs/STORY-008.md +0 -94
  412. pactkit-3.0.2/docs/specs/STORY-009.md +0 -84
  413. pactkit-3.0.2/docs/specs/STORY-010.md +0 -82
  414. pactkit-3.0.2/docs/specs/STORY-011.md +0 -146
  415. pactkit-3.0.2/docs/specs/STORY-012.md +0 -84
  416. pactkit-3.0.2/docs/specs/STORY-013.md +0 -112
  417. pactkit-3.0.2/docs/specs/STORY-014.md +0 -51
  418. pactkit-3.0.2/docs/specs/STORY-015.md +0 -63
  419. pactkit-3.0.2/docs/specs/STORY-016.md +0 -55
  420. pactkit-3.0.2/docs/specs/STORY-019.md +0 -64
  421. pactkit-3.0.2/docs/specs/STORY-020.md +0 -69
  422. pactkit-3.0.2/docs/specs/STORY-021.md +0 -72
  423. pactkit-3.0.2/docs/specs/STORY-022.md +0 -64
  424. pactkit-3.0.2/docs/specs/STORY-023.md +0 -68
  425. pactkit-3.0.2/docs/specs/STORY-024.md +0 -127
  426. pactkit-3.0.2/docs/specs/STORY-025.md +0 -104
  427. pactkit-3.0.2/docs/specs/STORY-026.md +0 -122
  428. pactkit-3.0.2/docs/specs/STORY-027.md +0 -131
  429. pactkit-3.0.2/docs/specs/STORY-028.md +0 -132
  430. pactkit-3.0.2/docs/specs/STORY-029.md +0 -134
  431. pactkit-3.0.2/docs/specs/STORY-030.md +0 -149
  432. pactkit-3.0.2/docs/specs/STORY-031.md +0 -43
  433. pactkit-3.0.2/docs/specs/STORY-032.md +0 -51
  434. pactkit-3.0.2/docs/specs/STORY-033.md +0 -65
  435. pactkit-3.0.2/docs/specs/STORY-034.md +0 -60
  436. pactkit-3.0.2/docs/specs/STORY-035.md +0 -55
  437. pactkit-3.0.2/docs/specs/STORY-036.md +0 -69
  438. pactkit-3.0.2/docs/specs/STORY-037.md +0 -69
  439. pactkit-3.0.2/docs/specs/STORY-038.md +0 -69
  440. pactkit-3.0.2/docs/specs/STORY-040.md +0 -142
  441. pactkit-3.0.2/docs/specs/STORY-061.md +0 -78
  442. pactkit-3.0.2/docs/specs/STORY-062.md +0 -105
  443. pactkit-3.0.2/docs/specs/STORY-slim-20260916b5beb25459bd.md +0 -38
  444. pactkit-3.0.2/docs/specs/STORY-slim-20260917cb17ae9bbc87.md +0 -82
  445. pactkit-3.0.2/pyproject.toml +0 -135
  446. pactkit-3.0.2/src/pactkit/__init__.py +0 -3
  447. pactkit-3.0.2/src/pactkit/audit.py +0 -1489
  448. pactkit-3.0.2/src/pactkit/cli.py +0 -2816
  449. pactkit-3.0.2/src/pactkit/commit_gate.py +0 -2579
  450. pactkit-3.0.2/src/pactkit/config.py +0 -1812
  451. pactkit-3.0.2/src/pactkit/context_gen.py +0 -442
  452. pactkit-3.0.2/src/pactkit/delivery_evidence.py +0 -114
  453. pactkit-3.0.2/src/pactkit/deploy_manifest.py +0 -764
  454. pactkit-3.0.2/src/pactkit/doctor.py +0 -1417
  455. pactkit-3.0.2/src/pactkit/done_verify.py +0 -418
  456. pactkit-3.0.2/src/pactkit/evidence_measure.py +0 -535
  457. pactkit-3.0.2/src/pactkit/garden.py +0 -433
  458. pactkit-3.0.2/src/pactkit/gate_matrix.py +0 -426
  459. pactkit-3.0.2/src/pactkit/generators/deploy_base.py +0 -288
  460. pactkit-3.0.2/src/pactkit/generators/deployer.py +0 -1697
  461. pactkit-3.0.2/src/pactkit/governance.py +0 -485
  462. pactkit-3.0.2/src/pactkit/graph_query.py +0 -417
  463. pactkit-3.0.2/src/pactkit/host_payloads.py +0 -194
  464. pactkit-3.0.2/src/pactkit/lint_runner.py +0 -91
  465. pactkit-3.0.2/src/pactkit/profiles.py +0 -408
  466. pactkit-3.0.2/src/pactkit/project_bootstrap.py +0 -155
  467. pactkit-3.0.2/src/pactkit/prompts/commands.py +0 -906
  468. pactkit-3.0.2/src/pactkit/prompts/rules.py +0 -1650
  469. pactkit-3.0.2/src/pactkit/prompts/skills.py +0 -876
  470. pactkit-3.0.2/src/pactkit/prompts/workflows.py +0 -942
  471. pactkit-3.0.2/src/pactkit/regression.py +0 -789
  472. pactkit-3.0.2/src/pactkit/schemas.py +0 -278
  473. pactkit-3.0.2/src/pactkit/skills/analyzers/__init__.py +0 -266
  474. pactkit-3.0.2/src/pactkit/skills/analyzers/go_analyzer.py +0 -344
  475. pactkit-3.0.2/src/pactkit/skills/analyzers/java_analyzer.py +0 -249
  476. pactkit-3.0.2/src/pactkit/skills/analyzers/python_analyzer.py +0 -295
  477. pactkit-3.0.2/src/pactkit/skills/analyzers/ts_analyzer.py +0 -361
  478. pactkit-3.0.2/src/pactkit/skills/board.py +0 -249
  479. pactkit-3.0.2/src/pactkit/skills/report.py +0 -994
  480. pactkit-3.0.2/src/pactkit/skills/scaffold.py +0 -579
  481. pactkit-3.0.2/src/pactkit/skills/spec_linter.py +0 -866
  482. pactkit-3.0.2/src/pactkit/skills/visualize.py +0 -2301
  483. pactkit-3.0.2/src/pactkit/spec_preflight.py +0 -287
  484. pactkit-3.0.2/src/pactkit/spec_status.py +0 -50
  485. pactkit-3.0.2/src/pactkit/tamper_guard.py +0 -667
  486. pactkit-3.0.2/src/pactkit/test_mapper.py +0 -82
  487. pactkit-3.0.2/src/pactkit/validators.py +0 -210
  488. pactkit-3.0.2/src/pactkit/workflow_engine.py +0 -57
  489. pactkit-3.0.2/src/pactkit/workflow_validators.py +0 -433
  490. pactkit-3.0.2/tests/conftest.py +0 -268
  491. pactkit-3.0.2/tests/e2e/acceptance/test_verification_acceptance.py +0 -541
  492. pactkit-3.0.2/tests/e2e/cli/test_cli_e2e.py +0 -551
  493. pactkit-3.0.2/tests/e2e/cli/test_story_slim149_query_cli.py +0 -81
  494. pactkit-3.0.2/tests/e2e/test_local_git_full_flow_e2e.py +0 -139
  495. pactkit-3.0.2/tests/fixtures/cli_help_golden/query.txt +0 -18
  496. pactkit-3.0.2/tests/fixtures/cli_help_golden/regression.txt +0 -27
  497. pactkit-3.0.2/tests/fixtures/config_golden/copy_claude.json +0 -182
  498. pactkit-3.0.2/tests/fixtures/config_golden/copy_codex.json +0 -175
  499. pactkit-3.0.2/tests/fixtures/config_golden/copy_github.json +0 -176
  500. pactkit-3.0.2/tests/fixtures/config_golden/empty.json +0 -175
  501. pactkit-3.0.2/tests/fixtures/config_golden/full_legacy.json +0 -175
  502. pactkit-3.0.2/tests/fixtures/config_golden/minimal.json +0 -175
  503. pactkit-3.0.2/tests/fixtures/config_golden/unknown_keys.json +0 -178
  504. pactkit-3.0.2/tests/fixtures/host_prompt_snapshots/classic.json +0 -177
  505. pactkit-3.0.2/tests/fixtures/host_prompt_snapshots/codex.json +0 -149
  506. pactkit-3.0.2/tests/fixtures/host_prompt_snapshots/opencode.json +0 -173
  507. pactkit-3.0.2/tests/integration/__init__.py +0 -0
  508. pactkit-3.0.2/tests/unit/test_ac4_ownership_evidence.py +0 -444
  509. pactkit-3.0.2/tests/unit/test_bug006_scan_excludes.py +0 -149
  510. pactkit-3.0.2/tests/unit/test_ci_matrix_layering.py +0 -319
  511. pactkit-3.0.2/tests/unit/test_classic_deploy_paths.py +0 -46
  512. pactkit-3.0.2/tests/unit/test_cli_help_surface.py +0 -134
  513. pactkit-3.0.2/tests/unit/test_codex_hook_channel.py +0 -343
  514. pactkit-3.0.2/tests/unit/test_codex_hook_migration.py +0 -155
  515. pactkit-3.0.2/tests/unit/test_commit_gate.py +0 -547
  516. pactkit-3.0.2/tests/unit/test_config.py +0 -318
  517. pactkit-3.0.2/tests/unit/test_contract_conflict_fixes.py +0 -416
  518. pactkit-3.0.2/tests/unit/test_deploy_base.py +0 -105
  519. pactkit-3.0.2/tests/unit/test_deployer_cleanup.py +0 -213
  520. pactkit-3.0.2/tests/unit/test_done_verify.py +0 -281
  521. pactkit-3.0.2/tests/unit/test_enterprise_flags.py +0 -174
  522. pactkit-3.0.2/tests/unit/test_gate_matrix.py +0 -293
  523. pactkit-3.0.2/tests/unit/test_gate_reuse_dedup.py +0 -324
  524. pactkit-3.0.2/tests/unit/test_hook_expansion.py +0 -422
  525. pactkit-3.0.2/tests/unit/test_hotfix_slim2026091645aa03e71927_cli_venv_fixes.py +0 -98
  526. pactkit-3.0.2/tests/unit/test_hotfix_slim2026091673a4d1c8c33b_gate_bypass.py +0 -366
  527. pactkit-3.0.2/tests/unit/test_mcp_retired.py +0 -158
  528. pactkit-3.0.2/tests/unit/test_mmd_retirement.py +0 -236
  529. pactkit-3.0.2/tests/unit/test_profiles.py +0 -315
  530. pactkit-3.0.2/tests/unit/test_schemas.py +0 -258
  531. pactkit-3.0.2/tests/unit/test_skill_structure.py +0 -225
  532. pactkit-3.0.2/tests/unit/test_story025_ci_pipeline.py +0 -329
  533. pactkit-3.0.2/tests/unit/test_story028_rule_scoping.py +0 -128
  534. pactkit-3.0.2/tests/unit/test_story029_doctor.py +0 -47
  535. pactkit-3.0.2/tests/unit/test_story059_codex_removal.py +0 -73
  536. pactkit-3.0.2/tests/unit/test_story106_lateral_scan.py +0 -239
  537. pactkit-3.0.2/tests/unit/test_story_pdca_semantics_v2.py +0 -197
  538. pactkit-3.0.2/tests/unit/test_story_slim012_ci.py +0 -501
  539. pactkit-3.0.2/tests/unit/test_story_slim014_context.py +0 -227
  540. pactkit-3.0.2/tests/unit/test_story_slim028.py +0 -426
  541. pactkit-3.0.2/tests/unit/test_story_slim030.py +0 -301
  542. pactkit-3.0.2/tests/unit/test_story_slim054.py +0 -147
  543. pactkit-3.0.2/tests/unit/test_story_slim102_version_marker.py +0 -147
  544. pactkit-3.0.2/tests/unit/test_story_slim127_managed_block.py +0 -235
  545. pactkit-3.0.2/tests/unit/test_story_slim142_all_target_isolation.py +0 -128
  546. pactkit-3.0.2/tests/unit/test_story_slim149.py +0 -338
  547. pactkit-3.0.2/tests/unit/test_story_slim20260915ac3e5c24fdd3_governance.py +0 -324
  548. pactkit-3.0.2/tests/unit/test_story_slim20260918dda35a04d01d_opencode_pretool.py +0 -533
  549. pactkit-3.0.2/tests/unit/test_story_slim20260919752e74b3f591_host_translate.py +0 -239
  550. pactkit-3.0.2/tests/unit/test_story_slim20260920826d30afae88_evidence_wiring.py +0 -616
  551. pactkit-3.0.2/tests/unit/test_support_matrix.py +0 -108
  552. pactkit-3.0.2/tests/unit/test_verification_decision.py +0 -254
  553. pactkit-3.0.2/tests/unit/test_verification_scope_records.py +0 -289
  554. pactkit-3.0.2/tests/unit/test_visualize_chain_fix.py +0 -212
  555. {pactkit-3.0.2 → pactkit-3.0.4}/.codegraph/.gitignore +0 -0
  556. {pactkit-3.0.2 → pactkit-3.0.4}/.pre-commit-config.yaml +0 -0
  557. {pactkit-3.0.2 → pactkit-3.0.4}/AGENTS.md +0 -0
  558. {pactkit-3.0.2 → pactkit-3.0.4}/CODE_OF_CONDUCT.md +0 -0
  559. {pactkit-3.0.2 → pactkit-3.0.4}/CONTRIBUTING.md +0 -0
  560. {pactkit-3.0.2 → pactkit-3.0.4}/LICENSE +0 -0
  561. {pactkit-3.0.2 → pactkit-3.0.4}/README.md +0 -0
  562. {pactkit-3.0.2 → pactkit-3.0.4}/SECURITY.md +0 -0
  563. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/STORY-slim-20260911b2bbd79889e0-review-round2.md +0 -0
  564. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/STORY-slim-202609144d0b3cb593aa-context-reuse.md +0 -0
  565. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/dimensions.md +0 -0
  566. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/INDEX.md +0 -0
  567. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/driver3.sh +0 -0
  568. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/driver4.sh +0 -0
  569. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC1/docs/specs/AC1.md +0 -0
  570. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC1/src/profile.py +0 -0
  571. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC1/tests/unit/test_profile.py +0 -0
  572. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC10/docs/ACT_NOTES.md +0 -0
  573. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC10/docs/specs/AC10.md +0 -0
  574. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC10/src/billing.py +0 -0
  575. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC2/docs/VERIFY.md +0 -0
  576. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC2/docs/specs/AC2.md +0 -0
  577. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC2/src/textutil.py +0 -0
  578. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC2/tests/unit/test_textutil.py +0 -0
  579. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC3/docs/specs/AC3.md +0 -0
  580. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC4/docs/specs/AC4.md +0 -0
  581. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC4/src/reporter.py +0 -0
  582. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC5/db/migrations/001_rename.py +0 -0
  583. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC5/docs/specs/AC5.md +0 -0
  584. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC5/premise.sh +0 -0
  585. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC5/src/deployer.py +0 -0
  586. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC5/src/workflow_engine.py +0 -0
  587. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC6/docs/specs/AC6.md +0 -0
  588. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC6/src/pull.py +0 -0
  589. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/NEEDS_GIT +0 -0
  590. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/docs/specs/AC7.md +0 -0
  591. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/post_git.sh +0 -0
  592. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/premise.sh +0 -0
  593. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/src/audit.py +0 -0
  594. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC7/tests/unit/test_audit.py +0 -0
  595. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/NEEDS_GIT +0 -0
  596. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/docs/specs/AC8.md +0 -0
  597. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/post_git.sh +0 -0
  598. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/premise.sh +0 -0
  599. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/src/audit.py +0 -0
  600. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC8/tests/unit/test_audit.py +0 -0
  601. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/NEEDS_GIT +0 -0
  602. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/docs/specs/AC9.md +0 -0
  603. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/post_git.sh +0 -0
  604. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/premise.sh +0 -0
  605. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/src/audit.py +0 -0
  606. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/AC9/tests/unit/test_audit.py +0 -0
  607. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/_template/README.md +0 -0
  608. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/_template/src/widget.py +0 -0
  609. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/fixtures/_template/tests/unit/test_widget.py +0 -0
  610. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/harness.py +0 -0
  611. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC1.txt +0 -0
  612. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC10.txt +0 -0
  613. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC2.txt +0 -0
  614. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC3.txt +0 -0
  615. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC4.txt +0 -0
  616. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC5.txt +0 -0
  617. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC6.txt +0 -0
  618. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC7.txt +0 -0
  619. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC8.txt +0 -0
  620. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/prompts/AC9.txt +0 -0
  621. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC1-r2.json.gz +0 -0
  622. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC1-r3.json.gz +0 -0
  623. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC10-r1.json.gz +0 -0
  624. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC2-r1.json.gz +0 -0
  625. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC3-r1.json.gz +0 -0
  626. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC4-r1.json.gz +0 -0
  627. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC5-r1.json.gz +0 -0
  628. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC5-r2.json.gz +0 -0
  629. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC6-r1.json.gz +0 -0
  630. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC7-r1.json.gz +0 -0
  631. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC7-r2.json.gz +0 -0
  632. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC8-r1.json.gz +0 -0
  633. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC9-r1.json.gz +0 -0
  634. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/baseline/AC9-r2.json.gz +0 -0
  635. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC1-r1.json.gz +0 -0
  636. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC1-r2.json.gz +0 -0
  637. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC1-r3.json.gz +0 -0
  638. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC10-r1.json.gz +0 -0
  639. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC2-r1.json.gz +0 -0
  640. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC3-r1.json.gz +0 -0
  641. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC4-r1.json.gz +0 -0
  642. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC5-r1.json.gz +0 -0
  643. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC5-r2.json.gz +0 -0
  644. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC6-r1.json.gz +0 -0
  645. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC7-r1.json.gz +0 -0
  646. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC7-r2.json.gz +0 -0
  647. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC8-r1.json.gz +0 -0
  648. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC9-r1.json.gz +0 -0
  649. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round1/candidate/AC9-r2.json.gz +0 -0
  650. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC1-r1.json +0 -0
  651. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC1-r12.json +0 -0
  652. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC1-r2.json +0 -0
  653. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC10-r1.json +0 -0
  654. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC2-r1.json +0 -0
  655. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC3-r1.json +0 -0
  656. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC4-r1.json +0 -0
  657. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC5-r1.json +0 -0
  658. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC5-r2.json +0 -0
  659. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC6-r1.json +0 -0
  660. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC7-r1.json +0 -0
  661. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC7-r2.json +0 -0
  662. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC8-r1.json +0 -0
  663. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC8-r11.json +0 -0
  664. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC9-r1.json +0 -0
  665. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC9-r11.json +0 -0
  666. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/baseline/AC9-r2.json +0 -0
  667. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC1-r1.json +0 -0
  668. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC1-r12.json +0 -0
  669. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC1-r2.json +0 -0
  670. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC10-r1.json +0 -0
  671. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC2-r1.json +0 -0
  672. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC3-r1.json +0 -0
  673. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC4-r1.json +0 -0
  674. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC5-r1.json +0 -0
  675. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC5-r2.json +0 -0
  676. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC6-r1.json +0 -0
  677. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC7-r1.json +0 -0
  678. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC7-r11.json +0 -0
  679. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC7-r2.json +0 -0
  680. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC8-r1.json +0 -0
  681. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC9-r1.json +0 -0
  682. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC9-r11.json +0 -0
  683. {pactkit-3.0.2 → pactkit-3.0.4}/docs/acceptance/r8-trial/records/round3/candidate/AC9-r2.json +0 -0
  684. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0001-compliance-enforcement-lives-in-code-gates-promp.md +0 -0
  685. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0002-guides-carry-operational-practice-content-not-ju.md +0 -0
  686. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0003-rule-telemetry-is-consumed-at-code-touchpoints-w.md +0 -0
  687. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0004-verification-decisions-are-structured-data-consu.md +0 -0
  688. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0005-rule-adjustments-are-evaluated-on-a-fixed-corpus.md +0 -0
  689. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0006-verification-evidence-is-stamped-by-code-touchpo.md +0 -0
  690. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0007-config-layering-with-tighten-only-direction-cons.md +0 -0
  691. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0008-semantic-code-queries-go-through-the-pactkit-que.md +0 -0
  692. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/adr/ADR-0009-measured-evidence-and-declared-evidence-must-be.md +0 -0
  693. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/archive/lessons_archive_202602.md +0 -0
  694. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/archive/lessons_archive_202603.md +0 -0
  695. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/archive/lessons_archive_202604.md +0 -0
  696. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/harness_audit.json +0 -0
  697. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260227-8e92f52c86.md +0 -0
  698. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260227-a21cacfde2.md +0 -0
  699. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260227-ccb19799ea.md +0 -0
  700. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260228-6e4b02ff08.md +0 -0
  701. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260228-b87245d5fc.md +0 -0
  702. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260302-8980b2512d.md +0 -0
  703. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260302-8f58fa2045.md +0 -0
  704. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260302-a3a1b7900e.md +0 -0
  705. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260303-3f65c0442b.md +0 -0
  706. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260304-23c605e495.md +0 -0
  707. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260304-8bd6c10219.md +0 -0
  708. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260305-129d1dea2a.md +0 -0
  709. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260305-48752d79c3.md +0 -0
  710. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260305-b9afdd8720.md +0 -0
  711. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260305-f93ee5b19f.md +0 -0
  712. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260306-7061390095.md +0 -0
  713. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260313-edf7807faf.md +0 -0
  714. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260316-091567c2bb.md +0 -0
  715. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260316-4661b3789a.md +0 -0
  716. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260316-7214dac8fc.md +0 -0
  717. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-3d8a855086.md +0 -0
  718. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-4ba69c35f0.md +0 -0
  719. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-6cd2a53ba5.md +0 -0
  720. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-7a0dd3407e.md +0 -0
  721. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-86927e3701.md +0 -0
  722. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-9a8025eaac.md +0 -0
  723. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-a0721cc066.md +0 -0
  724. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-a1f53d759b.md +0 -0
  725. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-a9f7897b36.md +0 -0
  726. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260317-ff430eaa29.md +0 -0
  727. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260318-fb0bcd928b.md +0 -0
  728. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260319-f320fbb5cc.md +0 -0
  729. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260320-b2d80c56b3.md +0 -0
  730. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260320-c102dbd6f8.md +0 -0
  731. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260320-e8f6ddae81.md +0 -0
  732. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260321-5e57da75b0.md +0 -0
  733. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260321-6a4a30628f.md +0 -0
  734. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260321-b5a58de3f9.md +0 -0
  735. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260321-e0138991ed.md +0 -0
  736. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260321-e49663fc95.md +0 -0
  737. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260322-4c0480e882.md +0 -0
  738. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260322-d1ece5c0d4.md +0 -0
  739. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260323-4bd30888ce.md +0 -0
  740. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260323-7a02b3eb85.md +0 -0
  741. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260323-8624e0d93a.md +0 -0
  742. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260323-a8faeea78c.md +0 -0
  743. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-075e3332b8.md +0 -0
  744. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-0f6f041a52.md +0 -0
  745. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-2dab5931de.md +0 -0
  746. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-8bcda73e9b.md +0 -0
  747. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-9e6238f0c8.md +0 -0
  748. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-a1cace9846.md +0 -0
  749. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-bf64dd9564.md +0 -0
  750. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-c344d7655c.md +0 -0
  751. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-e60c50dcc9.md +0 -0
  752. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260324-f5149caffe.md +0 -0
  753. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260325-1a5eeea04c.md +0 -0
  754. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-02460b22de.md +0 -0
  755. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-09de627b2b.md +0 -0
  756. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-204ea48f84.md +0 -0
  757. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-32e2fd3074.md +0 -0
  758. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-6c6dbfc365.md +0 -0
  759. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-7811ad7ff2.md +0 -0
  760. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-88e7123370.md +0 -0
  761. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-d2376010b1.md +0 -0
  762. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-e4f0eb8850.md +0 -0
  763. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-e68b8aa47f.md +0 -0
  764. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260326-fdd06ad981.md +0 -0
  765. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260327-e3c7f5abcb.md +0 -0
  766. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260330-eb1760def2.md +0 -0
  767. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-1b58a289ea.md +0 -0
  768. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-26e474753e.md +0 -0
  769. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-3028ab9cf5.md +0 -0
  770. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-350048862b.md +0 -0
  771. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-7d41cdf5a3.md +0 -0
  772. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-8e5558a077.md +0 -0
  773. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260331-c46df1c3b1.md +0 -0
  774. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-41515789f6.md +0 -0
  775. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-4453752dda.md +0 -0
  776. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-5a225a1c0a.md +0 -0
  777. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-90724b10f0.md +0 -0
  778. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-9e322eb76e.md +0 -0
  779. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-bd20019d3d.md +0 -0
  780. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-de035be681.md +0 -0
  781. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-f44c8f499e.md +0 -0
  782. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260401-fa52f596ff.md +0 -0
  783. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260402-5b063207c8.md +0 -0
  784. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260402-5e0913ec81.md +0 -0
  785. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260415-3d8b5e8f81.md +0 -0
  786. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260415-84219771ca.md +0 -0
  787. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-41d4564480.md +0 -0
  788. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-5cdc3cf53f.md +0 -0
  789. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-807c65a8e7.md +0 -0
  790. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-ade561c777.md +0 -0
  791. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-b78aaf129a.md +0 -0
  792. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-db8a5430a0.md +0 -0
  793. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260416-f5a765c496.md +0 -0
  794. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260417-f1d777e9c9.md +0 -0
  795. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260418-ee12f2ff0d.md +0 -0
  796. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260420-2260437be7.md +0 -0
  797. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260420-a35a083e29.md +0 -0
  798. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260420-fa7d958d56.md +0 -0
  799. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260421-309c998a10.md +0 -0
  800. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260422-6509ac4df0.md +0 -0
  801. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260422-8dd5ed6a24.md +0 -0
  802. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260423-b0890ad9c2.md +0 -0
  803. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260424-24cc1d5e19.md +0 -0
  804. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260424-39a99c887d.md +0 -0
  805. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260427-f7955d5775.md +0 -0
  806. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260507-7b75a5cab8.md +0 -0
  807. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260507-b26f97255d.md +0 -0
  808. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260525-1fe96d2ff4.md +0 -0
  809. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260525-717e18e190.md +0 -0
  810. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260525-df4853fa3f.md +0 -0
  811. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260526-4c230f3a9d.md +0 -0
  812. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260601-6d6b779a83.md +0 -0
  813. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260601-e65d3407ed.md +0 -0
  814. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260610-51c3cf895e.md +0 -0
  815. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260629-6171e54ac8.md +0 -0
  816. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260702-4616caa284.md +0 -0
  817. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260713-da6d40dcc0.md +0 -0
  818. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260723-d4c9801300.md +0 -0
  819. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260813-18efcf9687.md +0 -0
  820. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260813-1dc6e2e1c7.md +0 -0
  821. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260813-21d4da632f.md +0 -0
  822. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260817-3587ae1a22.md +0 -0
  823. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260817-5f08a6affa.md +0 -0
  824. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260817-800f717c9d.md +0 -0
  825. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260817-a2cd839a2d.md +0 -0
  826. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260822-9175485749.md +0 -0
  827. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260822105138-298451a42c.md +0 -0
  828. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260822105138-522c7e4af4.md +0 -0
  829. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260822105138-72cc1d0343.md +0 -0
  830. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260823015950-6b8cbea92e.md +0 -0
  831. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260823022240-d3570f57fb.md +0 -0
  832. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260823050717-9192db37f8.md +0 -0
  833. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260826072120-c6db5dd5b1.md +0 -0
  834. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260826074629-f5119ea78b.md +0 -0
  835. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260826080242-012107ada2.md +0 -0
  836. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260826082256-eff3747d60.md +0 -0
  837. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260827093143-3236113033.md +0 -0
  838. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260827095642-059a7e996b.md +0 -0
  839. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260827102057-e04522a6fc.md +0 -0
  840. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260828102433-81cd3e00a0.md +0 -0
  841. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260830034504-4f7d0f8c58.md +0 -0
  842. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260902100234-6fa7694bad.md +0 -0
  843. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260903031356-434a87fc47.md +0 -0
  844. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260903074136-2ad6569039.md +0 -0
  845. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260903074336-9d34da327e.md +0 -0
  846. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260903105934-7f4db3bb3d.md +0 -0
  847. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260905225746-b931bfdd36.md +0 -0
  848. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260905225755-a1676b4a92.md +0 -0
  849. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260905232251-99aae9139a.md +0 -0
  850. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260909071100-ae89cd100f.md +0 -0
  851. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260909071100-f0c830f573.md +0 -0
  852. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260911140126-2a137f5de7.md +0 -0
  853. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260914134141-1b7d68cc0d.md +0 -0
  854. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260915101454-f5cd8980ed.md +0 -0
  855. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260915101507-81b164b62d.md +0 -0
  856. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260916025924-0161b23415.md +0 -0
  857. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260916060833-a56ceb5473.md +0 -0
  858. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260916071655-f231d85eeb.md +0 -0
  859. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260916073935-f3b66ad2fa.md +0 -0
  860. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918101218-13c6881daa.md +0 -0
  861. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918101225-8203b3d79d.md +0 -0
  862. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918101234-1fb486910f.md +0 -0
  863. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918101234-c82d448fd7.md +0 -0
  864. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918124317-8bee6134b2.md +0 -0
  865. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918124317-e6d9c684b6.md +0 -0
  866. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918124325-22cd2b7605.md +0 -0
  867. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918145450-3d92bd7b26.md +0 -0
  868. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260918145811-54f64772fb.md +0 -0
  869. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260919002744-9231d3a3c4.md +0 -0
  870. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260919010001-a8a62ea231.md +0 -0
  871. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260919030717-a8b2f65085.md +0 -0
  872. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260920072822-88ef70cc14.md +0 -0
  873. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260920093840-9b61b1e558.md +0 -0
  874. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260921014230-4649c460d5.md +0 -0
  875. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons/LESSON-20260921030026-a028be9c10.md +0 -0
  876. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/lessons.md +0 -0
  877. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260903-codex-stale-embedded-copies.md +0 -0
  878. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260903-opencode-ledger-wipe.md +0 -0
  879. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260918-cli-type-signal.md +0 -0
  880. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260918-dead-code-audit.md +0 -0
  881. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260918-testcase-supply-gap.md +0 -0
  882. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/governance/postmortems/PM-20260920-doctor-verdict-divergence.md +0 -0
  883. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/graphs/reverse_call_graph.mmd +0 -0
  884. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/graphs/system_design.mmd +0 -0
  885. {pactkit-3.0.2 → pactkit-3.0.4}/docs/architecture/graphs/workflow_graph.mmd +0 -0
  886. {pactkit-3.0.2 → pactkit-3.0.4}/docs/assets/logo.png +0 -0
  887. {pactkit-3.0.2 → pactkit-3.0.4}/docs/e2e/journey.md +0 -0
  888. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/baseline-signing-options.md +0 -0
  889. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/codex-integration-preresearch.md +0 -0
  890. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/credential-incident-response.md +0 -0
  891. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/host-channel-onboarding.md +0 -0
  892. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/release-recovery-runbook.md +0 -0
  893. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/spec-authoring-conventions.md +0 -0
  894. {pactkit-3.0.2 → pactkit-3.0.4}/docs/guides/tool-integration-checklist.md +0 -0
  895. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/architecture-slimming-metrics.md +0 -0
  896. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202602.md +0 -0
  897. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202603.md +0 -0
  898. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202604.md +0 -0
  899. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202605.md +0 -0
  900. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202606.md +0 -0
  901. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202607.md +0 -0
  902. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/archive/archive_202608.md +0 -0
  903. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/config-retirement-audit.md +0 -0
  904. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/friction-log.md +0 -0
  905. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/harness-comparison-2026-08-27.md +0 -0
  906. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/planning/STORY-slim-20260917e7a26d4bc981.md +0 -0
  907. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/prd.md +0 -0
  908. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/BUG-slim-20260920225f30d563a1.yaml +0 -0
  909. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-127.yaml +0 -0
  910. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-131.yaml +0 -0
  911. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-132.yaml +0 -0
  912. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260828ee6cde3108fb.yaml +0 -0
  913. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260830bbb5bc219d35.yaml +0 -0
  914. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260901469666ef23a8.yaml +0 -0
  915. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260903d464746b1909.yaml +0 -0
  916. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-202609061713452e9748.yaml +0 -0
  917. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-2026090643cc9415bb85.yaml +0 -0
  918. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-202609064f74efbe75ac.yaml +0 -0
  919. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-2026090656e948c25a14.yaml +0 -0
  920. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260906a1457ace4c11.yaml +0 -0
  921. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260906a71fc0080034.yaml +0 -0
  922. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260906ac9bf3ab9910.yaml +0 -0
  923. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-2026091645aa03e71927.yaml +0 -0
  924. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-202609166519bc076345.yaml +0 -0
  925. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-202609166a956c024963.yaml +0 -0
  926. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-2026091673a4d1c8c33b.yaml +0 -0
  927. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260916991f0b0d0a2e.yaml +0 -0
  928. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-2026091699cba1b49506.yaml +0 -0
  929. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260916bcd9deb4bec0.yaml +0 -0
  930. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260916c4f2a9e6b013.yaml +0 -0
  931. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-20260916cccbb8ee26fb.yaml +0 -0
  932. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/HOTFIX-slim-202609200d44cb016534.yaml +0 -0
  933. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-115.yaml +0 -0
  934. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-118.yaml +0 -0
  935. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-119.yaml +0 -0
  936. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-145.yaml +0 -0
  937. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-147.yaml +0 -0
  938. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-148.yaml +0 -0
  939. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-149.yaml +0 -0
  940. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026082381e832771d4e.yaml +0 -0
  941. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260823d854b0cf1875.yaml +0 -0
  942. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260823de7e85d6042a.yaml +0 -0
  943. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260825b1c83a046b4b.yaml +0 -0
  944. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202608264cf429c75e22.yaml +0 -0
  945. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026082672b57c78fd67.yaml +0 -0
  946. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202608267c3989223b4d.yaml +0 -0
  947. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202608268fc379dbe6ef.yaml +0 -0
  948. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260826ac1f0bfe4148.yaml +0 -0
  949. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260826cb37edfdd4da.yaml +0 -0
  950. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260826ce35b77ce005.yaml +0 -0
  951. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260826f9492ab32c3d.yaml +0 -0
  952. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827024e71df170f.yaml +0 -0
  953. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026082727cc4ab535e7.yaml +0 -0
  954. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026082730b5954cf538.yaml +0 -0
  955. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827625b870eb7da.yaml +0 -0
  956. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202608277ec1236a7b99.yaml +0 -0
  957. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827833e7a200f9a.yaml +0 -0
  958. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827855bf3efaec3.yaml +0 -0
  959. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026082799fa651655be.yaml +0 -0
  960. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827c67e3add6af5.yaml +0 -0
  961. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827d0ae0dfada51.yaml +0 -0
  962. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827eddbe9669c87.yaml +0 -0
  963. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827fb6291b717eb.yaml +0 -0
  964. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260827fc9de5542ad7.yaml +0 -0
  965. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260828897396a935ab.yaml +0 -0
  966. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202608289e83eeb30df4.yaml +0 -0
  967. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260828d43fae4edbb6.yaml +0 -0
  968. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260830c65491123af1.yaml +0 -0
  969. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609025bc9246b6a54.yaml +0 -0
  970. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026090301691dea72e8.yaml +0 -0
  971. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026090333d6b72f7645.yaml +0 -0
  972. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260903699c84c217e0.yaml +0 -0
  973. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609037a7d4be200e7.yaml +0 -0
  974. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260903a24e1ece0d7f.yaml +0 -0
  975. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260903a4ef6915ed62.yaml +0 -0
  976. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260903b5ce6be5f7e0.yaml +0 -0
  977. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260905efced66ebc9c.yaml +0 -0
  978. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026090699752886f924.yaml +0 -0
  979. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260909b90ba785f55a.yaml +0 -0
  980. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260909e47c92ef09ec.yaml +0 -0
  981. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609110568ba869adb.yaml +0 -0
  982. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609110d1567cfbc04.yaml +0 -0
  983. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091122a1144a1ac5.yaml +0 -0
  984. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911453c59076a8a.yaml +0 -0
  985. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911511cde75db9b.yaml +0 -0
  986. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911614214d936d9.yaml +0 -0
  987. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091171392be2a603.yaml +0 -0
  988. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091184808465e1fc.yaml +0 -0
  989. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911912c981c9d5e.yaml +0 -0
  990. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609119b5e42fd459a.yaml +0 -0
  991. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911ab8de391c5a9.yaml +0 -0
  992. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911b1e7c94d3f28.yaml +0 -0
  993. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911b2bbd79889e0.yaml +0 -0
  994. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911ba339646a2da.yaml +0 -0
  995. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260911c4a8e17b6d02.yaml +0 -0
  996. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260912ddc450b6fdcf.yaml +0 -0
  997. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609144d0b3cb593aa.yaml +0 -0
  998. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091519c812a6db71.yaml +0 -0
  999. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260915ac3e5c24fdd3.yaml +0 -0
  1000. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260915eaf18678ce23.yaml +0 -0
  1001. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609160fe9825c04b7.yaml +0 -0
  1002. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091644dd0bd263d1.yaml +0 -0
  1003. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609165747a3fc13b8.yaml +0 -0
  1004. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260916823f60779f1a.yaml +0 -0
  1005. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260916e9aadb6b2b46.yaml +0 -0
  1006. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609171e19122d7b1b.yaml +0 -0
  1007. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609174672386c4e73.yaml +0 -0
  1008. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609174b30394b3eaf.yaml +0 -0
  1009. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609175412dd8da7e0.yaml +0 -0
  1010. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091769e0a79767ff.yaml +0 -0
  1011. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917a68895632abb.yaml +0 -0
  1012. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917a76a62f23124.yaml +0 -0
  1013. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917beaa87bc5d27.yaml +0 -0
  1014. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917c18f4a962b70.yaml +0 -0
  1015. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917c943d7aaeb7c.yaml +0 -0
  1016. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260917cb17ae9bbc87.yaml +0 -0
  1017. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091806bbe53c5884.yaml +0 -0
  1018. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260918164ea9fe09e9.yaml +0 -0
  1019. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260918864001ab2cad.yaml +0 -0
  1020. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026091893aad6f3d8ac.yaml +0 -0
  1021. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609189a690adb96b7.yaml +0 -0
  1022. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260918dda35a04d01d.yaml +0 -0
  1023. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260918e76e4a89b0ad.yaml +0 -0
  1024. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260919752e74b3f591.yaml +0 -0
  1025. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260919b7362f043437.yaml +0 -0
  1026. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-2026092010bf0bf77b9f.yaml +0 -0
  1027. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609202886076c407c.yaml +0 -0
  1028. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609204f623f7bd50c.yaml +0 -0
  1029. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-202609206d5dc5792609.yaml +0 -0
  1030. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260920826d30afae88.yaml +0 -0
  1031. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260920a857d99c2c6e.yaml +0 -0
  1032. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260920bc98b2d93bc7.yaml +0 -0
  1033. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260920c77797299eba.yaml +0 -0
  1034. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260920de88ba290110.yaml +0 -0
  1035. {pactkit-3.0.2 → pactkit-3.0.4}/docs/product/stories/STORY-slim-20260921c7a3f696f79f.yaml +0 -0
  1036. {pactkit-3.0.2 → pactkit-3.0.4}/docs/reference/phases.md +0 -0
  1037. {pactkit-3.0.2 → pactkit-3.0.4}/docs/reference/rules.md +0 -0
  1038. {pactkit-3.0.2 → pactkit-3.0.4}/docs/reference/workflow-units.md +0 -0
  1039. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-002.md +0 -0
  1040. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-017.md +0 -0
  1041. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-024.md +0 -0
  1042. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-025.md +0 -0
  1043. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-026.md +0 -0
  1044. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-027.md +0 -0
  1045. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-029.md +0 -0
  1046. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-030.md +0 -0
  1047. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-033.md +0 -0
  1048. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-034.md +0 -0
  1049. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-035.md +0 -0
  1050. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-001.md +0 -0
  1051. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-002.md +0 -0
  1052. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-003.md +0 -0
  1053. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-004.md +0 -0
  1054. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-005.md +0 -0
  1055. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-006.md +0 -0
  1056. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-089.md +0 -0
  1057. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/BUG-slim-20260920225f30d563a1.md +0 -0
  1058. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-023.md +0 -0
  1059. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-049.md +0 -0
  1060. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-050.md +0 -0
  1061. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-051.md +0 -0
  1062. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-052.md +0 -0
  1063. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-061.md +0 -0
  1064. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-062.md +0 -0
  1065. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-069.md +0 -0
  1066. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-070.md +0 -0
  1067. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-085.md +0 -0
  1068. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-096.md +0 -0
  1069. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-117.md +0 -0
  1070. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-122.md +0 -0
  1071. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-123.md +0 -0
  1072. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-127.md +0 -0
  1073. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-131.md +0 -0
  1074. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-132.md +0 -0
  1075. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260828ee6cde3108fb.md +0 -0
  1076. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260830bbb5bc219d35.md +0 -0
  1077. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260901469666ef23a8.md +0 -0
  1078. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260903d464746b1909.md +0 -0
  1079. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-202609061713452e9748.md +0 -0
  1080. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-2026090643cc9415bb85.md +0 -0
  1081. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-202609064f74efbe75ac.md +0 -0
  1082. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-2026090656e948c25a14.md +0 -0
  1083. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260906a1457ace4c11.md +0 -0
  1084. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260906a71fc0080034.md +0 -0
  1085. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260906ac9bf3ab9910.md +0 -0
  1086. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-2026091645aa03e71927.md +0 -0
  1087. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-202609166519bc076345.md +0 -0
  1088. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260916bcd9deb4bec0.md +0 -0
  1089. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/HOTFIX-slim-20260916cccbb8ee26fb.md +0 -0
  1090. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-017.md +0 -0
  1091. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-018.md +0 -0
  1092. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-039.md +0 -0
  1093. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-041.md +0 -0
  1094. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-042.md +0 -0
  1095. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-043.md +0 -0
  1096. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-044.md +0 -0
  1097. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-045.md +0 -0
  1098. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-046.md +0 -0
  1099. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-047.md +0 -0
  1100. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-048.md +0 -0
  1101. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-049.md +0 -0
  1102. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-050.md +0 -0
  1103. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-051.md +0 -0
  1104. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-052.md +0 -0
  1105. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-053.md +0 -0
  1106. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-054.md +0 -0
  1107. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-055.md +0 -0
  1108. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-056.md +0 -0
  1109. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-057.md +0 -0
  1110. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-058.md +0 -0
  1111. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-059.md +0 -0
  1112. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-060.md +0 -0
  1113. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-063.md +0 -0
  1114. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-064.md +0 -0
  1115. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-065.md +0 -0
  1116. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-069.md +0 -0
  1117. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-070.md +0 -0
  1118. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-071.md +0 -0
  1119. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-072.md +0 -0
  1120. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-073.md +0 -0
  1121. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-001.md +0 -0
  1122. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-005.md +0 -0
  1123. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-006.md +0 -0
  1124. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-007.md +0 -0
  1125. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-009.md +0 -0
  1126. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-010.md +0 -0
  1127. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-011.md +0 -0
  1128. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-012.md +0 -0
  1129. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-013.md +0 -0
  1130. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-014.md +0 -0
  1131. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-015.md +0 -0
  1132. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-016.md +0 -0
  1133. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-017.md +0 -0
  1134. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-018.md +0 -0
  1135. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-019.md +0 -0
  1136. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-020.md +0 -0
  1137. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-021.md +0 -0
  1138. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-022.md +0 -0
  1139. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-023.md +0 -0
  1140. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-024.md +0 -0
  1141. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-028.md +0 -0
  1142. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-029.md +0 -0
  1143. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-030.md +0 -0
  1144. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-031.md +0 -0
  1145. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-032.md +0 -0
  1146. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-033.md +0 -0
  1147. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-034.md +0 -0
  1148. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-035.md +0 -0
  1149. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-036.md +0 -0
  1150. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-037.md +0 -0
  1151. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-038.md +0 -0
  1152. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-039.md +0 -0
  1153. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-040.md +0 -0
  1154. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-041.md +0 -0
  1155. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-042.md +0 -0
  1156. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-043.md +0 -0
  1157. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-044.md +0 -0
  1158. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-045.md +0 -0
  1159. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-046.md +0 -0
  1160. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-047.md +0 -0
  1161. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-048.md +0 -0
  1162. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-049.md +0 -0
  1163. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-050.md +0 -0
  1164. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-051.md +0 -0
  1165. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-052.md +0 -0
  1166. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-053.md +0 -0
  1167. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-054.md +0 -0
  1168. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-055.md +0 -0
  1169. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-056.md +0 -0
  1170. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-057.md +0 -0
  1171. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-058.md +0 -0
  1172. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-059.md +0 -0
  1173. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-060.md +0 -0
  1174. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-063.md +0 -0
  1175. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-066.md +0 -0
  1176. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-067.md +0 -0
  1177. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-068.md +0 -0
  1178. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-069.md +0 -0
  1179. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-070.md +0 -0
  1180. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-071.md +0 -0
  1181. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-072.md +0 -0
  1182. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-073.md +0 -0
  1183. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-074.md +0 -0
  1184. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-075.md +0 -0
  1185. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-076.md +0 -0
  1186. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-077.md +0 -0
  1187. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-078.md +0 -0
  1188. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-079.md +0 -0
  1189. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-080.md +0 -0
  1190. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-081.md +0 -0
  1191. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-082.md +0 -0
  1192. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-083.md +0 -0
  1193. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-084.md +0 -0
  1194. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-086.md +0 -0
  1195. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-088.md +0 -0
  1196. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-089.md +0 -0
  1197. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-090.md +0 -0
  1198. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-091.md +0 -0
  1199. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-092.md +0 -0
  1200. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-093.md +0 -0
  1201. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-094.md +0 -0
  1202. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-095.md +0 -0
  1203. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-097.md +0 -0
  1204. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-098.md +0 -0
  1205. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-099.md +0 -0
  1206. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-100.md +0 -0
  1207. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-101.md +0 -0
  1208. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-102.md +0 -0
  1209. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-103.md +0 -0
  1210. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-104.md +0 -0
  1211. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-105.md +0 -0
  1212. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-106.md +0 -0
  1213. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-107.md +0 -0
  1214. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-108.md +0 -0
  1215. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-109.md +0 -0
  1216. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-110.md +0 -0
  1217. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-111.md +0 -0
  1218. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-112.md +0 -0
  1219. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-113.md +0 -0
  1220. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-114.md +0 -0
  1221. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-115.md +0 -0
  1222. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-116.md +0 -0
  1223. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-118.md +0 -0
  1224. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-119.md +0 -0
  1225. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-120.md +0 -0
  1226. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-121.md +0 -0
  1227. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-124.md +0 -0
  1228. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-125.md +0 -0
  1229. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-126.md +0 -0
  1230. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-127.md +0 -0
  1231. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-128.md +0 -0
  1232. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-129.md +0 -0
  1233. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-132.md +0 -0
  1234. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-133.md +0 -0
  1235. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-134.md +0 -0
  1236. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-135.md +0 -0
  1237. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-136.md +0 -0
  1238. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-137.md +0 -0
  1239. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-138.md +0 -0
  1240. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-139.md +0 -0
  1241. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-140.md +0 -0
  1242. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-141.md +0 -0
  1243. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-142.md +0 -0
  1244. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-143.md +0 -0
  1245. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-144.md +0 -0
  1246. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-145.md +0 -0
  1247. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-146.md +0 -0
  1248. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-147.md +0 -0
  1249. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-148.md +0 -0
  1250. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-149.md +0 -0
  1251. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082381e832771d4e.md +0 -0
  1252. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260823d854b0cf1875.md +0 -0
  1253. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260823de7e85d6042a.md +0 -0
  1254. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082466c8670d9655.md +0 -0
  1255. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260824dd23a0ed3b4c.md +0 -0
  1256. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260825b1c83a046b4b.md +0 -0
  1257. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202608264cf429c75e22.md +0 -0
  1258. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082672b57c78fd67.md +0 -0
  1259. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202608267c3989223b4d.md +0 -0
  1260. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202608268fc379dbe6ef.md +0 -0
  1261. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260826ac1f0bfe4148.md +0 -0
  1262. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260826cb37edfdd4da.md +0 -0
  1263. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260826ce35b77ce005.md +0 -0
  1264. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260826f9492ab32c3d.md +0 -0
  1265. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827024e71df170f.md +0 -0
  1266. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082727cc4ab535e7.md +0 -0
  1267. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082730b5954cf538.md +0 -0
  1268. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827625b870eb7da.md +0 -0
  1269. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827833e7a200f9a.md +0 -0
  1270. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827855bf3efaec3.md +0 -0
  1271. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026082799fa651655be.md +0 -0
  1272. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827d0ae0dfada51.md +0 -0
  1273. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827eddbe9669c87.md +0 -0
  1274. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827fb6291b717eb.md +0 -0
  1275. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260827fc9de5542ad7.md +0 -0
  1276. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260828897396a935ab.md +0 -0
  1277. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202608289e83eeb30df4.md +0 -0
  1278. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260828d43fae4edbb6.md +0 -0
  1279. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260830c65491123af1.md +0 -0
  1280. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609025bc9246b6a54.md +0 -0
  1281. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026090301691dea72e8.md +0 -0
  1282. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026090333d6b72f7645.md +0 -0
  1283. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260903699c84c217e0.md +0 -0
  1284. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609037a7d4be200e7.md +0 -0
  1285. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260903a24e1ece0d7f.md +0 -0
  1286. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260903a4ef6915ed62.md +0 -0
  1287. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260903b5ce6be5f7e0.md +0 -0
  1288. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260905efced66ebc9c.md +0 -0
  1289. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026090699752886f924.md +0 -0
  1290. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260909b90ba785f55a.md +0 -0
  1291. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260909e47c92ef09ec.md +0 -0
  1292. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609110568ba869adb.md +0 -0
  1293. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609110d1567cfbc04.md +0 -0
  1294. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091122a1144a1ac5.md +0 -0
  1295. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911453c59076a8a.md +0 -0
  1296. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911511cde75db9b.md +0 -0
  1297. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911614214d936d9.md +0 -0
  1298. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091171392be2a603.md +0 -0
  1299. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091184808465e1fc.md +0 -0
  1300. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911912c981c9d5e.md +0 -0
  1301. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609119b5e42fd459a.md +0 -0
  1302. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911ab8de391c5a9.md +0 -0
  1303. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911b1e7c94d3f28.md +0 -0
  1304. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911b2bbd79889e0.md +0 -0
  1305. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260911c4a8e17b6d02.md +0 -0
  1306. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609144d0b3cb593aa.md +0 -0
  1307. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260915ac3e5c24fdd3.md +0 -0
  1308. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260915eaf18678ce23.md +0 -0
  1309. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609160fe9825c04b7.md +0 -0
  1310. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091644dd0bd263d1.md +0 -0
  1311. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609165747a3fc13b8.md +0 -0
  1312. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260916823f60779f1a.md +0 -0
  1313. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260916e9aadb6b2b46.md +0 -0
  1314. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609171e19122d7b1b.md +0 -0
  1315. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609174672386c4e73.md +0 -0
  1316. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609174b30394b3eaf.md +0 -0
  1317. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609175412dd8da7e0.md +0 -0
  1318. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091769e0a79767ff.md +0 -0
  1319. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260917a68895632abb.md +0 -0
  1320. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260917a76a62f23124.md +0 -0
  1321. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260917beaa87bc5d27.md +0 -0
  1322. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260917c18f4a962b70.md +0 -0
  1323. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260917c943d7aaeb7c.md +0 -0
  1324. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091806bbe53c5884.md +0 -0
  1325. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260918164ea9fe09e9.md +0 -0
  1326. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260918864001ab2cad.md +0 -0
  1327. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026091893aad6f3d8ac.md +0 -0
  1328. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-202609189a690adb96b7.md +0 -0
  1329. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260918dda35a04d01d.md +0 -0
  1330. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260918e76e4a89b0ad.md +0 -0
  1331. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260919752e74b3f591.md +0 -0
  1332. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260919b7362f043437.md +0 -0
  1333. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-2026092010bf0bf77b9f.md +0 -0
  1334. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260920826d30afae88.md +0 -0
  1335. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260920bc98b2d93bc7.md +0 -0
  1336. {pactkit-3.0.2 → pactkit-3.0.4}/docs/specs/STORY-slim-20260921c7a3f696f79f.md +0 -0
  1337. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/BUG-001_case.md +0 -0
  1338. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/BUG-002_case.md +0 -0
  1339. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-028_case.md +0 -0
  1340. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-029_case.md +0 -0
  1341. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-031_case.md +0 -0
  1342. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-032_case.md +0 -0
  1343. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-033_case.md +0 -0
  1344. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-034_case.md +0 -0
  1345. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-135_case.md +0 -0
  1346. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-136_case.md +0 -0
  1347. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-137_case.md +0 -0
  1348. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-138_case.md +0 -0
  1349. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-139_case.md +0 -0
  1350. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-140_case.md +0 -0
  1351. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-141_case.md +0 -0
  1352. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-142_case.md +0 -0
  1353. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-143_case.md +0 -0
  1354. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-144_case.md +0 -0
  1355. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-146_case.md +0 -0
  1356. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-147_case.md +0 -0
  1357. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-148_case.md +0 -0
  1358. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-149_case.md +0 -0
  1359. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026082381e832771d4e_case.md +0 -0
  1360. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260823d854b0cf1875_case.md +0 -0
  1361. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260823de7e85d6042a_case.md +0 -0
  1362. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260825b1c83a046b4b_case.md +0 -0
  1363. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202608264cf429c75e22_case.md +0 -0
  1364. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026082672b57c78fd67_case.md +0 -0
  1365. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202608267c3989223b4d_case.md +0 -0
  1366. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202608268fc379dbe6ef_case.md +0 -0
  1367. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260826ac1f0bfe4148_case.md +0 -0
  1368. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260826cb37edfdd4da_case.md +0 -0
  1369. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260826ce35b77ce005_case.md +0 -0
  1370. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260826f9492ab32c3d_case.md +0 -0
  1371. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260827024e71df170f_case.md +0 -0
  1372. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026082799fa651655be_case.md +0 -0
  1373. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260827eddbe9669c87_case.md +0 -0
  1374. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260827fc9de5542ad7_case.md +0 -0
  1375. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260828897396a935ab_case.md +0 -0
  1376. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260830c65491123af1_case.md +0 -0
  1377. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609025bc9246b6a54_case.md +0 -0
  1378. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026090301691dea72e8_case.md +0 -0
  1379. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026090333d6b72f7645_case.md +0 -0
  1380. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260903699c84c217e0_case.md +0 -0
  1381. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609037a7d4be200e7_case.md +0 -0
  1382. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260903a24e1ece0d7f_case.md +0 -0
  1383. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260903a4ef6915ed62_case.md +0 -0
  1384. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260903b5ce6be5f7e0_case.md +0 -0
  1385. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260905efced66ebc9c_case.md +0 -0
  1386. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260909b90ba785f55a_case.md +0 -0
  1387. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260909e47c92ef09ec_case.md +0 -0
  1388. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260911b2bbd79889e0_case.md +0 -0
  1389. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260911c4a8e17b6d02_case.md +0 -0
  1390. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609144d0b3cb593aa_case.md +0 -0
  1391. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260915ac3e5c24fdd3_case.md +0 -0
  1392. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260915eaf18678ce23_case.md +0 -0
  1393. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609160fe9825c04b7_case.md +0 -0
  1394. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026091644dd0bd263d1_case.md +0 -0
  1395. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609165747a3fc13b8_case.md +0 -0
  1396. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260916823f60779f1a_case.md +0 -0
  1397. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260916e9aadb6b2b46_case.md +0 -0
  1398. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026091806bbe53c5884_case.md +0 -0
  1399. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260918164ea9fe09e9_case.md +0 -0
  1400. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260918864001ab2cad_case.md +0 -0
  1401. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-202609189a690adb96b7_case.md +0 -0
  1402. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260918dda35a04d01d_case.md +0 -0
  1403. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260919752e74b3f591_case.md +0 -0
  1404. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260919b7362f043437_case.md +0 -0
  1405. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-2026092010bf0bf77b9f_case.md +0 -0
  1406. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260920826d30afae88_case.md +0 -0
  1407. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260920bc98b2d93bc7_case.md +0 -0
  1408. {pactkit-3.0.2 → pactkit-3.0.4}/docs/test_cases/STORY-slim-20260921c7a3f696f79f_case.md +0 -0
  1409. {pactkit-3.0.2 → pactkit-3.0.4}/opencode.json +0 -0
  1410. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/__main__.py +0 -0
  1411. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/accept_candidates.py +0 -0
  1412. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/auth_gate.py +0 -0
  1413. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/backfill.py +0 -0
  1414. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/baseline.py +0 -0
  1415. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/bypass_message.py +0 -0
  1416. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/cleaners.py +0 -0
  1417. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/codegraph_data.py +0 -0
  1418. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/continuation.py +0 -0
  1419. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/coverage_gate.py +0 -0
  1420. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/deployment_transaction.py +0 -0
  1421. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/deps.py +0 -0
  1422. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/enforcement.py +0 -0
  1423. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/gate_migration.py +0 -0
  1424. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/generators/claude_md.py +0 -0
  1425. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/generators/command_ownership.py +0 -0
  1426. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/generators/opencode_plugin.py +0 -0
  1427. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/guards.py +0 -0
  1428. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/host_continuation.py +0 -0
  1429. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/id_generator.py +0 -0
  1430. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/invariants.py +0 -0
  1431. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/issue_sync.py +0 -0
  1432. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/lazy_visualize.py +0 -0
  1433. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/legacy/__init__.py +0 -0
  1434. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/legacy/host_continuation.py +0 -0
  1435. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/legacy/usage.py +0 -0
  1436. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/legacy/workflow_engine.py +0 -0
  1437. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/lessons.py +0 -0
  1438. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/mmd_retirement.py +0 -0
  1439. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/observe.py +0 -0
  1440. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/orchestration_cost.py +0 -0
  1441. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/portable_methods.py +0 -0
  1442. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/precommit_bridge.py +0 -0
  1443. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/project_contract.py +0 -0
  1444. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/project_root.py +0 -0
  1445. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/prompts/__init__.py +0 -0
  1446. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/prompts/agents.py +0 -0
  1447. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/prompts/guides.py +0 -0
  1448. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/prompts/references.py +0 -0
  1449. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/protocols.py +0 -0
  1450. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/reference.py +0 -0
  1451. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/risk_profile.py +0 -0
  1452. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/rule_diagnostics.py +0 -0
  1453. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/rule_events.py +0 -0
  1454. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/rules_eval.py +0 -0
  1455. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/run_events.py +0 -0
  1456. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/run_stats.py +0 -0
  1457. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/sec_scope.py +0 -0
  1458. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/secrets_baseline.py +0 -0
  1459. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/secrets_engine.py +0 -0
  1460. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/secrets_gate.py +0 -0
  1461. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/session_gate.py +0 -0
  1462. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/skills/__init__.py +0 -0
  1463. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/skills/interface_summary.py +0 -0
  1464. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/skills/mmd_render.py +0 -0
  1465. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/spec_graph.py +0 -0
  1466. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/uninstall.py +0 -0
  1467. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/utils.py +0 -0
  1468. {pactkit-3.0.2 → pactkit-3.0.4}/src/pactkit/workflow_registry.py +0 -0
  1469. {pactkit-3.0.2/src/pactkit/generators → pactkit-3.0.4/tests/e2e}/__init__.py +0 -0
  1470. {pactkit-3.0.2/tests/e2e → pactkit-3.0.4/tests/e2e/acceptance}/__init__.py +0 -0
  1471. {pactkit-3.0.2/tests/e2e/acceptance → pactkit-3.0.4/tests/e2e/cli}/__init__.py +0 -0
  1472. {pactkit-3.0.2 → pactkit-3.0.4}/tests/e2e/cli/test_story_slim146_cli.py +0 -0
  1473. {pactkit-3.0.2 → pactkit-3.0.4}/tests/e2e/cli/test_story_slim147_workflow_cli.py +0 -0
  1474. {pactkit-3.0.2 → pactkit-3.0.4}/tests/e2e/cli/test_story_slim148_governance_cli.py +0 -0
  1475. {pactkit-3.0.2 → pactkit-3.0.4}/tests/e2e/test_gate_bypass_e2e.py +0 -0
  1476. {pactkit-3.0.2 → pactkit-3.0.4}/tests/e2e/test_precommit_chain_e2e.py +0 -0
  1477. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/agent_parser/agents_dir/researcher.yaml +0 -0
  1478. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/agent_parser/agents_dir/writer.yaml +0 -0
  1479. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/agent_parser/langgraph_app.py +0 -0
  1480. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/agent_parser/mcp_settings.json +0 -0
  1481. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/api_call_parser/axios_style.tsx +0 -0
  1482. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/api_call_parser/dynamic.tsx +0 -0
  1483. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/api_call_parser/page.tsx +0 -0
  1484. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/__root__.txt +0 -0
  1485. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/accept-candidates.txt +0 -0
  1486. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/adopt.txt +0 -0
  1487. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/audit.txt +0 -0
  1488. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/backfill-release.txt +0 -0
  1489. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/board.txt +0 -0
  1490. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/clean.txt +0 -0
  1491. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/commit-gate.txt +0 -0
  1492. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/context.txt +0 -0
  1493. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/continuation.txt +0 -0
  1494. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/coverage-gate.txt +0 -0
  1495. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/deps.txt +0 -0
  1496. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/doctor.txt +0 -0
  1497. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/done-verify.txt +0 -0
  1498. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/evidence-measure.txt +0 -0
  1499. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/garden.txt +0 -0
  1500. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/gate.txt +0 -0
  1501. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/generate-id.txt +0 -0
  1502. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/governance.txt +0 -0
  1503. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/guard.txt +0 -0
  1504. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/guide.txt +0 -0
  1505. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/init.txt +0 -0
  1506. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/interface-summary.txt +0 -0
  1507. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/invariants-refresh.txt +0 -0
  1508. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/issue-sync.txt +0 -0
  1509. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lesson-append.txt +0 -0
  1510. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lint-adr.txt +0 -0
  1511. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lint-context.txt +0 -0
  1512. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lint-lessons.txt +0 -0
  1513. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lint-testcase.txt +0 -0
  1514. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/lint.txt +0 -0
  1515. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/mcp.txt +0 -0
  1516. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/observe.txt +0 -0
  1517. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/project-preflight.txt +0 -0
  1518. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/reconcile.txt +0 -0
  1519. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/redetect-stack.txt +0 -0
  1520. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/report.txt +0 -0
  1521. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/risk.txt +0 -0
  1522. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/rules-eval.txt +0 -0
  1523. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/schema.txt +0 -0
  1524. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/sec-scope.txt +0 -0
  1525. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/secrets-baseline.txt +0 -0
  1526. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/spec-graph.txt +0 -0
  1527. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/spec-lint.txt +0 -0
  1528. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/spec-preflight.txt +0 -0
  1529. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/spec-status.txt +0 -0
  1530. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/stats.txt +0 -0
  1531. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/sync.txt +0 -0
  1532. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/test-map.txt +0 -0
  1533. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/uninstall.txt +0 -0
  1534. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/update.txt +0 -0
  1535. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/upgrade.txt +0 -0
  1536. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/version.txt +0 -0
  1537. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/visualize.txt +0 -0
  1538. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/work-unit.txt +0 -0
  1539. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/cli_help_golden/workflow.txt +0 -0
  1540. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/copy_claude.yaml +0 -0
  1541. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/copy_codex.yaml +0 -0
  1542. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/copy_github.yaml +0 -0
  1543. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/empty.yaml +0 -0
  1544. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/full_legacy.yaml +0 -0
  1545. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/minimal.yaml +0 -0
  1546. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/config_golden/unknown_keys.yaml +0 -0
  1547. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-001.md +0 -0
  1548. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-002.md +0 -0
  1549. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-003.md +0 -0
  1550. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-004.md +0 -0
  1551. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-005.md +0 -0
  1552. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-006.md +0 -0
  1553. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-007.md +0 -0
  1554. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-008.md +0 -0
  1555. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-009.md +0 -0
  1556. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-010.md +0 -0
  1557. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-011.md +0 -0
  1558. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-012.md +0 -0
  1559. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-013.md +0 -0
  1560. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-014.md +0 -0
  1561. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-015.md +0 -0
  1562. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-016.md +0 -0
  1563. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-017.md +0 -0
  1564. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/STORY-c-018.md +0 -0
  1565. {pactkit-3.0.2 → pactkit-3.0.4}/tests/fixtures/rules_corpus/manifest.json +0 -0
  1566. {pactkit-3.0.2/tests/e2e/cli → pactkit-3.0.4/tests/integration}/__init__.py +0 -0
  1567. {pactkit-3.0.2 → pactkit-3.0.4}/tests/integration/test_deploy_classic.py +0 -0
  1568. {pactkit-3.0.2 → pactkit-3.0.4}/tests/scripts/refresh_host_prompt_snapshots.py +0 -0
  1569. {pactkit-3.0.2 → pactkit-3.0.4}/tests/scripts/refresh_reference_docs.py +0 -0
  1570. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_accept_candidates.py +0 -0
  1571. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_agent_features.py +0 -0
  1572. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_agent_frontmatter.py +0 -0
  1573. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_agents_enrichment.py +0 -0
  1574. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_audit.py +0 -0
  1575. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_audit_suggested_tasks.py +0 -0
  1576. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_b1_effective_config.py +0 -0
  1577. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_b2_display_accuracy.py +0 -0
  1578. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_baseline_failure_surface.py +0 -0
  1579. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_blast_radius.py +0 -0
  1580. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_board_bug027.py +0 -0
  1581. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_board_sections.py +0 -0
  1582. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug001_skill_path.py +0 -0
  1583. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug004_dead_set.py +0 -0
  1584. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug005_archive_taskless.py +0 -0
  1585. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug007_stale_trace_refs.py +0 -0
  1586. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug008_stale_command_refs.py +0 -0
  1587. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug009_project_config_backfill.py +0 -0
  1588. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug010_rewrite_yaml.py +0 -0
  1589. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug011_stale_refs.py +0 -0
  1590. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug013_config_single_source.py +0 -0
  1591. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug014_version_hygiene.py +0 -0
  1592. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug017_project_init_playbook.py +0 -0
  1593. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug018_issue_tracker_verification.py +0 -0
  1594. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug019_venv_deployment.py +0 -0
  1595. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug020_claude_md_backup.py +0 -0
  1596. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug025_release_delegation.py +0 -0
  1597. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug026_version_sync.py +0 -0
  1598. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug028_ghost_refs.py +0 -0
  1599. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug029_stack_detection_fallback.py +0 -0
  1600. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug030_spec_lint_cli.py +0 -0
  1601. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug031_docstring_accuracy.py +0 -0
  1602. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug034_plan_metadata_template.py +0 -0
  1603. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_021.py +0 -0
  1604. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_022.py +0 -0
  1605. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_023.py +0 -0
  1606. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim001_env_detection.py +0 -0
  1607. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim002_instruction_collision.py +0 -0
  1608. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim003.py +0 -0
  1609. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim004.py +0 -0
  1610. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim005.py +0 -0
  1611. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim006.py +0 -0
  1612. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_bug_slim089_global_claude_md.py +0 -0
  1613. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_c1_body_snapshots.py +0 -0
  1614. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_c1_legacy_and_cost.py +0 -0
  1615. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_candidate_cleanup.py +0 -0
  1616. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_check_command.py +0 -0
  1617. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_check_extensions_072_073.py +0 -0
  1618. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_check_playbook_072_073.py +0 -0
  1619. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_clean_scrubs_events.py +0 -0
  1620. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_codegraph_views.py +0 -0
  1621. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_command_frontmatter.py +0 -0
  1622. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_command_ownership_v2.py +0 -0
  1623. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_command_visualize_modes.py +0 -0
  1624. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_complexity.py +0 -0
  1625. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_config_auto_merge.py +0 -0
  1626. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_config_sync_precedence.py +0 -0
  1627. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_constitution_sharpening.py +0 -0
  1628. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_context_gen.py +0 -0
  1629. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_continuation_hardening.py +0 -0
  1630. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_create_skill.py +0 -0
  1631. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_cross_flow_matrix.py +0 -0
  1632. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_decision_traceability.py +0 -0
  1633. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_deploy_ledger_lifecycle.py +0 -0
  1634. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_deploy_ownership_safety.py +0 -0
  1635. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_deployed_prompts_have_no_placeholders.py +0 -0
  1636. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_deployment_transaction.py +0 -0
  1637. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_deps.py +0 -0
  1638. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_design_command.py +0 -0
  1639. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_done_gates.py +0 -0
  1640. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_draw_prompt.py +0 -0
  1641. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_draw_references.py +0 -0
  1642. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_drawio_mcp.py +0 -0
  1643. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_enforcement.py +0 -0
  1644. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_engine_robustness.py +0 -0
  1645. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_garden.py +0 -0
  1646. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_gate_fail_closed.py +0 -0
  1647. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_gate_junit_counts.py +0 -0
  1648. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_gate_migration.py +0 -0
  1649. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_gate_telemetry.py +0 -0
  1650. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_home_path_fix.py +0 -0
  1651. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_host_prompt_snapshots.py +0 -0
  1652. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_20260830_gate_cli.py +0 -0
  1653. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_20260901_gate_docsonly.py +0 -0
  1654. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_20260903_design_research.py +0 -0
  1655. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_20260903_visualize_sync.py +0 -0
  1656. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_20260914_guide_wording.py +0 -0
  1657. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_command.py +0 -0
  1658. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_legacy_constitution.py +0 -0
  1659. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim202609166519bc076345_gate_dispatch.py +0 -0
  1660. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim20260916991f0b0d0a2e_audit_findings.py +0 -0
  1661. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim2026091699cba1b49506_astra_findings.py +0 -0
  1662. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim20260916bcd9deb4bec0_watchdog.py +0 -0
  1663. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim20260916c4f2a9e6b013_gate_review.py +0 -0
  1664. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim20260916cccbb8ee26fb_atomic_write.py +0 -0
  1665. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_hotfix_slim202609200d44cb016534_doctor_verdict.py +0 -0
  1666. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_init_global_disclosure.py +0 -0
  1667. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_init_guard.py +0 -0
  1668. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_init_playbook_074.py +0 -0
  1669. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_interface_summary.py +0 -0
  1670. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_lang_profiles.py +0 -0
  1671. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_layer_violations.py +0 -0
  1672. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_legacy_engine_freeze.py +0 -0
  1673. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_lessons_rotation_075.py +0 -0
  1674. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_list_stories.py +0 -0
  1675. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_mcp_integration.py +0 -0
  1676. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_model_config.py +0 -0
  1677. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_modular_constitution.py +0 -0
  1678. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_monorepo_detect.py +0 -0
  1679. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_multi_prefix.py +0 -0
  1680. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_observe.py +0 -0
  1681. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_orchestration_cost.py +0 -0
  1682. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_org_baseline.py +0 -0
  1683. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_p6_spec_edit_human_channel.py +0 -0
  1684. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_pdca_semantics_v2.py +0 -0
  1685. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_pdca_slim.py +0 -0
  1686. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_precommit_bridge.py +0 -0
  1687. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_project_contract.py +0 -0
  1688. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_project_root.py +0 -0
  1689. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_project_visibility.py +0 -0
  1690. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_prompt_cli_contract.py +0 -0
  1691. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_prompt_cli_refs.py +0 -0
  1692. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_prompt_quality_075.py +0 -0
  1693. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_prompt_structural_invariants.py +0 -0
  1694. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_prompts_package.py +0 -0
  1695. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_push_gate.py +0 -0
  1696. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_readme_counts.py +0 -0
  1697. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_reference_drift.py +0 -0
  1698. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_release.py +0 -0
  1699. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_release_field.py +0 -0
  1700. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_release_v110.py +0 -0
  1701. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_render_prompt.py +0 -0
  1702. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_report_parser.py +0 -0
  1703. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_report_unified.py +0 -0
  1704. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_resolve_scope.py +0 -0
  1705. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_review_command.py +0 -0
  1706. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_rule_diagnostics.py +0 -0
  1707. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_rule_registry_architecture.py +0 -0
  1708. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_rules_enrichment.py +0 -0
  1709. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_rules_eval.py +0 -0
  1710. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_run_events.py +0 -0
  1711. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_run_stats.py +0 -0
  1712. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_scaffold.py +0 -0
  1713. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_scaffold_developer_prefix.py +0 -0
  1714. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_script_extraction.py +0 -0
  1715. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_secrets_engine.py +0 -0
  1716. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_security_dimension_rules.py +0 -0
  1717. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_selective_deploy.py +0 -0
  1718. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_session_context.py +0 -0
  1719. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_skills_enrichment.py +0 -0
  1720. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_slim_deps_088.py +0 -0
  1721. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_smart_regression.py +0 -0
  1722. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_snapshot_regen_shrink_guard.py +0 -0
  1723. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_solution_design_rule.py +0 -0
  1724. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_spec_guard_repeat.py +0 -0
  1725. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_spec_preflight.py +0 -0
  1726. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_sprint_command.py +0 -0
  1727. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_stack_references.py +0 -0
  1728. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_stack_test_command.py +0 -0
  1729. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_status_command.py +0 -0
  1730. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_statusline.py +0 -0
  1731. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story014_release.py +0 -0
  1732. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story015_ci_lint_gate.py +0 -0
  1733. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story016_claude_md.py +0 -0
  1734. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story017_init_claude_md.py +0 -0
  1735. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story018_arch_staleness.py +0 -0
  1736. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story019_bailout.py +0 -0
  1737. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story020_horizon.py +0 -0
  1738. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story021_rfc.py +0 -0
  1739. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story022_decision_tree.py +0 -0
  1740. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story023_test_quality.py +0 -0
  1741. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story024_native_agent.py +0 -0
  1742. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story026_issue_tracker.py +0 -0
  1743. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story030_lint.py +0 -0
  1744. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story031_git_init_guard.py +0 -0
  1745. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story032_greenfield_redirect.py +0 -0
  1746. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story033_config_backfill.py +0 -0
  1747. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story034_plan_config_refresh.py +0 -0
  1748. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story035_readme_docs.py +0 -0
  1749. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story037_regression_fix.py +0 -0
  1750. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story038_call_graph_update.py +0 -0
  1751. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story039_venv_config.py +0 -0
  1752. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story040_layered_claude_md.py +0 -0
  1753. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story042_spec_linter.py +0 -0
  1754. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story043_active_clarify.py +0 -0
  1755. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story044_consistency_check.py +0 -0
  1756. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story045_auto_pr.py +0 -0
  1757. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story047_enterprise_flags.py +0 -0
  1758. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story048_worktree_isolation.py +0 -0
  1759. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story049_community_standards.py +0 -0
  1760. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story050_doc_only_shortcut.py +0 -0
  1761. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story051_workflow_streamlining.py +0 -0
  1762. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story052_conditional_github_release.py +0 -0
  1763. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story053_impact_regression.py +0 -0
  1764. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story055_commands.py +0 -0
  1765. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story055_config.py +0 -0
  1766. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story055_spec_linter.py +0 -0
  1767. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story056_commands.py +0 -0
  1768. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story056_config.py +0 -0
  1769. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story057_implicit_cleanup.py +0 -0
  1770. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story058_opencode_extraction.py +0 -0
  1771. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story058_routing_fix.py +0 -0
  1772. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story060_init_hang.py +0 -0
  1773. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story061_remove_thinking.py +0 -0
  1774. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story063_prompt_slimming.py +0 -0
  1775. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story064_venv_local_md.py +0 -0
  1776. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story065_sprint_model.py +0 -0
  1777. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story072_developer_prefix.py +0 -0
  1778. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story133_debug_skill.py +0 -0
  1779. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_2026090301_rule_compliance.py +0 -0
  1780. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_2026090333_sdlc_t1.py +0 -0
  1781. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_202609037a_practice_batch2.py +0 -0
  1782. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_20260903b5_practice_guides.py +0 -0
  1783. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_202609144d0b3cb593aa_context_reuse.py +0 -0
  1784. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_pdca_host_capsules.py +0 -0
  1785. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim009_lazy_rules.py +0 -0
  1786. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim010_dry_refactor.py +0 -0
  1787. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim011_command_rules.py +0 -0
  1788. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_clean.py +0 -0
  1789. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_guard.py +0 -0
  1790. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_next_id.py +0 -0
  1791. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_regression.py +0 -0
  1792. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_sec_scope.py +0 -0
  1793. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim014_validators.py +0 -0
  1794. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim015_doctor.py +0 -0
  1795. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim016_testmap_lint.py +0 -0
  1796. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim017.py +0 -0
  1797. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim018.py +0 -0
  1798. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim019_plan_subphases.py +0 -0
  1799. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim020_explore_stall_fix.py +0 -0
  1800. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim021.py +0 -0
  1801. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim022.py +0 -0
  1802. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim023.py +0 -0
  1803. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim024.py +0 -0
  1804. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim025.py +0 -0
  1805. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim026.py +0 -0
  1806. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim027.py +0 -0
  1807. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim029.py +0 -0
  1808. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim031.py +0 -0
  1809. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim032.py +0 -0
  1810. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim033.py +0 -0
  1811. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim034.py +0 -0
  1812. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim035.py +0 -0
  1813. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim036.py +0 -0
  1814. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim037.py +0 -0
  1815. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim038.py +0 -0
  1816. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim039.py +0 -0
  1817. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim040.py +0 -0
  1818. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim041.py +0 -0
  1819. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim042.py +0 -0
  1820. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim043.py +0 -0
  1821. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim044.py +0 -0
  1822. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim045.py +0 -0
  1823. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim046.py +0 -0
  1824. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim047.py +0 -0
  1825. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim048.py +0 -0
  1826. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim051.py +0 -0
  1827. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim052.py +0 -0
  1828. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim053.py +0 -0
  1829. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim055.py +0 -0
  1830. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim056.py +0 -0
  1831. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim060_codex_profile.py +0 -0
  1832. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim063.py +0 -0
  1833. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim076_multistack.py +0 -0
  1834. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim077_monorepo_stack.py +0 -0
  1835. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim078.py +0 -0
  1836. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim079.py +0 -0
  1837. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim080.py +0 -0
  1838. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim082.py +0 -0
  1839. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim083.py +0 -0
  1840. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim084.py +0 -0
  1841. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim098_pdca_nudge.py +0 -0
  1842. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim099_act_context_ref.py +0 -0
  1843. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim104_should_semantics.py +0 -0
  1844. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim107.py +0 -0
  1845. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim109_journey_spec.py +0 -0
  1846. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim111_playwright_assertion.py +0 -0
  1847. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim112_rules_split.py +0 -0
  1848. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim114_journey_sync.py +0 -0
  1849. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim119.py +0 -0
  1850. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim120.py +0 -0
  1851. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim121.py +0 -0
  1852. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim125.py +0 -0
  1853. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim126.py +0 -0
  1854. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim128_engineering_concerns.py +0 -0
  1855. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim132.py +0 -0
  1856. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim134_no_model_in_frontmatter.py +0 -0
  1857. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim135_config_schema.py +0 -0
  1858. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim139_skill_manifest.py +0 -0
  1859. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim141_manifest_hash.py +0 -0
  1860. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim143_spec_graph.py +0 -0
  1861. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim144_wave_mode.py +0 -0
  1862. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim145.py +0 -0
  1863. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim146.py +0 -0
  1864. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim147.py +0 -0
  1865. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim148.py +0 -0
  1866. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim150.py +0 -0
  1867. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260911c4a8e17b6d02_baseline_signature.py +0 -0
  1868. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260915eaf18678ce23_commit_path.py +0 -0
  1869. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim202609160fe9825c04b7_yaml_fidelity.py +0 -0
  1870. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim2026091644dd0bd263d1_sync_order.py +0 -0
  1871. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260916823f60779f1a_verification_receipt.py +0 -0
  1872. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim2026091806bbe53c5884_spec_self_amend.py +0 -0
  1873. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260918164ea9fe09e9_bypass_form.py +0 -0
  1874. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260918864001ab2cad_secrets_baseline.py +0 -0
  1875. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260918e76e4a89b0ad_static_signal.py +0 -0
  1876. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260919b7362f043437_gate_layers.py +0 -0
  1877. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim2026092010bf0bf77b9f_prompt_tool_parity.py +0 -0
  1878. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260920bc98b2d93bc7_has_test_evidence.py +0 -0
  1879. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim20260921c7a3f696f79f_bypass_channel_parity.py +0 -0
  1880. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim_stop_hook.py +0 -0
  1881. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_story_slim_work_units.py +0 -0
  1882. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_test_policy_fast.py +0 -0
  1883. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_tools.py +0 -0
  1884. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_topology_parsers_066.py +0 -0
  1885. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_uninstall.py +0 -0
  1886. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_uninstall_cli_defaults.py +0 -0
  1887. {pactkit-3.0.2 → pactkit-3.0.4}/tests/unit/test_visualize_multilang_chain.py +0 -0
@@ -0,0 +1,34 @@
1
+ # pactkit:generated source=pactkit.yaml renderer=github-workflow
2
+ name: PactKit CI
3
+
4
+ on:
5
+ push:
6
+ branches: [main]
7
+ pull_request:
8
+ branches: [main]
9
+
10
+ jobs:
11
+ test:
12
+ runs-on: slimmini
13
+ steps:
14
+ - uses: actions/checkout@v7
15
+ with:
16
+ fetch-depth: 0
17
+
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v7
20
+ with:
21
+ python-version: "3.11"
22
+
23
+ - name: Install dependencies
24
+ run: |
25
+ python -m pip install --upgrade pip
26
+ pip install -e ".[visualize]"
27
+ pip install pytest ruff
28
+ pactkit init
29
+
30
+ - name: Lint
31
+ run: ruff check src/ tests/
32
+
33
+ - name: Test
34
+ run: pytest tests/ -v
@@ -0,0 +1,133 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+ jobs:
9
+ test:
10
+ # 2026-09-24: not `ubuntu-latest`. The org `actions` budget is $0 with
11
+ # prevent_further_usage, so a job asking for a hosted runner gets none
12
+ # (runner_id=0, fails in seconds) — which would leave this release gate
13
+ # permanently un-runnable. The org-level self-hosted runner carries the
14
+ # `slimmini` label. Only private repos are affected by the budget.
15
+ runs-on: slimmini
16
+ strategy:
17
+ matrix:
18
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
19
+ steps:
20
+ # fetch-depth: 0 — same reason as PactKit CI: the AC6/AC7 Spec-scope
21
+ # guards need the commit that names their Spec, and a default checkout
22
+ # does not have it. Without this the release is blocked by four guards
23
+ # that cannot attribute changes plus two that silently measure the
24
+ # working tree.
25
+ - uses: actions/checkout@v7
26
+ with:
27
+ fetch-depth: 0
28
+
29
+ - name: Set up Python ${{ matrix.python-version }}
30
+ uses: actions/setup-python@v7
31
+ with:
32
+ python-version: ${{ matrix.python-version }}
33
+
34
+ - name: Install dependencies
35
+ run: |
36
+ python -m pip install --upgrade pip
37
+ pip install -e ".[visualize,lint,test]"
38
+ pip install ruff
39
+
40
+ - name: Lint
41
+ run: ruff check src/ tests/
42
+
43
+ - name: Test
44
+ run: pytest tests/ -q
45
+
46
+ publish:
47
+ needs: test
48
+ # See the `test` job above. OIDC trusted publishing is supported on
49
+ # self-hosted runners — the token is still minted by GitHub for this job —
50
+ # and the 45-minute acceptance-wait loop below is free here rather than
51
+ # billed by the minute.
52
+ runs-on: slimmini
53
+ environment: pypi
54
+ permissions:
55
+ id-token: write
56
+ contents: read
57
+ # 2026-09-11 review round 2, F4: the acceptance-wait step reads workflow
58
+ # runs via `gh run list`; without an explicit `actions: read` the job
59
+ # token is denied and the wait degrades into a 45-minute timeout.
60
+ actions: read
61
+ steps:
62
+ - uses: actions/checkout@v7
63
+
64
+ # STORY-slim-20260911b2bbd79889e0 C2/R8 (2026-09-11 review, finding 5):
65
+ # a tag may only publish after the Release Acceptance workflow has
66
+ # accepted the SAME commit — real wheels installed into a clean
67
+ # environment, adapter suites green with zero skips, journey verified.
68
+ # Fail-closed: no acceptance conclusion within the timeout, no publish.
69
+ # API/permission failures fail FAST with the stderr shown — only a
70
+ # legitimately still-running acceptance keeps waiting.
71
+ - name: Wait for Release Acceptance (this tag, this commit)
72
+ env:
73
+ GH_TOKEN: ${{ github.token }}
74
+ run: |
75
+ SHA="${{ github.sha }}"
76
+ # The SAME commit now has more than one acceptance run: the daily
77
+ # single-version one (push to main) and the release four-version one
78
+ # (this tag). `--commit` alone is ambiguous, and `.[0]` was "whichever
79
+ # the API listed first" — a green daily run could satisfy the gate
80
+ # without the release matrix ever finishing. Match the run that
81
+ # actually belongs to this release: this tag's push event.
82
+ TAG="${{ github.ref_name }}"
83
+ deadline=$(( $(date +%s) + 2700 ))
84
+ while :; do
85
+ if ! gh run list --workflow=release-acceptance.yml --commit "$SHA" \
86
+ --json status,conclusion,event,headBranch,headSha \
87
+ > "$RUNNER_TEMP/acceptance-runs.json" 2>"$RUNNER_TEMP/gh-err"; then
88
+ echo "::error::gh run list failed — permissions or API error, "
89
+ echo "NOT an acceptance-still-running state (review round 2, F4):"
90
+ cat "$RUNNER_TEMP/gh-err"
91
+ exit 1
92
+ fi
93
+ jq -r '.[] | " candidate: event=\(.event) ref=\(.headBranch) status=\(.status) conclusion=\(.conclusion)"' \
94
+ "$RUNNER_TEMP/acceptance-runs.json"
95
+ row=$(jq -r --arg tag "$TAG" --arg sha "$SHA" \
96
+ '[.[] | select(.event == "push" and .headBranch == $tag and .headSha == $sha)] | .[0] // empty' \
97
+ "$RUNNER_TEMP/acceptance-runs.json")
98
+ if [ -z "$row" ]; then
99
+ echo "no release acceptance for tag $TAG yet — waiting"
100
+ fi
101
+ if [ -n "$row" ]; then
102
+ status=$(printf '%s' "$row" | jq -r '.status')
103
+ conclusion=$(printf '%s' "$row" | jq -r '.conclusion')
104
+ echo "release-acceptance: status=$status conclusion=$conclusion"
105
+ if [ "$status" = "completed" ]; then
106
+ if [ "$conclusion" = "success" ]; then
107
+ echo "Release Acceptance passed for $SHA"
108
+ exit 0
109
+ fi
110
+ echo "::error::Release Acceptance concluded: $conclusion — refusing to publish"
111
+ exit 1
112
+ fi
113
+ fi
114
+ if [ "$(date +%s)" -ge "$deadline" ]; then
115
+ echo "::error::timed out waiting for Release Acceptance on $SHA"
116
+ exit 1
117
+ fi
118
+ sleep 30
119
+ done
120
+
121
+ - name: Set up Python
122
+ uses: actions/setup-python@v7
123
+ with:
124
+ python-version: "3.12"
125
+
126
+ - name: Install build tools
127
+ run: python -m pip install --upgrade pip build
128
+
129
+ - name: Build package
130
+ run: python -m build
131
+
132
+ - name: Publish to PyPI
133
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,261 @@
1
+ name: Release Acceptance
2
+
3
+ # STORY-slim-20260911b2bbd79889e0 C2/R8 + 2026-09-11 reviews: install the
4
+ # ACTUAL core wheel that is about to ship in a clean environment and prove
5
+ # the package-level surface. The ordinary CI tests the editable checkout;
6
+ # it cannot see packaging-level breaks (missing files in the wheel,
7
+ # dependency misdeclaration). This job can. publish.yml waits for this
8
+ # workflow's conclusion before publishing a tag.
9
+ #
10
+ # Zero-credential split (2026-09-11, first real runner run 34607922520):
11
+ # GITHUB_TOKEN cannot read the private adapter repos, and the owner chose
12
+ # no PAT/secrets. The core wheel + adapter COMBO acceptance therefore runs
13
+ # in each adapter repo's own release-acceptance workflow — it checks out
14
+ # ITSELF (its token suffices) and installs the RELEASED core from PyPI,
15
+ # which the resolver pins for real. Each adapter repo covers classic + its
16
+ # own host; the union covers all three. What remains here is the core-only
17
+ # quality gate: wheel build/install/version, documented extras, wheel-mode
18
+ # prompt snapshots (classic; the host assertion scales with installed
19
+ # adapters), and the classic journey.
20
+
21
+ on:
22
+ push:
23
+ branches: [main]
24
+ # Same inert-doc set as PactKit CI — spec/acceptance docs are not in the
25
+ # wheel, so the packaging assertions cannot see them. Tags always run
26
+ # (publish gate) regardless of paths.
27
+ paths-ignore:
28
+ - "docs/specs/**"
29
+ - "docs/acceptance/**"
30
+ tags: ["v*"]
31
+ pull_request:
32
+ branches: [main]
33
+ workflow_dispatch:
34
+ inputs:
35
+ mode:
36
+ description: "daily (3.11 single version) or release (3.10-3.13 full matrix)"
37
+ type: choice
38
+ options: [daily, release]
39
+ default: daily
40
+
41
+ # STORY-slim-20260917c943d7aaeb7c (CI cost): same rationale as PactKit CI —
42
+ # cancel superseded branch runs. Tag runs are excluded from the group name
43
+ # so a push to main can never cancel an in-flight tag acceptance that
44
+ # publish.yml is waiting on.
45
+ concurrency:
46
+ group: release-acceptance-${{ github.ref }}
47
+ cancel-in-progress: true
48
+
49
+ jobs:
50
+ # R4 (STORY-slim-20260917c18f4a962b70): the acceptance matrix is layered
51
+ # by event — daily (PR / push main / manual daily) proves the 3.11
52
+ # baseline cheaply; release (tag v* / manual release) proves the full
53
+ # supported range. The assertions are IDENTICAL in both configs — only
54
+ # the version dimension shrinks (降低版本维度不删验收断言). PRs and main
55
+ # both run: a PR green light never skips the final main integration run;
56
+ # an opened PR's branch pushes fire `synchronize` and rerun this workflow.
57
+ config:
58
+ # 2026-09-24: the org `actions` budget is $0 with prevent_further_usage, so
59
+ # a job that asks for `ubuntu-latest` gets no runner at all (runner_id=0,
60
+ # seconds to fail) — see the runner migration in the sibling workflow. The
61
+ # org-level runner carries the `slimmini` label. The budget blocks hosted
62
+ # jobs for private repos only; public repos are unaffected.
63
+ runs-on: slimmini
64
+ outputs:
65
+ versions: ${{ steps.pick.outputs.versions }}
66
+ config_name: ${{ steps.pick.outputs.config_name }}
67
+ steps:
68
+ - name: Pick the acceptance matrix for this event
69
+ id: pick
70
+ run: |
71
+ if [[ "${{ github.ref }}" == refs/tags/v* ]] \
72
+ || [[ "${{ inputs.mode }}" == "release" ]]; then
73
+ echo 'versions=["3.10","3.11","3.12","3.13"]' >> "$GITHUB_OUTPUT"
74
+ echo "config_name=release (full 3.10-3.13 matrix)" >> "$GITHUB_OUTPUT"
75
+ else
76
+ echo 'versions=["3.11"]' >> "$GITHUB_OUTPUT"
77
+ echo "config_name=daily (3.11 single version)" >> "$GITHUB_OUTPUT"
78
+ fi
79
+
80
+ core-wheel:
81
+ needs: config
82
+ # See the `config` job above for why this is not `ubuntu-latest`.
83
+ runs-on: slimmini
84
+ strategy:
85
+ fail-fast: false
86
+ # R8: the accepted Python range must match what the package claims
87
+ # (pyproject requires-python >=3.10) — proven IN FULL on release
88
+ # events; daily events prove the 3.11 baseline only.
89
+ matrix:
90
+ python-version: ${{ fromJSON(needs.config.outputs.versions) }}
91
+ steps:
92
+ - uses: actions/checkout@v7
93
+
94
+ - name: Set up Python ${{ matrix.python-version }}
95
+ uses: actions/setup-python@v7
96
+ with:
97
+ python-version: ${{ matrix.python-version }}
98
+
99
+ - name: Build the core wheel
100
+ run: |
101
+ python -m pip install --upgrade pip build
102
+ python -m build --wheel --outdir dist/ .
103
+ python -m build --sdist --outdir dist/ .
104
+
105
+ # STORY-slim-20260917beaa87bc5d27: the dev repo is private and the
106
+ # public mirror is curated docs only — for a procurement review the
107
+ # PyPI artifacts ARE the source of record for license and code. A
108
+ # packaging regression that drops LICENSE from the wheel/sdist would
109
+ # otherwise surface as a customer-side legal question, not a red build.
110
+ - name: Built artifacts carry LICENSE and sources (procurement)
111
+ run: |
112
+ python -m pip install --upgrade pip build > /dev/null 2>&1 || true
113
+ WHEEL=$(ls dist/pactkit-*.whl)
114
+ SDIST=$(ls dist/pactkit-*.tar.gz)
115
+ python - "$WHEEL" "$SDIST" <<'PY'
116
+ import sys, tarfile, zipfile
117
+ wheel, sdist = sys.argv[1], sys.argv[2]
118
+ names = zipfile.ZipFile(wheel).namelist()
119
+ assert any(n.endswith("LICENSE") for n in names), "wheel is missing LICENSE"
120
+ py = [n for n in names if n.endswith(".py")]
121
+ assert len(py) >= 90, f"wheel source count suspicious: {len(py)} files"
122
+ tarnames = tarfile.open(sdist).getnames()
123
+ assert any(n.endswith("LICENSE") for n in tarnames), "sdist is missing LICENSE"
124
+ assert any(n.endswith("src/pactkit/__init__.py") for n in tarnames), "sdist is missing sources"
125
+ print(f"LICENSE + sources verified: wheel {len(py)} .py, sdist ok")
126
+ PY
127
+
128
+ - name: The runner provides a per-job temp directory
129
+ run: |
130
+ # Every path below lives under $RUNNER_TEMP, not /tmp. On a hosted
131
+ # runner /tmp is a fresh VM per run, so a leftover venv was
132
+ # impossible; on a persistent self-hosted runner it survives, and
133
+ # the AC11 assertion below would then be checking a venv built by an
134
+ # earlier run — a clean-environment guarantee that quietly stopped
135
+ # holding. Assert the runner supplies the directory rather than
136
+ # discovering it as a stray `/accept`.
137
+ test -n "$RUNNER_TEMP" \
138
+ || { echo "::error::RUNNER_TEMP is unset — this job needs a runner that provides one"; exit 1; }
139
+
140
+ - name: Install from the wheel into a clean environment (AC11)
141
+ run: |
142
+ python -m venv "$RUNNER_TEMP/accept"
143
+ # Direct wheel path: the package under acceptance comes from the
144
+ # local dist/ (never PyPI, never editable); third-party deps
145
+ # (pyyaml) resolve from the index.
146
+ "$RUNNER_TEMP/accept/bin/pip" install dist/pactkit-*.whl
147
+ ! "$RUNNER_TEMP/accept/bin/pip" list | grep -q '\-e '
148
+ "$RUNNER_TEMP/accept/bin/pactkit" version
149
+
150
+ - name: Base wheel + documented extras resolve (AC11)
151
+ run: |
152
+ python -m venv "$RUNNER_TEMP/extras"
153
+ # The extras README documents must actually resolve from the built
154
+ # wheel. Adapter extras are deliberately excluded here: they pin
155
+ # the released core from the index, which during release prep is
156
+ # older than this build (core-first publish order).
157
+ WHEEL=$(ls dist/pactkit-*.whl)
158
+ "$RUNNER_TEMP/extras/bin/pip" install "$WHEEL[lint,visualize]"
159
+ "$RUNNER_TEMP/extras/bin/pactkit" version
160
+
161
+ - name: Prompt-body snapshots from the wheel (AC10/R7)
162
+ env:
163
+ PACTKIT_SNAPSHOT_FROM_WHEEL: "1"
164
+ run: |
165
+ # Wheel mode: the deploy subprocesses must import the WHEEL — no
166
+ # checkout PYTHONPATH, provenance asserted (site-packages origin),
167
+ # and every installed host participates in the comparison (this
168
+ # core-only environment compares classic; each adapter repo's
169
+ # acceptance adds its own host). A skip fails the step. The empty
170
+ # `-c` ini keeps the checkout's pyproject (pythonpath=src) from
171
+ # shadowing the installed wheel.
172
+ "$RUNNER_TEMP/accept/bin/pip" install pytest
173
+ printf '[pytest]\n' > "$RUNNER_TEMP/acceptance-pytest.ini"
174
+ cd "$RUNNER_TEMP"
175
+ "$RUNNER_TEMP/accept/bin/pytest" \
176
+ "$GITHUB_WORKSPACE/tests/unit/test_c1_body_snapshots.py" \
177
+ -c "$RUNNER_TEMP/acceptance-pytest.ini" -p no:cacheprovider \
178
+ --junitxml="$RUNNER_TEMP/snap-results.xml" -q \
179
+ || { echo "::error::prompt-body snapshot comparison failed"; exit 1; }
180
+ # The heredoc is quoted, so the path is passed as an argument rather
181
+ # than interpolated.
182
+ "$RUNNER_TEMP/accept/bin/python" - "$RUNNER_TEMP/snap-results.xml" <<'EOF'
183
+ import sys
184
+ import xml.etree.ElementTree as ET
185
+
186
+ root = ET.parse(sys.argv[1]).getroot()
187
+ skipped = sum(int(s.get("skipped", 0)) for s in root.iter("testsuite"))
188
+ errors = sum(int(s.get("errors", 0)) for s in root.iter("testsuite"))
189
+ if skipped or errors:
190
+ print(f"::error::snapshot step: {skipped} skipped, {errors} errors — "
191
+ "skip is failure under release acceptance")
192
+ sys.exit(1)
193
+ print("snapshots: 0 skipped, 0 errors")
194
+ EOF
195
+
196
+ - name: Classic journey from the wheel (AC12, CLI layer)
197
+ run: |
198
+ # The CLI is invoked by ABSOLUTE PATH from the acceptance venv
199
+ # (review round 2, F3): a bare `pactkit` would resolve against
200
+ # whatever the runner has preinstalled — or nothing at all.
201
+ # OpenCode/Codex journeys run in their own adapter repos'
202
+ # acceptance workflows (zero-credential split).
203
+ PACTKIT="$RUNNER_TEMP/accept/bin/pactkit"
204
+ command -v "$PACTKIT" >/dev/null 2>&1 \
205
+ || { echo "::error::acceptance venv has no pactkit entry point"; exit 1; }
206
+ export HOME="$RUNNER_TEMP/journey-home"
207
+ export XDG_CONFIG_HOME="$RUNNER_TEMP/journey-home/.config"
208
+ rm -rf "$HOME" "$RUNNER_TEMP/journey-proj"
209
+ mkdir -p "$HOME" "$RUNNER_TEMP/journey-proj"
210
+ cd "$RUNNER_TEMP/journey-proj"
211
+ git init -q .
212
+ git config user.email journey@example.invalid
213
+ git config user.name journey
214
+
215
+ fail() { echo "::error::journey: $1"; exit 1; }
216
+ root="$HOME/.claude"
217
+ "$PACTKIT" version
218
+ "$PACTKIT" init --format classic > init.log 2>&1 \
219
+ || { cat init.log; fail "classic init failed"; }
220
+ [ -f "$root/.pactkit-deployed.json" ] || fail "no deployment manifest"
221
+ entry="$root/skills/project-plan/SKILL.md"
222
+ [ -f "$entry" ] || fail "method entry point missing ($entry)"
223
+
224
+ mkdir -p "$root/rules"
225
+ printf '# My team conventions\n- ours, not PactKit\x27s\n' > "$root/rules/my-team.md"
226
+ "$PACTKIT" update --format classic > update.log 2>&1 \
227
+ || { cat update.log; fail "classic update failed"; }
228
+ [ -f "$root/rules/my-team.md" ] || fail "user rule file lost by update"
229
+
230
+ "$PACTKIT" uninstall --target "$root" > uninstall.log 2>&1 \
231
+ || { cat uninstall.log; fail "classic uninstall failed"; }
232
+ [ -f "$root/rules/my-team.md" ] || fail "user file deleted by uninstall"
233
+ [ ! -f "$root/skills/pactkit-board/scripts/board.py" ] \
234
+ || fail "manifest-owned file survived uninstall"
235
+ echo "classic journey OK (CLI layer)"
236
+ # Real-host runtime sessions are NOT exercised here — recorded as
237
+ # UNVERIFIED per R8: 自动化 CLI/产物检查与真实宿主运行记录 MUST
238
+ # 分开标注.
239
+
240
+ # R8 (STORY-slim-20260917c18f4a962b70): every CI summary states the
241
+ # event, SHA, verification config, Python/host coverage and the
242
+ # actual run/skip reasons — a green core-only acceptance must never
243
+ # read as "all hosts verified".
244
+ - name: CI summary (R8)
245
+ if: always()
246
+ run: |
247
+ ALL='${{ needs.config.outputs.versions }}'
248
+ {
249
+ echo "## Release Acceptance — ${{ needs.config.outputs.config_name }}"
250
+ echo ""
251
+ echo "| field | value |"
252
+ echo "|---|---|"
253
+ echo "| event | \`${{ github.event_name }}\` |"
254
+ echo "| ref | \`${{ github.ref }}\` |"
255
+ echo "| sha | \`${{ github.sha }}\` |"
256
+ echo "| config | ${{ needs.config.outputs.config_name }} |"
257
+ echo "| versions this config | $ALL |"
258
+ echo "| this runner | ${{ matrix.python-version }} |"
259
+ echo "| host coverage | core-only: classic prompt snapshots compared; opencode/codex adapters are NOT verified here (their own repos' release-acceptance covers them) |"
260
+ echo "| skip policy | a skip in the snapshot step fails the step (skip = failure, never a pass) |"
261
+ } >> "$GITHUB_STEP_SUMMARY"
@@ -0,0 +1,48 @@
1
+ name: Runner heartbeat
2
+
3
+ # The self-hosted runner is the only place this org's private-repo CI can run:
4
+ # the org `actions` budget is $0 with `prevent_further_usage: true`, so hosted
5
+ # jobs stop outright and there is no fallback to fail over to. A runner outage
6
+ # is therefore a *silent* CI outage — jobs sit in `queued` with no runner to
7
+ # take them, which looks exactly like a slow queue.
8
+ #
9
+ # This is the cheapest possible detector: one echo on the runner label. It is
10
+ # deliberately not a test — it measures whether the runner picks up work, not
11
+ # whether the code is good, and it must stay cheap enough to run often.
12
+ #
13
+ # Reading the result (the part that is easy to get wrong):
14
+ # * run succeeded, runner_name == slimmini-colima -> healthy
15
+ # * run still `queued`, runner_name empty -> the runner is down
16
+ # * run failed fast, runner_id == 0 -> the budget is blocking
17
+ # (a different fault, and
18
+ # one this job cannot fix)
19
+ # Checking only "did the run go green" cannot tell the first from the third,
20
+ # and checking only the runner's `status` field lags by minutes — GitHub marks a
21
+ # runner offline only after its heartbeat expires.
22
+
23
+ on:
24
+ schedule:
25
+ # Every 20 minutes. Off :00 and :30 on purpose: scheduled workflows across
26
+ # GitHub pile up on the round marks, and a heartbeat is never urgent enough
27
+ # to deserve that queue.
28
+ - cron: "7,27,47 * * * *"
29
+ workflow_dispatch:
30
+
31
+ permissions:
32
+ contents: read
33
+
34
+ jobs:
35
+ heartbeat:
36
+ runs-on: slimmini
37
+ # A running job that wedges should fail loudly rather than hang. This does
38
+ # NOT cover the runner-is-offline case: a job with no runner never starts,
39
+ # so it never reaches this timeout — it just queues, which is precisely the
40
+ # state the external watchdog looks for.
41
+ timeout-minutes: 5
42
+ steps:
43
+ - name: The runner picked this up
44
+ run: |
45
+ echo "runner=${RUNNER_NAME}"
46
+ echo "os=${RUNNER_OS} arch=${RUNNER_ARCH}"
47
+ echo "host=$(hostname)"
48
+ echo "python=$(python3 --version 2>&1)"
@@ -0,0 +1,81 @@
1
+ # Python
2
+ *.pyc
3
+ __pycache__/
4
+ .coverage
5
+ *.py[cod]
6
+ *$py.class
7
+ .pytest_cache/
8
+ *.egg-info/
9
+ dist/
10
+ build/
11
+ .eggs/
12
+
13
+ # Virtual environments
14
+ .venv/
15
+ venv/
16
+ env/
17
+
18
+ # IDE
19
+ .idea/
20
+ .vscode/
21
+ *.swp
22
+ *.swo
23
+
24
+ # OS
25
+ .DS_Store
26
+ Thumbs.db
27
+ *.tmp
28
+ *.log
29
+
30
+ # PactKit - generated artifacts (auto-regenerated; not versioned).
31
+ # Named files, NOT the whole directory: the authored diagrams
32
+ # (system_design.mmd, workflow_graph.mmd, reverse_call_graph.mmd) live in the
33
+ # same directory and MUST stay tracked. A directory-wide rule is what let 7
34
+ # generated files stay tracked for four months — .gitignore does not apply to
35
+ # already-tracked paths (STORY-slim-2026091893aad6f3d8ac R3).
36
+ docs/architecture/graphs/call_graph.mmd
37
+ docs/architecture/graphs/class_graph.mmd
38
+ docs/architecture/graphs/code_graph.mmd
39
+ docs/architecture/graphs/module_graph.mmd
40
+ docs/architecture/graphs/report.html
41
+ docs/architecture/graphs/call_graph.db
42
+ docs/architecture/graphs/focus_file_graph.mmd
43
+ # Whole directory is safe HERE (unlike graphs/ above): every file is a
44
+ # version-stamped machine artifact ({version}_{mode}.mmd) — no authored
45
+ # asset lives here. Untracked 2026-09-18; 53 files were tracked while the
46
+ # rule said otherwise (STORY-slim-2026091893aad6f3d8ac).
47
+ docs/architecture/snapshots/
48
+
49
+ # PactKit - previously excluded for IP protection (repo is now private, all tracked)
50
+
51
+ # Claude Code local config
52
+ .claude/
53
+
54
+ # Codex CLI local config
55
+ .codex/
56
+
57
+ # GitHub Copilot deployment artifacts (generated by pactkit update)
58
+ .github/
59
+ !.github/workflows/
60
+
61
+ # Office files
62
+ ~$*
63
+ *.pptx
64
+
65
+ # Secrets
66
+ .pypirc
67
+
68
+ # Playwright MCP
69
+ .playwright-mcp/
70
+
71
+ # Backup
72
+ *.bak
73
+ .mcp.json
74
+ .pactkit/
75
+ coder/
76
+ docker/
77
+ docs/slides/
78
+
79
+
80
+ # Call graph SQLite output (STORY-slim-121)
81
+ docs/architecture/graphs/*.db