PTSIP 0.3.8a1__tar.gz → 0.3.8a2__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.
Files changed (333) hide show
  1. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/COMMERCIAL-USE.md +301 -301
  2. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/LICENSE-GUIDE.md +159 -159
  3. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/LICENSE-HISTORY.md +15 -15
  4. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/LICENSE.md +414 -414
  5. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/NOTICE.md +22 -22
  6. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/License-Authority/license-authority.yaml +133 -133
  7. ptsip-0.3.8a2/MANIFEST.in +5 -0
  8. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/PKG-INFO +489 -434
  9. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/README.md +451 -396
  10. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0001.yaml +28 -0
  11. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0002.yaml +28 -0
  12. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0003.yaml +27 -0
  13. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0004.yaml +53 -0
  14. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0005.yaml +32 -0
  15. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0006.yaml +43 -0
  16. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0007.yaml +52 -0
  17. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0008.yaml +66 -0
  18. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0009.yaml +54 -0
  19. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0010.yaml +40 -0
  20. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0011.yaml +42 -0
  21. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0012.yaml +38 -0
  22. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0013.yaml +38 -0
  23. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0014.yaml +46 -0
  24. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0015.yaml +52 -0
  25. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0016.yaml +52 -0
  26. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0017.yaml +23 -0
  27. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0018.yaml +41 -0
  28. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0019.yaml +40 -0
  29. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0020.yaml +34 -0
  30. ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0021.yaml +44 -0
  31. ptsip-0.3.8a2/docs/Support_policy/policy/index.yaml +66 -0
  32. ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-role-registry.yaml +374 -0
  33. ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-schema-registry.yaml +119 -0
  34. ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-subject-registry.yaml +47 -0
  35. ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authorization-registry.yaml +14 -0
  36. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-eligibility-result.schema.json +114 -0
  37. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-role.schema.json +123 -0
  38. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-semantics.schema.json +586 -0
  39. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-feature-policy-index.schema.json +53 -0
  40. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-feature-policy.schema.json +186 -0
  41. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-governance-registry.schema.json +28 -0
  42. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-project-authority-record.schema.json +85 -0
  43. ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-subject-binding.schema.json +60 -0
  44. ptsip-0.3.8a2/profiles/example.ptsip.yaml +149 -0
  45. ptsip-0.3.8a2/profiles/history/pp.1.01/example.ptsip.yaml +148 -0
  46. ptsip-0.3.8a2/profiles/history/pp.1.01/hybrid-python-package.ptsip.yaml +39 -0
  47. ptsip-0.3.8a2/profiles/history/pp.1.01/template-python-package.ptsip.yaml +17 -0
  48. ptsip-0.3.8a2/profiles/history/pp.1.02/example.ptsip.yaml +149 -0
  49. ptsip-0.3.8a2/profiles/history/pp.1.02/hybrid-python-package.ptsip.yaml +40 -0
  50. ptsip-0.3.8a2/profiles/history/pp.1.02/template-python-package.ptsip.yaml +18 -0
  51. ptsip-0.3.8a2/profiles/hybrid-python-package.ptsip.yaml +40 -0
  52. ptsip-0.3.8a2/profiles/index.yaml +22 -0
  53. ptsip-0.3.8a2/profiles/template-python-package.ptsip.yaml +18 -0
  54. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/pyproject.toml +82 -60
  55. ptsip-0.3.8a2/registry/project-profile-contracts.yaml +31 -0
  56. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/setup.cfg +4 -4
  57. ptsip-0.3.8a2/setup.py +176 -0
  58. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/PTSIP.egg-info/PKG-INFO +489 -434
  59. ptsip-0.3.8a2/src/PTSIP.egg-info/SOURCES.txt +328 -0
  60. ptsip-0.3.8a2/src/PTSIP.egg-info/top_level.txt +3 -0
  61. ptsip-0.3.8a2/src/agent_contracts/__init__.py +5 -0
  62. ptsip-0.3.8a2/src/agent_contracts/actions/analyze-source-profile.yaml +13 -0
  63. ptsip-0.3.8a2/src/agent_contracts/actions/apply-adoption.yaml +12 -0
  64. ptsip-0.3.8a2/src/agent_contracts/actions/apply-profile-transition.yaml +11 -0
  65. ptsip-0.3.8a2/src/agent_contracts/actions/build-adoption-plan.yaml +10 -0
  66. ptsip-0.3.8a2/src/agent_contracts/actions/build-transition-plan.yaml +10 -0
  67. ptsip-0.3.8a2/src/agent_contracts/actions/capture-repository-snapshot.yaml +13 -0
  68. ptsip-0.3.8a2/src/agent_contracts/actions/collect-conformance-evidence.yaml +13 -0
  69. ptsip-0.3.8a2/src/agent_contracts/actions/compare-profile-authority.yaml +10 -0
  70. ptsip-0.3.8a2/src/agent_contracts/actions/emit-conformance-result.yaml +10 -0
  71. ptsip-0.3.8a2/src/agent_contracts/actions/evaluate-conformance-rules.yaml +10 -0
  72. ptsip-0.3.8a2/src/agent_contracts/actions/map-profile-target.yaml +10 -0
  73. ptsip-0.3.8a2/src/agent_contracts/actions/project-authority-winner.yaml +13 -0
  74. ptsip-0.3.8a2/src/agent_contracts/actions/read-relevant-authority.yaml +13 -0
  75. ptsip-0.3.8a2/src/agent_contracts/actions/resolve-adoption-facts.yaml +11 -0
  76. ptsip-0.3.8a2/src/agent_contracts/actions/resolve-profile-schema.yaml +14 -0
  77. ptsip-0.3.8a2/src/agent_contracts/actions/resolve-reconciliation-state.yaml +10 -0
  78. ptsip-0.3.8a2/src/agent_contracts/actions/validate-profile-structure.yaml +10 -0
  79. ptsip-0.3.8a2/src/agent_contracts/actions/validate-responsibility-map-semantics.yaml +10 -0
  80. ptsip-0.3.8a2/src/agent_contracts/bindings/current.yaml +125 -0
  81. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-apply-requested.yaml +10 -0
  82. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-authority-fresh.yaml +10 -0
  83. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-facts-resolved.yaml +10 -0
  84. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-profile-fresh.yaml +10 -0
  85. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-repository-fresh.yaml +10 -0
  86. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-snapshot-identified.yaml +10 -0
  87. ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-write-authorized.yaml +10 -0
  88. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-authority-fresh.yaml +10 -0
  89. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-coordination-available.yaml +10 -0
  90. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-profile-fresh.yaml +10 -0
  91. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-projection-required.yaml +10 -0
  92. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-semantic-conflict-absent.yaml +10 -0
  93. ptsip-0.3.8a2/src/agent_contracts/conditions/authority-write-authorized.yaml +10 -0
  94. ptsip-0.3.8a2/src/agent_contracts/conditions/conform-profile-ready.yaml +10 -0
  95. ptsip-0.3.8a2/src/agent_contracts/conditions/conform-snapshot-identified.yaml +10 -0
  96. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-apply-requested.yaml +10 -0
  97. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-source-fresh.yaml +10 -0
  98. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-source-profile-identified.yaml +10 -0
  99. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-target-contract-resolved.yaml +10 -0
  100. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-target-fresh.yaml +10 -0
  101. ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-write-authorized.yaml +10 -0
  102. ptsip-0.3.8a2/src/agent_contracts/conditions/validate-contract-resolved.yaml +10 -0
  103. ptsip-0.3.8a2/src/agent_contracts/conditions/validate-profile-selected.yaml +10 -0
  104. ptsip-0.3.8a2/src/agent_contracts/gates/adoption-write.yaml +18 -0
  105. ptsip-0.3.8a2/src/agent_contracts/gates/authority-projection-write.yaml +18 -0
  106. ptsip-0.3.8a2/src/agent_contracts/gates/profile-transition-write.yaml +15 -0
  107. ptsip-0.3.8a2/src/agent_contracts/index.yaml +113 -0
  108. ptsip-0.3.8a2/src/agent_contracts/operations/adopt.yaml +99 -0
  109. ptsip-0.3.8a2/src/agent_contracts/operations/conform.yaml +57 -0
  110. ptsip-0.3.8a2/src/agent_contracts/operations/migrate-profile.yaml +85 -0
  111. ptsip-0.3.8a2/src/agent_contracts/operations/reconcile-authority.yaml +87 -0
  112. ptsip-0.3.8a2/src/agent_contracts/operations/validate.yaml +53 -0
  113. ptsip-0.3.8a2/src/agent_contracts/resolver.py +253 -0
  114. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/action.schema.json +21 -0
  115. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/binding.schema.json +32 -0
  116. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/condition.schema.json +25 -0
  117. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/index.schema.json +27 -0
  118. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/io.schema.json +12 -0
  119. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/mutation-gate.schema.json +17 -0
  120. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/operation.schema.json +259 -0
  121. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/spec.schema.json +13 -0
  122. ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/vocabulary.schema.json +11 -0
  123. ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-request.schema.json +8 -0
  124. ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-result.schema.json +6 -0
  125. ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-state.schema.json +12 -0
  126. ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-request.schema.json +8 -0
  127. ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-result.schema.json +6 -0
  128. ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-state.schema.json +13 -0
  129. ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-request.schema.json +6 -0
  130. ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-result.schema.json +6 -0
  131. ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-state.schema.json +6 -0
  132. ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-request.schema.json +11 -0
  133. ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-result.schema.json +6 -0
  134. ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-state.schema.json +11 -0
  135. ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-request.schema.json +6 -0
  136. ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-result.schema.json +6 -0
  137. ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-state.schema.json +6 -0
  138. ptsip-0.3.8a2/src/agent_contracts/spec/adoption-procedure.yaml +148 -0
  139. ptsip-0.3.8a2/src/agent_contracts/spec/adoption.yaml +33 -0
  140. ptsip-0.3.8a2/src/agent_contracts/spec/agent-behavior.yaml +148 -0
  141. ptsip-0.3.8a2/src/agent_contracts/spec/authority.yaml +40 -0
  142. ptsip-0.3.8a2/src/agent_contracts/spec/classification.yaml +64 -0
  143. ptsip-0.3.8a2/src/agent_contracts/spec/conformance-detail.yaml +120 -0
  144. ptsip-0.3.8a2/src/agent_contracts/spec/conformance.yaml +43 -0
  145. ptsip-0.3.8a2/src/agent_contracts/spec/core.yaml +29 -0
  146. ptsip-0.3.8a2/src/agent_contracts/spec/governance.yaml +30 -0
  147. ptsip-0.3.8a2/src/agent_contracts/spec/profile-transition-detail.yaml +78 -0
  148. ptsip-0.3.8a2/src/agent_contracts/spec/profile-transition.yaml +30 -0
  149. ptsip-0.3.8a2/src/agent_contracts/spec/repository-boundaries.yaml +148 -0
  150. ptsip-0.3.8a2/src/agent_contracts/spec/responsibility-map-detail.yaml +92 -0
  151. ptsip-0.3.8a2/src/agent_contracts/spec/responsibility-map.yaml +36 -0
  152. ptsip-0.3.8a2/src/agent_contracts/spec/specification-governance.yaml +91 -0
  153. ptsip-0.3.8a2/src/agent_contracts/validator.py +723 -0
  154. ptsip-0.3.8a2/src/agent_contracts/vocabulary/authority.yaml +20 -0
  155. ptsip-0.3.8a2/src/agent_contracts/vocabulary/diagnostics.yaml +23 -0
  156. ptsip-0.3.8a2/src/agent_contracts/vocabulary/lifecycle.yaml +20 -0
  157. ptsip-0.3.8a2/src/agent_contracts/vocabulary/outcomes.yaml +26 -0
  158. ptsip-0.3.8a2/src/agent_contracts/vocabulary/terminology.yaml +428 -0
  159. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/__init__.py +5 -5
  160. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/__main__.py +4 -4
  161. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/adoption.py +225 -225
  162. ptsip-0.3.8a2/src/ptsip/agent_contracts/__init__.py +12 -0
  163. ptsip-0.3.8a2/src/ptsip/agent_contracts/bindings/current.yaml +38 -0
  164. ptsip-0.3.8a2/src/ptsip/agent_contracts/index.yaml +53 -0
  165. ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/adopt.yaml +49 -0
  166. ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/conform.yaml +42 -0
  167. ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/migrate-profile.yaml +42 -0
  168. ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/reconcile-authority.yaml +40 -0
  169. ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/validate.yaml +36 -0
  170. ptsip-0.3.8a2/src/ptsip/agent_contracts/runtime.py +102 -0
  171. ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/binding.schema.json +151 -0
  172. ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/index.schema.json +51 -0
  173. ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/operation.schema.json +122 -0
  174. ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/spec.schema.json +96 -0
  175. ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/vocabulary.schema.json +50 -0
  176. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/adoption.yaml +23 -0
  177. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/authority.yaml +32 -0
  178. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/classification.yaml +31 -0
  179. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/conformance.yaml +27 -0
  180. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/core.yaml +21 -0
  181. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/governance.yaml +17 -0
  182. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/profile-transition.yaml +27 -0
  183. ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/responsibility-map.yaml +26 -0
  184. ptsip-0.3.8a2/src/ptsip/agent_contracts/validator.py +195 -0
  185. ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/authority.yaml +8 -0
  186. ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/diagnostics.yaml +7 -0
  187. ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/lifecycle.yaml +9 -0
  188. ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/outcomes.yaml +8 -0
  189. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/__init__.py +5 -5
  190. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/client.py +53 -53
  191. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/github_authority.py +659 -659
  192. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/github_client.py +200 -200
  193. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/github_reconciliation.py +405 -405
  194. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/local_client.py +129 -129
  195. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/server.py +130 -130
  196. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/service.py +345 -345
  197. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/app/store.py +283 -283
  198. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/artifact_evidence.py +150 -150
  199. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/build_resolution.py +315 -315
  200. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/__init__.py +6 -6
  201. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/generator.py +345 -345
  202. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/generator_core.py +87 -87
  203. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/i18n.py +110 -110
  204. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/model.py +32 -32
  205. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/render.py +79 -79
  206. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/__init__.py +34 -34
  207. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/model.py +90 -90
  208. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/parser.py +97 -97
  209. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/profile_projection.py +467 -345
  210. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/resolver.py +72 -72
  211. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/transports/__init__.py +1 -1
  212. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/clarification/transports/github_issue.py +162 -162
  213. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/cli.py +1106 -1019
  214. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/conformance.py +627 -597
  215. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/conformance_audit.py +143 -143
  216. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/conformance_engine.py +409 -393
  217. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/constants.py +9 -9
  218. ptsip-0.3.8a2/src/ptsip/dependency_analysis.py +232 -0
  219. ptsip-0.3.8a2/src/ptsip/dependency_cache.py +110 -0
  220. ptsip-0.3.8a2/src/ptsip/dependency_reconciliation.py +248 -0
  221. ptsip-0.3.8a2/src/ptsip/dependency_review.py +174 -0
  222. ptsip-0.3.8a2/src/ptsip/dependency_validation.py +106 -0
  223. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/doctor.py +33 -33
  224. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/evidence/__init__.py +33 -33
  225. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/evidence/adapters.py +486 -486
  226. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/evidence/contract.py +230 -230
  227. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/evidence/normalization.py +173 -173
  228. ptsip-0.3.8a2/src/ptsip/governance/__init__.py +45 -0
  229. ptsip-0.3.8a2/src/ptsip/governance/authority.py +371 -0
  230. ptsip-0.3.8a2/src/ptsip/governance/authorization.py +55 -0
  231. ptsip-0.3.8a2/src/ptsip/governance/model.py +232 -0
  232. ptsip-0.3.8a2/src/ptsip/governance/subject_matching.py +78 -0
  233. ptsip-0.3.8a2/src/ptsip/governance/support_assets.py +91 -0
  234. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/__init__.py +1 -1
  235. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/candidate_evidence.py +537 -537
  236. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/components.py +74 -74
  237. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/dependencies.py +502 -496
  238. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/dependencies_030.py +69 -69
  239. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/dotnet.py +188 -188
  240. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/go.py +157 -157
  241. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/inventory.py +161 -161
  242. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/javascript.py +376 -376
  243. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/lexing.py +121 -121
  244. ptsip-0.3.8a2/src/ptsip/inspection/python_resolution.py +164 -0
  245. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/inspection/source_adapters.py +60 -60
  246. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/lifecycle_evidence.py +310 -310
  247. ptsip-0.3.8a2/src/ptsip/local_profile_catalog.py +157 -0
  248. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/__init__.py +240 -240
  249. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/analyzer.py +702 -702
  250. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/direct_convergence.py +324 -324
  251. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/direct_execution.py +291 -291
  252. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/direct_planner.py +374 -374
  253. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/execution_apply.py +408 -408
  254. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/execution_binding.py +417 -417
  255. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/execution_ledger.py +256 -256
  256. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/execution_model.py +280 -280
  257. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/execution_promotion.py +195 -195
  258. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/identity_rewrite.py +454 -454
  259. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/model.py +420 -420
  260. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/planner.py +857 -857
  261. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/migration/proposal.py +375 -375
  262. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/model.py +165 -165
  263. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/pilot/__init__.py +1 -1
  264. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/pilot/runner.py +170 -170
  265. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/profile_compatibility.py +184 -179
  266. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/profile_identity.py +314 -229
  267. ptsip-0.3.8a2/src/ptsip/profile_metadata.py +61 -0
  268. ptsip-0.3.8a2/src/ptsip/project_profile_contracts.py +100 -0
  269. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/proposed_component.py +128 -128
  270. ptsip-0.3.8a2/src/ptsip/remediation/__init__.py +77 -0
  271. ptsip-0.3.8a2/src/ptsip/remediation/domain/__init__.py +39 -0
  272. ptsip-0.3.8a2/src/ptsip/remediation/domain/model.py +417 -0
  273. ptsip-0.3.8a2/src/ptsip/remediation/escalation/__init__.py +37 -0
  274. ptsip-0.3.8a2/src/ptsip/remediation/escalation/contract.py +388 -0
  275. ptsip-0.3.8a2/src/ptsip/remediation/escalation/engine.py +212 -0
  276. ptsip-0.3.8a2/src/ptsip/remediation/rules/__init__.py +23 -0
  277. ptsip-0.3.8a2/src/ptsip/remediation/rules/contract.py +276 -0
  278. ptsip-0.3.8a2/src/ptsip/remediation/solution/candidate.py +317 -0
  279. ptsip-0.3.8a2/src/ptsip/remediation/solution/elimination.py +469 -0
  280. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/__init__.py +1 -1
  281. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/discover.py +68 -68
  282. ptsip-0.3.8a2/src/ptsip/repository/namespace.py +86 -0
  283. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/profile_convergence.py +409 -409
  284. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/profile_path.py +97 -76
  285. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/profile_transition.py +377 -377
  286. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/remote.py +54 -54
  287. ptsip-0.3.8a2/src/ptsip/repository/schemas/repository-index.schema.json +104 -0
  288. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/repository/snapshot.py +173 -173
  289. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/review_evidence.py +406 -406
  290. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/source_compat/__init__.py +56 -56
  291. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/source_compat/integrity.py +131 -131
  292. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/source_compat/model.py +260 -260
  293. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/source_compat/reader.py +336 -336
  294. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/spec_identity.py +24 -24
  295. ptsip-0.3.8a2/src/ptsip/specdata/project-profile-contracts.yaml +31 -0
  296. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-agent-classification.schema.json +57 -57
  297. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-artifact-evidence.schema.json +68 -68
  298. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-diagnostic.schema.json +58 -58
  299. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-normalized-evidence.schema.json +126 -126
  300. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-profile-pp-1.01.schema.json +309 -309
  301. ptsip-0.3.8a2/src/ptsip/specdata/ptsip-profile-pp-1.02.schema.json +604 -0
  302. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-profile.schema.json +296 -296
  303. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-registry.yaml +333 -333
  304. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-source-profile-0.3.4.schema.json +55 -55
  305. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-source-profile-0.3.6.schema.json +35 -35
  306. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/specification_binding.py +246 -212
  307. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/storage/__init__.py +1 -1
  308. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/storage/local_state.py +40 -40
  309. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/topology.py +747 -747
  310. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/__init__.py +1 -1
  311. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/components.py +357 -357
  312. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/profile.py +513 -479
  313. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/rules.py +186 -186
  314. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/specification.py +60 -52
  315. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation/templates.py +767 -767
  316. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/ptsip/validation_capture.py +168 -168
  317. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/__init__.py +64 -64
  318. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/domain/__init__.py +1 -1
  319. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/domain/model.py +88 -88
  320. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/domain/registry.py +350 -350
  321. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/domain/selector.py +41 -41
  322. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/execution/__init__.py +1 -1
  323. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/execution/adapters/__init__.py +1 -1
  324. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/execution/adapters/command.py +67 -67
  325. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/execution/runner.py +102 -102
  326. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/integration/__init__.py +1 -1
  327. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/vpms/integration/ptsip_bridge.py +153 -153
  328. ptsip-0.3.8a1/MANIFEST.in +0 -1
  329. ptsip-0.3.8a1/src/PTSIP.egg-info/SOURCES.txt +0 -128
  330. ptsip-0.3.8a1/src/PTSIP.egg-info/top_level.txt +0 -2
  331. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/PTSIP.egg-info/dependency_links.txt +0 -0
  332. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/PTSIP.egg-info/entry_points.txt +0 -0
  333. {ptsip-0.3.8a1 → ptsip-0.3.8a2}/src/PTSIP.egg-info/requires.txt +0 -0
