PTSIP 0.3.8a1__tar.gz → 0.3.8a3__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 (335) hide show
  1. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/COMMERCIAL-USE.md +301 -301
  2. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/LICENSE-GUIDE.md +159 -159
  3. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/LICENSE-HISTORY.md +15 -15
  4. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/LICENSE.md +414 -414
  5. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/NOTICE.md +22 -22
  6. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/License-Authority/license-authority.yaml +133 -133
  7. ptsip-0.3.8a3/MANIFEST.in +5 -0
  8. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/PKG-INFO +505 -434
  9. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/README.md +467 -396
  10. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0001.yaml +28 -0
  11. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0002.yaml +28 -0
  12. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0003.yaml +27 -0
  13. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0004.yaml +53 -0
  14. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0005.yaml +32 -0
  15. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0006.yaml +43 -0
  16. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0007.yaml +52 -0
  17. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0008.yaml +66 -0
  18. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0009.yaml +54 -0
  19. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0010.yaml +40 -0
  20. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0011.yaml +42 -0
  21. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0012.yaml +38 -0
  22. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0013.yaml +38 -0
  23. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0014.yaml +46 -0
  24. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0015.yaml +52 -0
  25. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0016.yaml +52 -0
  26. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0017.yaml +23 -0
  27. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0018.yaml +41 -0
  28. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0019.yaml +40 -0
  29. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0020.yaml +34 -0
  30. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0021.yaml +44 -0
  31. ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0022.yaml +53 -0
  32. ptsip-0.3.8a3/docs/Support_policy/policy/index.yaml +69 -0
  33. ptsip-0.3.8a3/docs/Support_policy/policy/registries/ptsip-support-authority-role-registry.yaml +386 -0
  34. ptsip-0.3.8a3/docs/Support_policy/policy/registries/ptsip-support-authority-schema-registry.yaml +124 -0
  35. ptsip-0.3.8a3/docs/Support_policy/policy/registries/ptsip-support-authority-subject-registry.yaml +48 -0
  36. ptsip-0.3.8a3/docs/Support_policy/policy/registries/ptsip-support-authorization-registry.yaml +14 -0
  37. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-authority-eligibility-result.schema.json +114 -0
  38. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-authority-role.schema.json +123 -0
  39. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-authority-semantics.schema.json +630 -0
  40. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-feature-policy-index.schema.json +53 -0
  41. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-feature-policy.schema.json +186 -0
  42. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-governance-registry.schema.json +28 -0
  43. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-project-authority-record.schema.json +85 -0
  44. ptsip-0.3.8a3/docs/Support_policy/policy/schemas/ptsip-support-subject-binding.schema.json +60 -0
  45. ptsip-0.3.8a3/profiles/example.ptsip.yaml +149 -0
  46. ptsip-0.3.8a3/profiles/history/pp.1.01/example.ptsip.yaml +148 -0
  47. ptsip-0.3.8a3/profiles/history/pp.1.01/hybrid-python-package.ptsip.yaml +39 -0
  48. ptsip-0.3.8a3/profiles/history/pp.1.01/template-python-package.ptsip.yaml +17 -0
  49. ptsip-0.3.8a3/profiles/history/pp.1.02/example.ptsip.yaml +149 -0
  50. ptsip-0.3.8a3/profiles/history/pp.1.02/hybrid-python-package.ptsip.yaml +40 -0
  51. ptsip-0.3.8a3/profiles/history/pp.1.02/template-python-package.ptsip.yaml +18 -0
  52. ptsip-0.3.8a3/profiles/hybrid-python-package.ptsip.yaml +40 -0
  53. ptsip-0.3.8a3/profiles/index.yaml +22 -0
  54. ptsip-0.3.8a3/profiles/template-python-package.ptsip.yaml +18 -0
  55. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/pyproject.toml +82 -60
  56. ptsip-0.3.8a3/registry/project-profile-contracts.yaml +31 -0
  57. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/setup.cfg +4 -4
  58. ptsip-0.3.8a3/setup.py +176 -0
  59. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/PTSIP.egg-info/PKG-INFO +505 -434
  60. ptsip-0.3.8a3/src/PTSIP.egg-info/SOURCES.txt +330 -0
  61. ptsip-0.3.8a3/src/PTSIP.egg-info/top_level.txt +3 -0
  62. ptsip-0.3.8a3/src/agent_contracts/__init__.py +5 -0
  63. ptsip-0.3.8a3/src/agent_contracts/actions/analyze-source-profile.yaml +13 -0
  64. ptsip-0.3.8a3/src/agent_contracts/actions/apply-adoption.yaml +12 -0
  65. ptsip-0.3.8a3/src/agent_contracts/actions/apply-profile-transition.yaml +11 -0
  66. ptsip-0.3.8a3/src/agent_contracts/actions/build-adoption-plan.yaml +10 -0
  67. ptsip-0.3.8a3/src/agent_contracts/actions/build-transition-plan.yaml +10 -0
  68. ptsip-0.3.8a3/src/agent_contracts/actions/capture-repository-snapshot.yaml +13 -0
  69. ptsip-0.3.8a3/src/agent_contracts/actions/collect-conformance-evidence.yaml +13 -0
  70. ptsip-0.3.8a3/src/agent_contracts/actions/compare-profile-authority.yaml +10 -0
  71. ptsip-0.3.8a3/src/agent_contracts/actions/emit-conformance-result.yaml +10 -0
  72. ptsip-0.3.8a3/src/agent_contracts/actions/evaluate-conformance-rules.yaml +10 -0
  73. ptsip-0.3.8a3/src/agent_contracts/actions/map-profile-target.yaml +10 -0
  74. ptsip-0.3.8a3/src/agent_contracts/actions/project-authority-winner.yaml +13 -0
  75. ptsip-0.3.8a3/src/agent_contracts/actions/read-relevant-authority.yaml +13 -0
  76. ptsip-0.3.8a3/src/agent_contracts/actions/resolve-adoption-facts.yaml +11 -0
  77. ptsip-0.3.8a3/src/agent_contracts/actions/resolve-profile-schema.yaml +14 -0
  78. ptsip-0.3.8a3/src/agent_contracts/actions/resolve-reconciliation-state.yaml +10 -0
  79. ptsip-0.3.8a3/src/agent_contracts/actions/validate-profile-structure.yaml +10 -0
  80. ptsip-0.3.8a3/src/agent_contracts/actions/validate-responsibility-map-semantics.yaml +10 -0
  81. ptsip-0.3.8a3/src/agent_contracts/bindings/current.yaml +125 -0
  82. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-apply-requested.yaml +10 -0
  83. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-authority-fresh.yaml +10 -0
  84. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-facts-resolved.yaml +10 -0
  85. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-profile-fresh.yaml +10 -0
  86. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-repository-fresh.yaml +10 -0
  87. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-snapshot-identified.yaml +10 -0
  88. ptsip-0.3.8a3/src/agent_contracts/conditions/adopt-write-authorized.yaml +10 -0
  89. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-authority-fresh.yaml +10 -0
  90. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-coordination-available.yaml +10 -0
  91. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-profile-fresh.yaml +10 -0
  92. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-projection-required.yaml +10 -0
  93. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-semantic-conflict-absent.yaml +10 -0
  94. ptsip-0.3.8a3/src/agent_contracts/conditions/authority-write-authorized.yaml +10 -0
  95. ptsip-0.3.8a3/src/agent_contracts/conditions/conform-profile-ready.yaml +10 -0
  96. ptsip-0.3.8a3/src/agent_contracts/conditions/conform-snapshot-identified.yaml +10 -0
  97. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-apply-requested.yaml +10 -0
  98. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-source-fresh.yaml +10 -0
  99. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-source-profile-identified.yaml +10 -0
  100. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-target-contract-resolved.yaml +10 -0
  101. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-target-fresh.yaml +10 -0
  102. ptsip-0.3.8a3/src/agent_contracts/conditions/migrate-write-authorized.yaml +10 -0
  103. ptsip-0.3.8a3/src/agent_contracts/conditions/validate-contract-resolved.yaml +10 -0
  104. ptsip-0.3.8a3/src/agent_contracts/conditions/validate-profile-selected.yaml +10 -0
  105. ptsip-0.3.8a3/src/agent_contracts/gates/adoption-write.yaml +18 -0
  106. ptsip-0.3.8a3/src/agent_contracts/gates/authority-projection-write.yaml +18 -0
  107. ptsip-0.3.8a3/src/agent_contracts/gates/profile-transition-write.yaml +15 -0
  108. ptsip-0.3.8a3/src/agent_contracts/index.yaml +113 -0
  109. ptsip-0.3.8a3/src/agent_contracts/operations/adopt.yaml +99 -0
  110. ptsip-0.3.8a3/src/agent_contracts/operations/conform.yaml +57 -0
  111. ptsip-0.3.8a3/src/agent_contracts/operations/migrate-profile.yaml +85 -0
  112. ptsip-0.3.8a3/src/agent_contracts/operations/reconcile-authority.yaml +87 -0
  113. ptsip-0.3.8a3/src/agent_contracts/operations/validate.yaml +53 -0
  114. ptsip-0.3.8a3/src/agent_contracts/resolver.py +253 -0
  115. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/action.schema.json +21 -0
  116. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/binding.schema.json +32 -0
  117. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/condition.schema.json +25 -0
  118. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/index.schema.json +27 -0
  119. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/io.schema.json +12 -0
  120. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/mutation-gate.schema.json +17 -0
  121. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/operation.schema.json +259 -0
  122. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/spec.schema.json +13 -0
  123. ptsip-0.3.8a3/src/agent_contracts/schemas/contracts/vocabulary.schema.json +11 -0
  124. ptsip-0.3.8a3/src/agent_contracts/schemas/io/adopt-request.schema.json +8 -0
  125. ptsip-0.3.8a3/src/agent_contracts/schemas/io/adopt-result.schema.json +6 -0
  126. ptsip-0.3.8a3/src/agent_contracts/schemas/io/adopt-state.schema.json +12 -0
  127. ptsip-0.3.8a3/src/agent_contracts/schemas/io/authority-request.schema.json +8 -0
  128. ptsip-0.3.8a3/src/agent_contracts/schemas/io/authority-result.schema.json +6 -0
  129. ptsip-0.3.8a3/src/agent_contracts/schemas/io/authority-state.schema.json +13 -0
  130. ptsip-0.3.8a3/src/agent_contracts/schemas/io/conform-request.schema.json +6 -0
  131. ptsip-0.3.8a3/src/agent_contracts/schemas/io/conform-result.schema.json +6 -0
  132. ptsip-0.3.8a3/src/agent_contracts/schemas/io/conform-state.schema.json +6 -0
  133. ptsip-0.3.8a3/src/agent_contracts/schemas/io/migrate-request.schema.json +11 -0
  134. ptsip-0.3.8a3/src/agent_contracts/schemas/io/migrate-result.schema.json +6 -0
  135. ptsip-0.3.8a3/src/agent_contracts/schemas/io/migrate-state.schema.json +11 -0
  136. ptsip-0.3.8a3/src/agent_contracts/schemas/io/validate-request.schema.json +6 -0
  137. ptsip-0.3.8a3/src/agent_contracts/schemas/io/validate-result.schema.json +6 -0
  138. ptsip-0.3.8a3/src/agent_contracts/schemas/io/validate-state.schema.json +6 -0
  139. ptsip-0.3.8a3/src/agent_contracts/spec/adoption-procedure.yaml +148 -0
  140. ptsip-0.3.8a3/src/agent_contracts/spec/adoption.yaml +33 -0
  141. ptsip-0.3.8a3/src/agent_contracts/spec/agent-behavior.yaml +148 -0
  142. ptsip-0.3.8a3/src/agent_contracts/spec/authority.yaml +40 -0
  143. ptsip-0.3.8a3/src/agent_contracts/spec/classification.yaml +64 -0
  144. ptsip-0.3.8a3/src/agent_contracts/spec/conformance-detail.yaml +120 -0
  145. ptsip-0.3.8a3/src/agent_contracts/spec/conformance.yaml +43 -0
  146. ptsip-0.3.8a3/src/agent_contracts/spec/core.yaml +29 -0
  147. ptsip-0.3.8a3/src/agent_contracts/spec/governance.yaml +30 -0
  148. ptsip-0.3.8a3/src/agent_contracts/spec/profile-transition-detail.yaml +78 -0
  149. ptsip-0.3.8a3/src/agent_contracts/spec/profile-transition.yaml +30 -0
  150. ptsip-0.3.8a3/src/agent_contracts/spec/repository-boundaries.yaml +148 -0
  151. ptsip-0.3.8a3/src/agent_contracts/spec/responsibility-map-detail.yaml +92 -0
  152. ptsip-0.3.8a3/src/agent_contracts/spec/responsibility-map.yaml +36 -0
  153. ptsip-0.3.8a3/src/agent_contracts/spec/specification-governance.yaml +91 -0
  154. ptsip-0.3.8a3/src/agent_contracts/validator.py +723 -0
  155. ptsip-0.3.8a3/src/agent_contracts/vocabulary/authority.yaml +20 -0
  156. ptsip-0.3.8a3/src/agent_contracts/vocabulary/diagnostics.yaml +23 -0
  157. ptsip-0.3.8a3/src/agent_contracts/vocabulary/lifecycle.yaml +20 -0
  158. ptsip-0.3.8a3/src/agent_contracts/vocabulary/outcomes.yaml +26 -0
  159. ptsip-0.3.8a3/src/agent_contracts/vocabulary/terminology.yaml +428 -0
  160. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/__init__.py +5 -5
  161. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/__main__.py +4 -4
  162. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/adoption.py +225 -225
  163. ptsip-0.3.8a3/src/ptsip/agent_contracts/__init__.py +12 -0
  164. ptsip-0.3.8a3/src/ptsip/agent_contracts/bindings/current.yaml +38 -0
  165. ptsip-0.3.8a3/src/ptsip/agent_contracts/index.yaml +53 -0
  166. ptsip-0.3.8a3/src/ptsip/agent_contracts/operations/adopt.yaml +49 -0
  167. ptsip-0.3.8a3/src/ptsip/agent_contracts/operations/conform.yaml +42 -0
  168. ptsip-0.3.8a3/src/ptsip/agent_contracts/operations/migrate-profile.yaml +42 -0
  169. ptsip-0.3.8a3/src/ptsip/agent_contracts/operations/reconcile-authority.yaml +40 -0
  170. ptsip-0.3.8a3/src/ptsip/agent_contracts/operations/validate.yaml +36 -0
  171. ptsip-0.3.8a3/src/ptsip/agent_contracts/runtime.py +102 -0
  172. ptsip-0.3.8a3/src/ptsip/agent_contracts/schemas/binding.schema.json +151 -0
  173. ptsip-0.3.8a3/src/ptsip/agent_contracts/schemas/index.schema.json +51 -0
  174. ptsip-0.3.8a3/src/ptsip/agent_contracts/schemas/operation.schema.json +122 -0
  175. ptsip-0.3.8a3/src/ptsip/agent_contracts/schemas/spec.schema.json +96 -0
  176. ptsip-0.3.8a3/src/ptsip/agent_contracts/schemas/vocabulary.schema.json +50 -0
  177. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/adoption.yaml +23 -0
  178. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/authority.yaml +32 -0
  179. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/classification.yaml +31 -0
  180. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/conformance.yaml +27 -0
  181. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/core.yaml +21 -0
  182. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/governance.yaml +17 -0
  183. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/profile-transition.yaml +27 -0
  184. ptsip-0.3.8a3/src/ptsip/agent_contracts/spec/responsibility-map.yaml +26 -0
  185. ptsip-0.3.8a3/src/ptsip/agent_contracts/validator.py +195 -0
  186. ptsip-0.3.8a3/src/ptsip/agent_contracts/vocabulary/authority.yaml +8 -0
  187. ptsip-0.3.8a3/src/ptsip/agent_contracts/vocabulary/diagnostics.yaml +7 -0
  188. ptsip-0.3.8a3/src/ptsip/agent_contracts/vocabulary/lifecycle.yaml +9 -0
  189. ptsip-0.3.8a3/src/ptsip/agent_contracts/vocabulary/outcomes.yaml +8 -0
  190. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/__init__.py +5 -5
  191. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/client.py +53 -53
  192. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/github_authority.py +659 -659
  193. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/github_client.py +200 -200
  194. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/github_reconciliation.py +405 -405
  195. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/local_client.py +129 -129
  196. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/server.py +130 -130
  197. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/service.py +345 -345
  198. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/app/store.py +283 -283
  199. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/artifact_evidence.py +150 -150
  200. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/build_resolution.py +315 -315
  201. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/__init__.py +6 -6
  202. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/generator.py +345 -345
  203. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/generator_core.py +87 -87
  204. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/i18n.py +110 -110
  205. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/model.py +32 -32
  206. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/render.py +79 -79
  207. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/__init__.py +34 -34
  208. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/model.py +90 -90
  209. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/parser.py +97 -97
  210. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/profile_projection.py +467 -345
  211. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/resolver.py +72 -72
  212. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/transports/__init__.py +1 -1
  213. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/clarification/transports/github_issue.py +162 -162
  214. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/cli.py +1171 -1019
  215. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/conformance.py +627 -597
  216. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/conformance_audit.py +143 -143
  217. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/conformance_engine.py +409 -393
  218. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/constants.py +9 -9
  219. ptsip-0.3.8a3/src/ptsip/context_plane.py +687 -0
  220. ptsip-0.3.8a3/src/ptsip/dependency_analysis.py +232 -0
  221. ptsip-0.3.8a3/src/ptsip/dependency_cache.py +110 -0
  222. ptsip-0.3.8a3/src/ptsip/dependency_reconciliation.py +248 -0
  223. ptsip-0.3.8a3/src/ptsip/dependency_review.py +174 -0
  224. ptsip-0.3.8a3/src/ptsip/dependency_validation.py +106 -0
  225. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/doctor.py +33 -33
  226. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/evidence/__init__.py +33 -33
  227. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/evidence/adapters.py +486 -486
  228. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/evidence/contract.py +230 -230
  229. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/evidence/normalization.py +173 -173
  230. ptsip-0.3.8a3/src/ptsip/governance/__init__.py +45 -0
  231. ptsip-0.3.8a3/src/ptsip/governance/authority.py +371 -0
  232. ptsip-0.3.8a3/src/ptsip/governance/authorization.py +55 -0
  233. ptsip-0.3.8a3/src/ptsip/governance/model.py +232 -0
  234. ptsip-0.3.8a3/src/ptsip/governance/subject_matching.py +78 -0
  235. ptsip-0.3.8a3/src/ptsip/governance/support_assets.py +91 -0
  236. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/__init__.py +1 -1
  237. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/candidate_evidence.py +537 -537
  238. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/components.py +74 -74
  239. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/dependencies.py +502 -496
  240. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/dependencies_030.py +69 -69
  241. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/dotnet.py +188 -188
  242. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/go.py +157 -157
  243. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/inventory.py +161 -161
  244. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/javascript.py +376 -376
  245. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/lexing.py +121 -121
  246. ptsip-0.3.8a3/src/ptsip/inspection/python_resolution.py +164 -0
  247. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/inspection/source_adapters.py +60 -60
  248. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/lifecycle_evidence.py +310 -310
  249. ptsip-0.3.8a3/src/ptsip/local_profile_catalog.py +157 -0
  250. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/__init__.py +240 -240
  251. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/analyzer.py +702 -702
  252. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/direct_convergence.py +324 -324
  253. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/direct_execution.py +291 -291
  254. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/direct_planner.py +374 -374
  255. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/execution_apply.py +408 -408
  256. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/execution_binding.py +417 -417
  257. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/execution_ledger.py +256 -256
  258. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/execution_model.py +280 -280
  259. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/execution_promotion.py +195 -195
  260. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/identity_rewrite.py +454 -454
  261. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/model.py +420 -420
  262. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/planner.py +857 -857
  263. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/migration/proposal.py +375 -375
  264. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/model.py +165 -165
  265. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/pilot/__init__.py +1 -1
  266. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/pilot/runner.py +170 -170
  267. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/profile_compatibility.py +184 -179
  268. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/profile_identity.py +314 -229
  269. ptsip-0.3.8a3/src/ptsip/profile_metadata.py +61 -0
  270. ptsip-0.3.8a3/src/ptsip/project_profile_contracts.py +100 -0
  271. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/proposed_component.py +128 -128
  272. ptsip-0.3.8a3/src/ptsip/remediation/__init__.py +77 -0
  273. ptsip-0.3.8a3/src/ptsip/remediation/domain/__init__.py +39 -0
  274. ptsip-0.3.8a3/src/ptsip/remediation/domain/model.py +417 -0
  275. ptsip-0.3.8a3/src/ptsip/remediation/escalation/__init__.py +37 -0
  276. ptsip-0.3.8a3/src/ptsip/remediation/escalation/contract.py +388 -0
  277. ptsip-0.3.8a3/src/ptsip/remediation/escalation/engine.py +212 -0
  278. ptsip-0.3.8a3/src/ptsip/remediation/rules/__init__.py +23 -0
  279. ptsip-0.3.8a3/src/ptsip/remediation/rules/contract.py +276 -0
  280. ptsip-0.3.8a3/src/ptsip/remediation/solution/candidate.py +317 -0
  281. ptsip-0.3.8a3/src/ptsip/remediation/solution/elimination.py +469 -0
  282. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/__init__.py +1 -1
  283. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/discover.py +68 -68
  284. ptsip-0.3.8a3/src/ptsip/repository/namespace.py +86 -0
  285. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/profile_convergence.py +409 -409
  286. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/profile_path.py +97 -76
  287. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/profile_transition.py +377 -377
  288. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/remote.py +54 -54
  289. ptsip-0.3.8a3/src/ptsip/repository/schemas/repository-index.schema.json +104 -0
  290. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/repository/snapshot.py +173 -173
  291. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/review_evidence.py +406 -406
  292. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/source_compat/__init__.py +56 -56
  293. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/source_compat/integrity.py +131 -131
  294. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/source_compat/model.py +260 -260
  295. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/source_compat/reader.py +336 -336
  296. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/spec_identity.py +24 -24
  297. ptsip-0.3.8a3/src/ptsip/specdata/project-profile-contracts.yaml +31 -0
  298. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-agent-classification.schema.json +57 -57
  299. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-artifact-evidence.schema.json +68 -68
  300. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-diagnostic.schema.json +58 -58
  301. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-normalized-evidence.schema.json +126 -126
  302. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-profile-pp-1.01.schema.json +309 -309
  303. ptsip-0.3.8a3/src/ptsip/specdata/ptsip-profile-pp-1.02.schema.json +604 -0
  304. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-profile.schema.json +296 -296
  305. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-registry.yaml +333 -333
  306. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-source-profile-0.3.4.schema.json +55 -55
  307. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-source-profile-0.3.6.schema.json +35 -35
  308. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/specification_binding.py +246 -212
  309. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/storage/__init__.py +1 -1
  310. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/storage/local_state.py +40 -40
  311. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/topology.py +747 -747
  312. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/__init__.py +1 -1
  313. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/components.py +357 -357
  314. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/profile.py +513 -479
  315. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/rules.py +186 -186
  316. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/specification.py +60 -52
  317. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation/templates.py +767 -767
  318. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/ptsip/validation_capture.py +168 -168
  319. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/__init__.py +64 -64
  320. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/domain/__init__.py +1 -1
  321. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/domain/model.py +88 -88
  322. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/domain/registry.py +350 -350
  323. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/domain/selector.py +41 -41
  324. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/execution/__init__.py +1 -1
  325. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/execution/adapters/__init__.py +1 -1
  326. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/execution/adapters/command.py +67 -67
  327. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/execution/runner.py +102 -102
  328. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/integration/__init__.py +1 -1
  329. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/vpms/integration/ptsip_bridge.py +153 -153
  330. ptsip-0.3.8a1/MANIFEST.in +0 -1
  331. ptsip-0.3.8a1/src/PTSIP.egg-info/SOURCES.txt +0 -128
  332. ptsip-0.3.8a1/src/PTSIP.egg-info/top_level.txt +0 -2
  333. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/PTSIP.egg-info/dependency_links.txt +0 -0
  334. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/src/PTSIP.egg-info/entry_points.txt +0 -0
  335. {ptsip-0.3.8a1 → ptsip-0.3.8a3}/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.