PTSIP 0.3.7__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.
- ptsip-0.3.8a2/License-Authority/COMMERCIAL-USE.md +301 -0
- ptsip-0.3.8a2/License-Authority/LICENSE-GUIDE.md +159 -0
- ptsip-0.3.8a2/License-Authority/LICENSE-HISTORY.md +15 -0
- ptsip-0.3.8a2/License-Authority/LICENSE.md +414 -0
- ptsip-0.3.8a2/License-Authority/NOTICE.md +22 -0
- ptsip-0.3.8a2/License-Authority/license-authority.yaml +133 -0
- ptsip-0.3.8a2/MANIFEST.in +5 -0
- ptsip-0.3.8a2/PKG-INFO +489 -0
- ptsip-0.3.8a2/README.md +451 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0001.yaml +28 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0002.yaml +28 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0003.yaml +27 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0004.yaml +53 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0005.yaml +32 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0006.yaml +43 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0007.yaml +52 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0008.yaml +66 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0009.yaml +54 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0010.yaml +40 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0011.yaml +42 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0012.yaml +38 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0013.yaml +38 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0014.yaml +46 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0015.yaml +52 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0016.yaml +52 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0017.yaml +23 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0018.yaml +41 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0019.yaml +40 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0020.yaml +34 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/SFP-0021.yaml +44 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/index.yaml +66 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-role-registry.yaml +374 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-schema-registry.yaml +119 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authority-subject-registry.yaml +47 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/registries/ptsip-support-authorization-registry.yaml +14 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-eligibility-result.schema.json +114 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-role.schema.json +123 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-authority-semantics.schema.json +586 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-feature-policy-index.schema.json +53 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-feature-policy.schema.json +186 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-governance-registry.schema.json +28 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-project-authority-record.schema.json +85 -0
- ptsip-0.3.8a2/docs/Support_policy/policy/schemas/ptsip-support-subject-binding.schema.json +60 -0
- ptsip-0.3.8a2/profiles/example.ptsip.yaml +149 -0
- ptsip-0.3.8a2/profiles/history/pp.1.01/example.ptsip.yaml +148 -0
- ptsip-0.3.8a2/profiles/history/pp.1.01/hybrid-python-package.ptsip.yaml +39 -0
- ptsip-0.3.8a2/profiles/history/pp.1.01/template-python-package.ptsip.yaml +17 -0
- ptsip-0.3.8a2/profiles/history/pp.1.02/example.ptsip.yaml +149 -0
- ptsip-0.3.8a2/profiles/history/pp.1.02/hybrid-python-package.ptsip.yaml +40 -0
- ptsip-0.3.8a2/profiles/history/pp.1.02/template-python-package.ptsip.yaml +18 -0
- ptsip-0.3.8a2/profiles/hybrid-python-package.ptsip.yaml +40 -0
- ptsip-0.3.8a2/profiles/index.yaml +22 -0
- ptsip-0.3.8a2/profiles/template-python-package.ptsip.yaml +18 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/pyproject.toml +82 -60
- ptsip-0.3.8a2/registry/project-profile-contracts.yaml +31 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/setup.cfg +4 -4
- ptsip-0.3.8a2/setup.py +176 -0
- ptsip-0.3.8a2/src/PTSIP.egg-info/PKG-INFO +489 -0
- ptsip-0.3.8a2/src/PTSIP.egg-info/SOURCES.txt +328 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/PTSIP.egg-info/requires.txt +1 -1
- ptsip-0.3.8a2/src/PTSIP.egg-info/top_level.txt +3 -0
- ptsip-0.3.8a2/src/agent_contracts/__init__.py +5 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/analyze-source-profile.yaml +13 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/apply-adoption.yaml +12 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/apply-profile-transition.yaml +11 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/build-adoption-plan.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/build-transition-plan.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/capture-repository-snapshot.yaml +13 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/collect-conformance-evidence.yaml +13 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/compare-profile-authority.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/emit-conformance-result.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/evaluate-conformance-rules.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/map-profile-target.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/project-authority-winner.yaml +13 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/read-relevant-authority.yaml +13 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/resolve-adoption-facts.yaml +11 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/resolve-profile-schema.yaml +14 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/resolve-reconciliation-state.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/validate-profile-structure.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/actions/validate-responsibility-map-semantics.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/bindings/current.yaml +125 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-apply-requested.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-authority-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-facts-resolved.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-profile-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-repository-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-snapshot-identified.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/adopt-write-authorized.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-authority-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-coordination-available.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-profile-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-projection-required.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-semantic-conflict-absent.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/authority-write-authorized.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/conform-profile-ready.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/conform-snapshot-identified.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-apply-requested.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-source-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-source-profile-identified.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-target-contract-resolved.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-target-fresh.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/migrate-write-authorized.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/validate-contract-resolved.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/conditions/validate-profile-selected.yaml +10 -0
- ptsip-0.3.8a2/src/agent_contracts/gates/adoption-write.yaml +18 -0
- ptsip-0.3.8a2/src/agent_contracts/gates/authority-projection-write.yaml +18 -0
- ptsip-0.3.8a2/src/agent_contracts/gates/profile-transition-write.yaml +15 -0
- ptsip-0.3.8a2/src/agent_contracts/index.yaml +113 -0
- ptsip-0.3.8a2/src/agent_contracts/operations/adopt.yaml +99 -0
- ptsip-0.3.8a2/src/agent_contracts/operations/conform.yaml +57 -0
- ptsip-0.3.8a2/src/agent_contracts/operations/migrate-profile.yaml +85 -0
- ptsip-0.3.8a2/src/agent_contracts/operations/reconcile-authority.yaml +87 -0
- ptsip-0.3.8a2/src/agent_contracts/operations/validate.yaml +53 -0
- ptsip-0.3.8a2/src/agent_contracts/resolver.py +253 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/action.schema.json +21 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/binding.schema.json +32 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/condition.schema.json +25 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/index.schema.json +27 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/io.schema.json +12 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/mutation-gate.schema.json +17 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/operation.schema.json +259 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/spec.schema.json +13 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/contracts/vocabulary.schema.json +11 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-request.schema.json +8 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-result.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/adopt-state.schema.json +12 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-request.schema.json +8 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-result.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/authority-state.schema.json +13 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-request.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-result.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/conform-state.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-request.schema.json +11 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-result.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/migrate-state.schema.json +11 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-request.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-result.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/schemas/io/validate-state.schema.json +6 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/adoption-procedure.yaml +148 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/adoption.yaml +33 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/agent-behavior.yaml +148 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/authority.yaml +40 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/classification.yaml +64 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/conformance-detail.yaml +120 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/conformance.yaml +43 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/core.yaml +29 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/governance.yaml +30 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/profile-transition-detail.yaml +78 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/profile-transition.yaml +30 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/repository-boundaries.yaml +148 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/responsibility-map-detail.yaml +92 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/responsibility-map.yaml +36 -0
- ptsip-0.3.8a2/src/agent_contracts/spec/specification-governance.yaml +91 -0
- ptsip-0.3.8a2/src/agent_contracts/validator.py +723 -0
- ptsip-0.3.8a2/src/agent_contracts/vocabulary/authority.yaml +20 -0
- ptsip-0.3.8a2/src/agent_contracts/vocabulary/diagnostics.yaml +23 -0
- ptsip-0.3.8a2/src/agent_contracts/vocabulary/lifecycle.yaml +20 -0
- ptsip-0.3.8a2/src/agent_contracts/vocabulary/outcomes.yaml +26 -0
- ptsip-0.3.8a2/src/agent_contracts/vocabulary/terminology.yaml +428 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/__init__.py +5 -5
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/__main__.py +4 -4
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/adoption.py +225 -225
- ptsip-0.3.8a2/src/ptsip/agent_contracts/__init__.py +12 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/bindings/current.yaml +38 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/index.yaml +53 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/adopt.yaml +49 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/conform.yaml +42 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/migrate-profile.yaml +42 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/reconcile-authority.yaml +40 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/operations/validate.yaml +36 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/runtime.py +102 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/binding.schema.json +151 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/index.schema.json +51 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/operation.schema.json +122 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/spec.schema.json +96 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/schemas/vocabulary.schema.json +50 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/adoption.yaml +23 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/authority.yaml +32 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/classification.yaml +31 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/conformance.yaml +27 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/core.yaml +21 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/governance.yaml +17 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/profile-transition.yaml +27 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/spec/responsibility-map.yaml +26 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/validator.py +195 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/authority.yaml +8 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/diagnostics.yaml +7 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/lifecycle.yaml +9 -0
- ptsip-0.3.8a2/src/ptsip/agent_contracts/vocabulary/outcomes.yaml +8 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/__init__.py +5 -5
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/client.py +53 -53
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/github_authority.py +659 -656
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/github_client.py +200 -200
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/github_reconciliation.py +405 -405
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/local_client.py +129 -129
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/server.py +130 -130
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/service.py +345 -337
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/app/store.py +283 -283
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/artifact_evidence.py +150 -150
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/build_resolution.py +315 -315
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/__init__.py +6 -6
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/generator.py +345 -282
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/generator_core.py +87 -87
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/i18n.py +110 -110
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/model.py +32 -32
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/render.py +79 -79
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/__init__.py +34 -34
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/model.py +90 -90
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/parser.py +97 -97
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/profile_projection.py +467 -345
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/resolution/resolver.py +72 -72
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/transports/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/clarification/transports/github_issue.py +162 -162
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/cli.py +1106 -915
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/conformance.py +627 -597
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/conformance_audit.py +143 -143
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/conformance_engine.py +409 -393
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/constants.py +9 -9
- ptsip-0.3.8a2/src/ptsip/dependency_analysis.py +232 -0
- ptsip-0.3.8a2/src/ptsip/dependency_cache.py +110 -0
- ptsip-0.3.8a2/src/ptsip/dependency_reconciliation.py +248 -0
- ptsip-0.3.8a2/src/ptsip/dependency_review.py +174 -0
- ptsip-0.3.8a2/src/ptsip/dependency_validation.py +106 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/doctor.py +33 -33
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/evidence/__init__.py +33 -33
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/evidence/adapters.py +486 -486
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/evidence/contract.py +230 -230
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/evidence/normalization.py +173 -173
- ptsip-0.3.8a2/src/ptsip/governance/__init__.py +45 -0
- ptsip-0.3.8a2/src/ptsip/governance/authority.py +371 -0
- ptsip-0.3.8a2/src/ptsip/governance/authorization.py +55 -0
- ptsip-0.3.8a2/src/ptsip/governance/model.py +232 -0
- ptsip-0.3.8a2/src/ptsip/governance/subject_matching.py +78 -0
- ptsip-0.3.8a2/src/ptsip/governance/support_assets.py +91 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/candidate_evidence.py +537 -537
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/components.py +74 -74
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/dependencies.py +502 -496
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/dependencies_030.py +69 -69
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/dotnet.py +188 -188
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/go.py +157 -157
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/inventory.py +161 -161
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/javascript.py +376 -376
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/lexing.py +121 -121
- ptsip-0.3.8a2/src/ptsip/inspection/python_resolution.py +164 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/inspection/source_adapters.py +60 -60
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/lifecycle_evidence.py +310 -310
- ptsip-0.3.8a2/src/ptsip/local_profile_catalog.py +157 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/__init__.py +240 -240
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/analyzer.py +702 -702
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/direct_convergence.py +324 -324
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/direct_execution.py +291 -291
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/direct_planner.py +374 -374
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/execution_apply.py +408 -408
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/execution_binding.py +417 -417
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/execution_ledger.py +256 -256
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/execution_model.py +280 -280
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/execution_promotion.py +195 -195
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/identity_rewrite.py +454 -454
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/model.py +420 -420
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/planner.py +857 -857
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/migration/proposal.py +375 -375
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/model.py +165 -165
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/pilot/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/pilot/runner.py +170 -170
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/profile_compatibility.py +184 -179
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/profile_identity.py +314 -229
- ptsip-0.3.8a2/src/ptsip/profile_metadata.py +61 -0
- ptsip-0.3.8a2/src/ptsip/project_profile_contracts.py +100 -0
- ptsip-0.3.8a2/src/ptsip/proposed_component.py +128 -0
- ptsip-0.3.8a2/src/ptsip/remediation/__init__.py +77 -0
- ptsip-0.3.8a2/src/ptsip/remediation/domain/__init__.py +39 -0
- ptsip-0.3.8a2/src/ptsip/remediation/domain/model.py +417 -0
- ptsip-0.3.8a2/src/ptsip/remediation/escalation/__init__.py +37 -0
- ptsip-0.3.8a2/src/ptsip/remediation/escalation/contract.py +388 -0
- ptsip-0.3.8a2/src/ptsip/remediation/escalation/engine.py +212 -0
- ptsip-0.3.8a2/src/ptsip/remediation/rules/__init__.py +23 -0
- ptsip-0.3.8a2/src/ptsip/remediation/rules/contract.py +276 -0
- ptsip-0.3.8a2/src/ptsip/remediation/solution/candidate.py +317 -0
- ptsip-0.3.8a2/src/ptsip/remediation/solution/elimination.py +469 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/discover.py +68 -68
- ptsip-0.3.8a2/src/ptsip/repository/namespace.py +86 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/profile_convergence.py +409 -409
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/profile_path.py +97 -76
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/profile_transition.py +377 -377
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/remote.py +54 -54
- ptsip-0.3.8a2/src/ptsip/repository/schemas/repository-index.schema.json +104 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/repository/snapshot.py +173 -173
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/review_evidence.py +406 -406
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/source_compat/__init__.py +56 -56
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/source_compat/integrity.py +131 -131
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/source_compat/model.py +260 -260
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/source_compat/reader.py +336 -336
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/spec_identity.py +24 -24
- ptsip-0.3.8a2/src/ptsip/specdata/project-profile-contracts.yaml +31 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-agent-classification.schema.json +57 -57
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-artifact-evidence.schema.json +68 -68
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-diagnostic.schema.json +58 -58
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-normalized-evidence.schema.json +126 -126
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-profile-pp-1.01.schema.json +309 -309
- ptsip-0.3.8a2/src/ptsip/specdata/ptsip-profile-pp-1.02.schema.json +604 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-profile.schema.json +296 -296
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-registry.yaml +333 -333
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-source-profile-0.3.4.schema.json +55 -55
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specdata/ptsip-source-profile-0.3.6.schema.json +35 -35
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/specification_binding.py +246 -212
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/storage/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/storage/local_state.py +40 -40
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/topology.py +747 -747
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/components.py +357 -357
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/profile.py +513 -479
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/rules.py +186 -186
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/specification.py +60 -52
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation/templates.py +767 -767
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/ptsip/validation_capture.py +168 -168
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/__init__.py +64 -64
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/domain/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/domain/model.py +88 -88
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/domain/registry.py +350 -350
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/domain/selector.py +41 -41
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/execution/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/execution/adapters/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/execution/adapters/command.py +67 -67
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/execution/runner.py +102 -102
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/integration/__init__.py +1 -1
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/vpms/integration/ptsip_bridge.py +153 -153
- ptsip-0.3.7/LICENSE +0 -201
- ptsip-0.3.7/MANIFEST.in +0 -1
- ptsip-0.3.7/PKG-INFO +0 -421
- ptsip-0.3.7/README.md +0 -388
- ptsip-0.3.7/src/PTSIP.egg-info/PKG-INFO +0 -421
- ptsip-0.3.7/src/PTSIP.egg-info/SOURCES.txt +0 -122
- ptsip-0.3.7/src/PTSIP.egg-info/top_level.txt +0 -2
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/PTSIP.egg-info/dependency_links.txt +0 -0
- {ptsip-0.3.7 → ptsip-0.3.8a2}/src/PTSIP.egg-info/entry_points.txt +0 -0
|
@@ -0,0 +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.
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# PTSIP License Guide
|
|
2
|
+
|
|
3
|
+
This guide explains PTSIP Community Reciprocity License 1.0 in plain language.
|
|
4
|
+
|
|
5
|
+
**Effective Time:** `2026-09-15T00:00:00Z` (UTC). It is not a substitute for LICENSE.md. If this guide conflicts with LICENSE.md, LICENSE.md controls.
|
|
6
|
+
|
|
7
|
+
## Core philosophy
|
|
8
|
+
|
|
9
|
+
> PTSIP does not require contribution as a price for access. PTSIP requires reciprocity so that knowledge gained through PTSIP does not become a one-way private benefit.
|
|
10
|
+
|
|
11
|
+
PTSIP is publicly available because the project is intended to be inspected, used, tested, improved, and shared. The license is not designed primarily to collect money. It is designed to preserve original authorship and to make organized or commercial users return useful PTSIP-related knowledge and improvements when they obtain them.
|
|
12
|
+
|
|
13
|
+
This is a source-available community reciprocity license. It is not an OSI-approved Open Source license.
|
|
14
|
+
|
|
15
|
+
## Quick guide
|
|
16
|
+
|
|
17
|
+
| Use | Allowed? | Main duties |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| Personal private, noncommercial use | Yes | Keep notices in copies; no registration or periodic report |
|
|
20
|
+
| Public noncommercial redistribution | Yes | Attribution; keep PTSIP-derived portions under this license |
|
|
21
|
+
| Modified PTSIP distribution | Yes | Attribution; make the PTSIP-derived source available under this license |
|
|
22
|
+
| Educational use | Yes | Attribution; institutional long-term use follows research reciprocity |
|
|
23
|
+
| Institutional or company research | Yes | Attribution; annual lightweight report after 12 months; Material Findings shared |
|
|
24
|
+
| Commercial development before revenue | Yes | Commercial registration and cooperation duties apply |
|
|
25
|
+
| Commercial use with zero revenue or operating loss | Yes | Same commercial duties; profit is not the trigger |
|
|
26
|
+
| Internal company use that saves time, AI credits, or development cost | Yes | Commercial duties when used for a business purpose |
|
|
27
|
+
| Competing product | Yes | Attribution if PTSIP material is used; commercial reciprocity if used commercially |
|
|
28
|
+
| AI training or agent development | Yes | Attribution plus research or commercial reciprocity as applicable |
|
|
29
|
+
| Independent implementation of a similar idea without copying PTSIP expression | Not restricted by this license solely because of similarity | Do not falsely claim PTSIP authorship or official status |
|
|
30
|
+
|
|
31
|
+
## What counts as Commercial Use?
|
|
32
|
+
|
|
33
|
+
Commercial Use is based on purpose, not accounting results.
|
|
34
|
+
|
|
35
|
+
It includes use intended to develop, operate, support, improve, market, sell, or materially enable a business activity. Revenue does not need to exist.
|
|
36
|
+
|
|
37
|
+
Examples that remain Commercial Use:
|
|
38
|
+
|
|
39
|
+
- a paid product that has not launched yet;
|
|
40
|
+
- a startup product with zero revenue;
|
|
41
|
+
- a product or company operating at a loss;
|
|
42
|
+
- a free beta intended to become a business;
|
|
43
|
+
- an advertising-supported or customer-acquisition service;
|
|
44
|
+
- internal use that reduces development cost, context use, reasoning cost, token use, or coding-agent credits;
|
|
45
|
+
- consulting or client work;
|
|
46
|
+
- an investment-funded commercial development project.
|
|
47
|
+
|
|
48
|
+
A company does not avoid cooperation duties by saying that it cannot measure how much profit came from PTSIP.
|
|
49
|
+
|
|
50
|
+
## Research can be long or short
|
|
51
|
+
|
|
52
|
+
PTSIP does not require a project to predict when research will end.
|
|
53
|
+
|
|
54
|
+
Institutional Research Use:
|
|
55
|
+
|
|
56
|
+
- requires attribution;
|
|
57
|
+
- requires an annual Research Cooperation Report only after use continues for more than 12 months;
|
|
58
|
+
- requires a Research Cooperation Summary when material research ends or is first materially published if the same period has not already been substantially reported;
|
|
59
|
+
- requires Material Findings to be shared within the period defined in LICENSE.
|
|
60
|
+
|
|
61
|
+
If a research project later becomes a commercial development effort, commercial duties begin when the Commercial Purpose begins. Earlier research duties do not disappear.
|
|
62
|
+
|
|
63
|
+
## What must be shared?
|
|
64
|
+
|
|
65
|
+
PTSIP asks for PTSIP-related knowledge, not unrelated company secrets.
|
|
66
|
+
|
|
67
|
+
Useful reciprocity may include:
|
|
68
|
+
|
|
69
|
+
- compatibility results;
|
|
70
|
+
- coding-agent behavior findings;
|
|
71
|
+
- policy ambiguities;
|
|
72
|
+
- false positives and false negatives;
|
|
73
|
+
- failure patterns;
|
|
74
|
+
- test or evaluation results;
|
|
75
|
+
- reproducible examples;
|
|
76
|
+
- anonymized or aggregated usage observations;
|
|
77
|
+
- documentation corrections;
|
|
78
|
+
- architecture or policy proposals;
|
|
79
|
+
- PTSIP patches and modifications.
|
|
80
|
+
|
|
81
|
+
The license does not require disclosure of unrelated proprietary product code, customer-confidential information, credentials, personal information, or unrelated trade secrets.
|
|
82
|
+
|
|
83
|
+
## What if nothing went wrong?
|
|
84
|
+
|
|
85
|
+
You are not required to invent defects or send meaningless patches.
|
|
86
|
+
|
|
87
|
+
A valid report may truthfully say that no material defect was found. It must still identify the real use context, PTSIP version, relevant environment, integrations, and other required information that is reasonably available.
|
|
88
|
+
|
|
89
|
+
The purpose is to return actual knowledge gained through use.
|
|
90
|
+
|
|
91
|
+
## Code reuse and PTSIP architecture
|
|
92
|
+
|
|
93
|
+
The license protects copyrightable PTSIP expression rather than claiming ownership of every similar software idea.
|
|
94
|
+
|
|
95
|
+
Protected material includes PTSIP-specific code, Specification text, schemas, policy definitions, rule identifiers, conformance vectors, documentation, and copyrightable selection or arrangement.
|
|
96
|
+
|
|
97
|
+
Examples likely to remain PTSIP-derived when PTSIP material was used as the source include:
|
|
98
|
+
|
|
99
|
+
- porting PTSIP code from Python to another language;
|
|
100
|
+
- translating PTSIP normative text into a machine contract;
|
|
101
|
+
- copying PTSIP schemas and renaming fields;
|
|
102
|
+
- using PTSIP source or Specification as input to an AI system and distributing the transformed implementation;
|
|
103
|
+
- reproducing a substantial distinctive arrangement of PTSIP-specific protected material.
|
|
104
|
+
|
|
105
|
+
A separately created implementation is not automatically PTSIP-derived merely because it independently reaches a similar general architecture or method.
|
|
106
|
+
|
|
107
|
+
There is therefore no fragile list of specific module paths that must be updated whenever PTSIP is refactored.
|
|
108
|
+
|
|
109
|
+
## Standing Commercial Authorization
|
|
110
|
+
|
|
111
|
+
Commercial users do not need to wait for individual approval.
|
|
112
|
+
|
|
113
|
+
A commercial user receives Standing Commercial Authorization by:
|
|
114
|
+
|
|
115
|
+
1. expressly accepting the applicable PTSIP License and Commercial Cooperation Duty;
|
|
116
|
+
2. identifying the PTSIP version or immutable revision actually used;
|
|
117
|
+
3. registering within 90 days of first Commercial Use; and
|
|
118
|
+
4. continuing to satisfy attribution and cooperation duties.
|
|
119
|
+
|
|
120
|
+
There is no default monetary license fee.
|
|
121
|
+
|
|
122
|
+
See COMMERCIAL-USE.md for the current registration and reporting procedure.
|
|
123
|
+
|
|
124
|
+
## Missed reports and correction
|
|
125
|
+
|
|
126
|
+
The license is designed to prefer correction over punishment.
|
|
127
|
+
|
|
128
|
+
Ordinary missed obligations have a 90-day cure period. The compliance periods are intended to encourage voluntary cooperation and reasonable correction, not to create traps for users acting in good faith. If the user cures the omission, ordinary suspended authorization can be automatically reinstated.
|
|
129
|
+
|
|
130
|
+
Intentional attribution falsification, deliberately false reporting, concealment, or repeated attempts to evade reciprocity are treated more seriously.
|
|
131
|
+
|
|
132
|
+
## Project decisions and shared improvement
|
|
133
|
+
|
|
134
|
+
PTSIP supports project decisions; it does not replace the user's authority over the user's own project. Users decide how PTSIP guidance, classifications, validation results, and conformance results are applied in their own environments.
|
|
135
|
+
|
|
136
|
+
A PTSIP conformance result means conformance to the applicable PTSIP rules. It is not intended as a general certification of every quality or property of the surrounding project.
|
|
137
|
+
|
|
138
|
+
The cooperation model exists so that useful findings and improvements can return to the community. Reporting a finding does not make the reporter responsible for another user's independent application of PTSIP, and receiving a finding does not create a promise that the project will implement a particular correction within a particular period.
|
|
139
|
+
|
|
140
|
+
## AI use
|
|
141
|
+
|
|
142
|
+
PTSIP may be used for training, fine-tuning, evaluation, dataset construction, agent development, or compatibility testing.
|
|
143
|
+
|
|
144
|
+
PTSIP attribution should appear in a reasonably discoverable model card, dataset record, training record, system documentation, technical documentation, research record, or equivalent place. The license does not require every model output to repeat the notice.
|
|
145
|
+
|
|
146
|
+
Commercial AI use follows commercial reciprocity. Institutional noncommercial AI research follows research reciprocity.
|
|
147
|
+
|
|
148
|
+
## Historical license versions
|
|
149
|
+
|
|
150
|
+
The license attached to a particular PTSIP revision governs the permissions granted with that copy, subject to applicable law.
|
|
151
|
+
|
|
152
|
+
Later PTSIP license versions do not silently rewrite earlier copies. A later PTSIP release may use a later license and may require acceptance of that later license for that later release.
|
|
153
|
+
|
|
154
|
+
## Project files
|
|
155
|
+
|
|
156
|
+
- [LICENSE.md](LICENSE.md) — controlling license text
|
|
157
|
+
- [NOTICE.md](NOTICE.md) — standard attribution text
|
|
158
|
+
- [LICENSE-GUIDE.md](LICENSE-GUIDE.md) — this plain-language guide
|
|
159
|
+
- [COMMERCIAL-USE.md](COMMERCIAL-USE.md) — Standing Commercial Authorization, registration, and cooperation submission procedure
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# PTSIP License History
|
|
2
|
+
|
|
3
|
+
This file records licensing-policy provenance for the PTSIP project. It is informational unless LICENSE.md expressly incorporates a statement from this file.
|
|
4
|
+
|
|
5
|
+
## PTSIP Community Reciprocity License 1.0
|
|
6
|
+
|
|
7
|
+
- License identifier: `LicenseRef-PTSIP-Community-Reciprocity-1.0`
|
|
8
|
+
- Effective Time: `2026-09-15T00:00:00Z`
|
|
9
|
+
- Time basis: Coordinated Universal Time (UTC)
|
|
10
|
+
- Status before Effective Time: published in advance for notice and preparation
|
|
11
|
+
- Effect: prospective from the Effective Time; not retroactive
|
|
12
|
+
|
|
13
|
+
The exact PTSIP material used by a registrant or reporting party must be identified by a PTSIP version or immutable revision. Where both a version and immutable revision are reasonably available, both should be recorded.
|
|
14
|
+
|
|
15
|
+
Earlier PTSIP revisions may have been distributed under different license terms. This history does not revoke, rewrite, or invalidate rights that validly attached to an earlier copy under the license applicable to that copy.
|