@@ -1,301 +1,301 @@
1
- # PTSIP Commercial Use and Cooperation Procedure
2
-
3
- This document defines the current Official Cooperation Channels and submission mechanics for PTSIP Community Reciprocity License 1.0.
4
-
5
- **Effective Time:** `2026-09-15T00:00:00Z` (UTC).
6
-
7
- It does not add substantive duties beyond LICENSE. If this document conflicts with LICENSE.md, LICENSE.md controls.
8
-
9
- ## Standing Commercial Authorization
10
-
11
- No individual approval response is required.
12
-
13
- Standing Commercial Authorization becomes available when a Commercial User:
14
-
15
- 1. accepts PTSIP Community Reciprocity License 1.0;
16
- 2. expressly accepts both the applicable PTSIP License and the Commercial Cooperation Duty;
17
- 3. identifies the PTSIP Version or Revision actually used; and
18
- 4. submits a valid Commercial Use Registration within 90 calendar days of first Commercial Use; and
19
- 5. continues to comply with the applicable attribution and cooperation duties.
20
-
21
- PTSIP does not require a default monetary license fee.
22
-
23
- ## Official Cooperation Channels
24
-
25
- ### Public registration, reports, and non-confidential findings
26
-
27
- Use the PTSIP GitHub Issues page:
28
-
29
- https://github.com/Kinirin/PTSIP/issues
30
-
31
- Use one of these title prefixes:
32
-
33
- - [License][Commercial Registration]
34
- - [License][Commercial Report]
35
- - [License][Final Commercial Report]
36
- - [License][Research Report]
37
- - [License][Research Summary]
38
- - [License][Material Finding]
39
-
40
- The GitHub issue timestamp is sufficient evidence of submission.
41
-
42
- ### PTSIP source changes
43
-
44
- Submit source changes through a pull request to:
45
-
46
- https://github.com/Kinirin/PTSIP
47
-
48
- A pull request, patch link, or equivalent source-form submission may satisfy the PTSIP-modification return requirement when it contains enough information to review and reproduce the PTSIP-specific change.
49
-
50
- ### Security-sensitive or confidential findings
51
-
52
- Do not place credentials, personal data, customer secrets, or other protected information in a public issue.
53
-
54
- If the repository exposes a private vulnerability-reporting or other private project channel, use that channel.
55
-
56
- If no private channel is available, submit a redacted public Material Finding containing only enough non-confidential information to identify that a finding exists and to request a private follow-up channel. The License never requires public disclosure of protected information.
57
-
58
- ## Commercial Use Registration template
59
-
60
- Title:
61
-
62
- [License][Commercial Registration] <organization or project name>
63
-
64
- Body:
65
-
66
- ### User
67
- Individual or legal entity:
68
-
69
- ### Commercial activity
70
- Product, service, system, business activity, or internal commercial function:
71
-
72
- ### First Commercial Use date
73
- YYYY-MM-DD:
74
-
75
- ### PTSIP License version — REQUIRED
76
- PTSIP Community Reciprocity License version:
77
-
78
- ### PTSIP version / immutable revision — REQUIRED
79
- Provide at least one precise identifier. Include both when reasonably available.
80
- Tool/release version:
81
- Specification family:
82
- Immutable Specification revision:
83
- Git commit or other immutable revision:
84
-
85
- ### Primary environment
86
- Relevant coding agents, CI, operating environment, platforms, or integrations:
87
-
88
- ### Responsible contact
89
- GitHub account or other accountable project contact:
90
-
91
- ### Attribution location
92
- Where PTSIP attribution is or will be provided:
93
-
94
- ### License and Cooperation Duty acceptance — REQUIRED
95
- By submitting this Commercial Use Registration, the registering individual or Legal Entity expressly accepts:
96
-
97
- 1. the PTSIP Community Reciprocity License version identified in this registration; and
98
- 2. the Commercial Cooperation Duty, including the applicable attribution, reporting, Material Finding, PTSIP-modification return, cure, suspension, and reinstatement obligations.
99
-
100
- We acknowledge that the Commercial Cooperation Duty is a material and essential condition of Standing Commercial Authorization and is not merely a voluntary recommendation.
101
-
102
- Submission of this registration constitutes affirmative acceptance of these terms for the Commercial Use identified above.
103
-
104
- ## Annual Commercial Cooperation Report template
105
-
106
- Title:
107
-
108
- [License][Commercial Report] <organization or project name> <reporting period>
109
-
110
- Body:
111
-
112
- ### Reporting period
113
- Start:
114
- End:
115
-
116
- ### PTSIP License version — REQUIRED
117
-
118
- ### PTSIP versions / immutable revisions used — REQUIRED
119
- Provide at least one precise identifier for each materially used PTSIP line; include both version and immutable revision when reasonably available.
120
-
121
- ### Usage scope
122
- Where and how PTSIP was used.
123
-
124
- ### Relevant environments and integrations
125
- Coding agents, CI, platforms, tools, or workflows.
126
-
127
- ### Compatibility findings
128
- Successful compatibility, incompatibilities, and required workarounds.
129
-
130
- ### Policy and architecture findings
131
- Ambiguous, incomplete, unexpectedly strict, unexpectedly permissive, or difficult-to-apply PTSIP policy behavior.
132
-
133
- ### Verification and failure findings
134
- Known false positives, false negatives, incorrect decisions, failure patterns, or bypasses.
135
-
136
- ### Improvements
137
- Concrete suggestions, missing capabilities, usability problems, or interoperability improvements.
138
-
139
- ### PTSIP modifications
140
- Describe PTSIP-specific modifications and link the corresponding PR, patch, or technical contribution. State "none" only if none were made.
141
-
142
- ### Operational observations
143
- Shareable aggregated findings that may help improve PTSIP. This may include agent behavior, compatibility matrices, evaluation results, or measured context, reasoning, token, credit, or development-cost observations.
144
-
145
- ### Protected information
146
- Identify any categories omitted because they could not lawfully or reasonably be disclosed. Do not include the protected information itself.
147
-
148
- ### Attestation
149
- To the best of our knowledge, this report is a truthful account of material PTSIP-related knowledge reasonably obtained during the reporting period.
150
-
151
- ## Final Commercial Cooperation Report
152
-
153
- Use the annual report template and add:
154
-
155
- ### Commercial Use end date
156
-
157
- ### Reason use ended
158
-
159
- ### Remaining deployed or maintained PTSIP-related material
160
- Explain whether any PTSIP or PTSIP-Derived Material continues to materially enable the commercial activity.
161
-
162
- ### Outstanding obligations
163
- List any Material Finding or PTSIP modification submission that is still being completed.
164
-
165
- ## Research Cooperation Report template
166
-
167
- Title:
168
-
169
- [License][Research Report] <organization or project> <reporting period>
170
-
171
- Body:
172
-
173
- ### Research purpose
174
-
175
- ### Research period
176
-
177
- ### PTSIP License version — REQUIRED
178
-
179
- ### PTSIP versions / immutable revisions — REQUIRED
180
- Provide at least one precise identifier; include both when reasonably available.
181
-
182
- ### Research environment and integrations
183
-
184
- ### Compatibility observations
185
-
186
- ### Policy or architecture observations
187
-
188
- ### Failures or unexpected behavior
189
-
190
- ### PTSIP modifications
191
-
192
- ### Improvement suggestions
193
-
194
- ### Publications or presentations
195
- Links if public and available.
196
-
197
- ### Protected information
198
- Identify only the category of information omitted; do not disclose protected content.
199
-
200
- ## Research Cooperation Summary template
201
-
202
- Title:
203
-
204
- [License][Research Summary] <organization or project>
205
-
206
- Body:
207
-
208
- ### Research purpose and outcome
209
-
210
- ### PTSIP License version — REQUIRED
211
-
212
- ### PTSIP versions / immutable revisions — REQUIRED
213
- Provide at least one precise identifier; include both when reasonably available.
214
-
215
- ### Duration of material PTSIP use
216
-
217
- ### Most useful PTSIP behavior
218
-
219
- ### Most limiting or unclear PTSIP behavior
220
-
221
- ### Compatibility findings
222
-
223
- ### Material findings already reported
224
- Links:
225
-
226
- ### PTSIP modifications or improvements returned
227
- Links:
228
-
229
- ### Publication, presentation, or report
230
- Link if public and available.
231
-
232
- ## Material Finding template
233
-
234
- Title:
235
-
236
- [License][Material Finding] <short description>
237
-
238
- Body:
239
-
240
- ### PTSIP License version — REQUIRED
241
-
242
- ### PTSIP version / immutable revision — REQUIRED
243
- Provide at least one precise identifier; include both when reasonably available.
244
-
245
- ### Finding category
246
- Policy ambiguity / false positive / false negative / compatibility / agent behavior / conformance / security / other
247
-
248
- ### Summary
249
-
250
- ### Expected behavior
251
-
252
- ### Observed behavior
253
-
254
- ### Reproduction information
255
- Provide only non-confidential information.
256
-
257
- ### Impact
258
-
259
- ### Workaround, if known
260
-
261
- ### Related PTSIP modification, if any
262
-
263
- ## Compliance timing principle
264
-
265
- The compliance periods in the PTSIP License are intended to encourage voluntary cooperation and reasonable correction, not to create traps for users acting in good faith.
266
-
267
- A missed ordinary deadline begins the cure process defined in LICENSE rather than being treated as a reason for immediate punitive action.
268
-
269
- ## Reporting anniversary
270
-
271
- The normal commercial reporting anniversary is based on the first Commercial Use date stated in the registration.
272
-
273
- Example:
274
-
275
- First Commercial Use: 2026-10-15
276
- First annual reporting period ends: 2027-10-14
277
- First report due: 2028-01-12
278
-
279
- A correction, late report, suspension, or automatic reinstatement does not reset that anniversary unless the applicable License or a later written agreement expressly says otherwise.
280
-
281
- ## Updating a registration
282
-
283
- A new registration is not required for every internal change.
284
-
285
- Update or add a registration when Commercial Use changes materially, such as:
286
-
287
- - a materially different product or service;
288
- - a materially different legal entity;
289
- - a move from research-only use into Commercial Use;
290
- - resumed Commercial Use after a real end of use;
291
- - a materially different commercial use category not reasonably covered by the existing record.
292
-
293
- Minor product renames, team changes, routine version upgrades, or ordinary technical refactoring do not by themselves require a new registration.
294
-
295
- ## No profit statement required
296
-
297
- PTSIP does not ask Commercial Users to prove profit, revenue, or PTSIP-attributable financial return.
298
-
299
- The duty follows Commercial Use, not profitability.
300
-
301
- A report may state that a metric was not measured. That does not remove the obligation to provide other reasonably available PTSIP-related knowledge.
1
+ # PTSIP Commercial Use and Cooperation Procedure
2
+
3
+ This document defines the current Official Cooperation Channels and submission mechanics for PTSIP Community Reciprocity License 1.0.
4
+
5
+ **Effective Time:** `2026-09-15T00:00:00Z` (UTC).
6
+
7
+ It does not add substantive duties beyond LICENSE. If this document conflicts with LICENSE.md, LICENSE.md controls.
8
+
9
+ ## Standing Commercial Authorization
10
+
11
+ No individual approval response is required.
12
+
13
+ Standing Commercial Authorization becomes available when a Commercial User:
14
+
15
+ 1. accepts PTSIP Community Reciprocity License 1.0;
16
+ 2. expressly accepts both the applicable PTSIP License and the Commercial Cooperation Duty;
17
+ 3. identifies the PTSIP Version or Revision actually used; and
18
+ 4. submits a valid Commercial Use Registration within 90 calendar days of first Commercial Use; and
19
+ 5. continues to comply with the applicable attribution and cooperation duties.
20
+
21
+ PTSIP does not require a default monetary license fee.
22
+
23
+ ## Official Cooperation Channels
24
+
25
+ ### Public registration, reports, and non-confidential findings
26
+
27
+ Use the PTSIP GitHub Issues page:
28
+
29
+ https://github.com/Kinirin/PTSIP/issues
30
+
31
+ Use one of these title prefixes:
32
+
33
+ - [License][Commercial Registration]
34
+ - [License][Commercial Report]
35
+ - [License][Final Commercial Report]
36
+ - [License][Research Report]
37
+ - [License][Research Summary]
38
+ - [License][Material Finding]
39
+
40
+ The GitHub issue timestamp is sufficient evidence of submission.
41
+
42
+ ### PTSIP source changes
43
+
44
+ Submit source changes through a pull request to:
45
+
46
+ https://github.com/Kinirin/PTSIP
47
+
48
+ A pull request, patch link, or equivalent source-form submission may satisfy the PTSIP-modification return requirement when it contains enough information to review and reproduce the PTSIP-specific change.
49
+
50
+ ### Security-sensitive or confidential findings
51
+
52
+ Do not place credentials, personal data, customer secrets, or other protected information in a public issue.
53
+
54
+ If the repository exposes a private vulnerability-reporting or other private project channel, use that channel.
55
+
56
+ If no private channel is available, submit a redacted public Material Finding containing only enough non-confidential information to identify that a finding exists and to request a private follow-up channel. The License never requires public disclosure of protected information.
57
+
58
+ ## Commercial Use Registration template
59
+
60
+ Title:
61
+
62
+ [License][Commercial Registration] <organization or project name>
63
+
64
+ Body:
65
+
66
+ ### User
67
+ Individual or legal entity:
68
+
69
+ ### Commercial activity
70
+ Product, service, system, business activity, or internal commercial function:
71
+
72
+ ### First Commercial Use date
73
+ YYYY-MM-DD:
74
+
75
+ ### PTSIP License version — REQUIRED
76
+ PTSIP Community Reciprocity License version:
77
+
78
+ ### PTSIP version / immutable revision — REQUIRED
79
+ Provide at least one precise identifier. Include both when reasonably available.
80
+ Tool/release version:
81
+ Specification family:
82
+ Immutable Specification revision:
83
+ Git commit or other immutable revision:
84
+
85
+ ### Primary environment
86
+ Relevant coding agents, CI, operating environment, platforms, or integrations:
87
+
88
+ ### Responsible contact
89
+ GitHub account or other accountable project contact:
90
+
91
+ ### Attribution location
92
+ Where PTSIP attribution is or will be provided:
93
+
94
+ ### License and Cooperation Duty acceptance — REQUIRED
95
+ By submitting this Commercial Use Registration, the registering individual or Legal Entity expressly accepts:
96
+
97
+ 1. the PTSIP Community Reciprocity License version identified in this registration; and
98
+ 2. the Commercial Cooperation Duty, including the applicable attribution, reporting, Material Finding, PTSIP-modification return, cure, suspension, and reinstatement obligations.
99
+
100
+ We acknowledge that the Commercial Cooperation Duty is a material and essential condition of Standing Commercial Authorization and is not merely a voluntary recommendation.
101
+
102
+ Submission of this registration constitutes affirmative acceptance of these terms for the Commercial Use identified above.
103
+
104
+ ## Annual Commercial Cooperation Report template
105
+
106
+ Title:
107
+
108
+ [License][Commercial Report] <organization or project name> <reporting period>
109
+
110
+ Body:
111
+
112
+ ### Reporting period
113
+ Start:
114
+ End:
115
+
116
+ ### PTSIP License version — REQUIRED
117
+
118
+ ### PTSIP versions / immutable revisions used — REQUIRED
119
+ Provide at least one precise identifier for each materially used PTSIP line; include both version and immutable revision when reasonably available.
120
+
121
+ ### Usage scope
122
+ Where and how PTSIP was used.
123
+
124
+ ### Relevant environments and integrations
125
+ Coding agents, CI, platforms, tools, or workflows.
126
+
127
+ ### Compatibility findings
128
+ Successful compatibility, incompatibilities, and required workarounds.
129
+
130
+ ### Policy and architecture findings
131
+ Ambiguous, incomplete, unexpectedly strict, unexpectedly permissive, or difficult-to-apply PTSIP policy behavior.
132
+
133
+ ### Verification and failure findings
134
+ Known false positives, false negatives, incorrect decisions, failure patterns, or bypasses.
135
+
136
+ ### Improvements
137
+ Concrete suggestions, missing capabilities, usability problems, or interoperability improvements.
138
+
139
+ ### PTSIP modifications
140
+ Describe PTSIP-specific modifications and link the corresponding PR, patch, or technical contribution. State "none" only if none were made.
141
+
142
+ ### Operational observations
143
+ Shareable aggregated findings that may help improve PTSIP. This may include agent behavior, compatibility matrices, evaluation results, or measured context, reasoning, token, credit, or development-cost observations.
144
+
145
+ ### Protected information
146
+ Identify any categories omitted because they could not lawfully or reasonably be disclosed. Do not include the protected information itself.
147
+
148
+ ### Attestation
149
+ To the best of our knowledge, this report is a truthful account of material PTSIP-related knowledge reasonably obtained during the reporting period.
150
+
151
+ ## Final Commercial Cooperation Report
152
+
153
+ Use the annual report template and add:
154
+
155
+ ### Commercial Use end date
156
+
157
+ ### Reason use ended
158
+
159
+ ### Remaining deployed or maintained PTSIP-related material
160
+ Explain whether any PTSIP or PTSIP-Derived Material continues to materially enable the commercial activity.
161
+
162
+ ### Outstanding obligations
163
+ List any Material Finding or PTSIP modification submission that is still being completed.
164
+
165
+ ## Research Cooperation Report template
166
+
167
+ Title:
168
+
169
+ [License][Research Report] <organization or project> <reporting period>
170
+
171
+ Body:
172
+
173
+ ### Research purpose
174
+
175
+ ### Research period
176
+
177
+ ### PTSIP License version — REQUIRED
178
+
179
+ ### PTSIP versions / immutable revisions — REQUIRED
180
+ Provide at least one precise identifier; include both when reasonably available.
181
+
182
+ ### Research environment and integrations
183
+
184
+ ### Compatibility observations
185
+
186
+ ### Policy or architecture observations
187
+
188
+ ### Failures or unexpected behavior
189
+
190
+ ### PTSIP modifications
191
+
192
+ ### Improvement suggestions
193
+
194
+ ### Publications or presentations
195
+ Links if public and available.
196
+
197
+ ### Protected information
198
+ Identify only the category of information omitted; do not disclose protected content.
199
+
200
+ ## Research Cooperation Summary template
201
+
202
+ Title:
203
+
204
+ [License][Research Summary] <organization or project>
205
+
206
+ Body:
207
+
208
+ ### Research purpose and outcome
209
+
210
+ ### PTSIP License version — REQUIRED
211
+
212
+ ### PTSIP versions / immutable revisions — REQUIRED
213
+ Provide at least one precise identifier; include both when reasonably available.
214
+
215
+ ### Duration of material PTSIP use
216
+
217
+ ### Most useful PTSIP behavior
218
+
219
+ ### Most limiting or unclear PTSIP behavior
220
+
221
+ ### Compatibility findings
222
+
223
+ ### Material findings already reported
224
+ Links:
225
+
226
+ ### PTSIP modifications or improvements returned
227
+ Links:
228
+
229
+ ### Publication, presentation, or report
230
+ Link if public and available.
231
+
232
+ ## Material Finding template
233
+
234
+ Title:
235
+
236
+ [License][Material Finding] <short description>
237
+
238
+ Body:
239
+
240
+ ### PTSIP License version — REQUIRED
241
+
242
+ ### PTSIP version / immutable revision — REQUIRED
243
+ Provide at least one precise identifier; include both when reasonably available.
244
+
245
+ ### Finding category
246
+ Policy ambiguity / false positive / false negative / compatibility / agent behavior / conformance / security / other
247
+
248
+ ### Summary
249
+
250
+ ### Expected behavior
251
+
252
+ ### Observed behavior
253
+
254
+ ### Reproduction information
255
+ Provide only non-confidential information.
256
+
257
+ ### Impact
258
+
259
+ ### Workaround, if known
260
+
261
+ ### Related PTSIP modification, if any
262
+
263
+ ## Compliance timing principle
264
+
265
+ The compliance periods in the PTSIP License are intended to encourage voluntary cooperation and reasonable correction, not to create traps for users acting in good faith.
266
+
267
+ A missed ordinary deadline begins the cure process defined in LICENSE rather than being treated as a reason for immediate punitive action.
268
+
269
+ ## Reporting anniversary
270
+
271
+ The normal commercial reporting anniversary is based on the first Commercial Use date stated in the registration.
272
+
273
+ Example:
274
+
275
+ First Commercial Use: 2026-10-15
276
+ First annual reporting period ends: 2027-10-14
277
+ First report due: 2028-01-12
278
+
279
+ A correction, late report, suspension, or automatic reinstatement does not reset that anniversary unless the applicable License or a later written agreement expressly says otherwise.
280
+
281
+ ## Updating a registration
282
+
283
+ A new registration is not required for every internal change.
284
+
285
+ Update or add a registration when Commercial Use changes materially, such as:
286
+
287
+ - a materially different product or service;
288
+ - a materially different legal entity;
289
+ - a move from research-only use into Commercial Use;
290
+ - resumed Commercial Use after a real end of use;
291
+ - a materially different commercial use category not reasonably covered by the existing record.
292
+
293
+ Minor product renames, team changes, routine version upgrades, or ordinary technical refactoring do not by themselves require a new registration.
294
+
295
+ ## No profit statement required
296
+
297
+ PTSIP does not ask Commercial Users to prove profit, revenue, or PTSIP-attributable financial return.
298
+
299
+ The duty follows Commercial Use, not profitability.
300
+
301
+ A report may state that a metric was not measured. That does not remove the obligation to provide other reasonably available PTSIP-related knowledge.