PTSIP 0.3.8a2__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.
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/PKG-INFO +32 -16
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/README.md +31 -15
- ptsip-0.3.8a3/docs/Support_policy/policy/SFP-0022.yaml +53 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/index.yaml +3 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/registries/ptsip-support-authority-role-registry.yaml +12 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/registries/ptsip-support-authority-schema-registry.yaml +5 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/registries/ptsip-support-authority-subject-registry.yaml +1 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-authority-semantics.schema.json +44 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-feature-policy-index.schema.json +2 -2
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/pyproject.toml +1 -1
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/PKG-INFO +32 -16
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/SOURCES.txt +2 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/cli.py +65 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/constants.py +1 -1
- ptsip-0.3.8a3/src/ptsip/context_plane.py +687 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/COMMERCIAL-USE.md +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/LICENSE-GUIDE.md +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/LICENSE-HISTORY.md +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/LICENSE.md +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/NOTICE.md +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/License-Authority/license-authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/MANIFEST.in +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0001.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0002.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0003.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0004.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0005.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0006.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0007.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0008.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0009.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0010.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0011.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0012.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0013.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0014.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0015.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0016.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0017.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0018.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0019.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0020.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/SFP-0021.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/registries/ptsip-support-authorization-registry.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-authority-eligibility-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-authority-role.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-feature-policy.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-governance-registry.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-project-authority-record.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/docs/Support_policy/policy/schemas/ptsip-support-subject-binding.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/example.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.01/example.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.01/hybrid-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.01/template-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.02/example.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.02/hybrid-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/history/pp.1.02/template-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/hybrid-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/index.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/profiles/template-python-package.ptsip.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/registry/project-profile-contracts.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/setup.cfg +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/setup.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/dependency_links.txt +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/entry_points.txt +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/requires.txt +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/PTSIP.egg-info/top_level.txt +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/analyze-source-profile.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/apply-adoption.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/apply-profile-transition.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/build-adoption-plan.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/build-transition-plan.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/capture-repository-snapshot.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/collect-conformance-evidence.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/compare-profile-authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/emit-conformance-result.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/evaluate-conformance-rules.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/map-profile-target.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/project-authority-winner.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/read-relevant-authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/resolve-adoption-facts.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/resolve-profile-schema.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/resolve-reconciliation-state.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/validate-profile-structure.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/actions/validate-responsibility-map-semantics.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/bindings/current.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-apply-requested.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-authority-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-facts-resolved.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-profile-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-repository-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-snapshot-identified.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/adopt-write-authorized.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-authority-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-coordination-available.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-profile-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-projection-required.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-semantic-conflict-absent.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/authority-write-authorized.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/conform-profile-ready.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/conform-snapshot-identified.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-apply-requested.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-source-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-source-profile-identified.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-target-contract-resolved.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-target-fresh.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/migrate-write-authorized.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/validate-contract-resolved.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/conditions/validate-profile-selected.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/gates/adoption-write.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/gates/authority-projection-write.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/gates/profile-transition-write.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/index.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/operations/adopt.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/operations/conform.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/operations/migrate-profile.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/operations/reconcile-authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/operations/validate.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/resolver.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/action.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/binding.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/condition.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/index.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/io.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/mutation-gate.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/operation.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/spec.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/contracts/vocabulary.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/adopt-request.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/adopt-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/adopt-state.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/authority-request.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/authority-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/authority-state.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/conform-request.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/conform-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/conform-state.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/migrate-request.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/migrate-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/migrate-state.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/validate-request.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/validate-result.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/schemas/io/validate-state.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/adoption-procedure.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/adoption.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/agent-behavior.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/classification.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/conformance-detail.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/conformance.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/core.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/governance.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/profile-transition-detail.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/profile-transition.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/repository-boundaries.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/responsibility-map-detail.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/responsibility-map.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/spec/specification-governance.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/validator.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/vocabulary/authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/vocabulary/diagnostics.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/vocabulary/lifecycle.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/vocabulary/outcomes.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/agent_contracts/vocabulary/terminology.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/__main__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/adoption.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/bindings/current.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/index.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/operations/adopt.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/operations/conform.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/operations/migrate-profile.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/operations/reconcile-authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/operations/validate.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/runtime.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/schemas/binding.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/schemas/index.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/schemas/operation.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/schemas/spec.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/schemas/vocabulary.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/adoption.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/classification.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/conformance.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/core.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/governance.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/profile-transition.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/spec/responsibility-map.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/validator.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/vocabulary/authority.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/vocabulary/diagnostics.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/vocabulary/lifecycle.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/agent_contracts/vocabulary/outcomes.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/client.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/github_authority.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/github_client.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/github_reconciliation.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/local_client.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/server.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/service.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/app/store.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/artifact_evidence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/build_resolution.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/generator.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/generator_core.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/i18n.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/render.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/parser.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/profile_projection.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/resolution/resolver.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/transports/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/clarification/transports/github_issue.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/conformance.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/conformance_audit.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/conformance_engine.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/dependency_analysis.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/dependency_cache.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/dependency_reconciliation.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/dependency_review.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/dependency_validation.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/doctor.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/evidence/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/evidence/adapters.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/evidence/contract.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/evidence/normalization.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/authority.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/authorization.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/subject_matching.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/governance/support_assets.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/candidate_evidence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/components.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/dependencies.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/dependencies_030.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/dotnet.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/go.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/inventory.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/javascript.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/lexing.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/python_resolution.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/inspection/source_adapters.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/lifecycle_evidence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/local_profile_catalog.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/analyzer.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/direct_convergence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/direct_execution.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/direct_planner.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/execution_apply.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/execution_binding.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/execution_ledger.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/execution_model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/execution_promotion.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/identity_rewrite.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/planner.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/migration/proposal.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/pilot/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/pilot/runner.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/profile_compatibility.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/profile_identity.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/profile_metadata.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/project_profile_contracts.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/proposed_component.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/domain/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/domain/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/escalation/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/escalation/contract.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/escalation/engine.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/rules/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/rules/contract.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/solution/candidate.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/remediation/solution/elimination.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/discover.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/namespace.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/profile_convergence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/profile_path.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/profile_transition.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/remote.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/schemas/repository-index.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/repository/snapshot.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/review_evidence.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/source_compat/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/source_compat/integrity.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/source_compat/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/source_compat/reader.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/spec_identity.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/project-profile-contracts.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-agent-classification.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-artifact-evidence.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-diagnostic.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-normalized-evidence.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-profile-pp-1.01.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-profile-pp-1.02.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-profile.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-registry.yaml +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-source-profile-0.3.4.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specdata/ptsip-source-profile-0.3.6.schema.json +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/specification_binding.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/storage/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/storage/local_state.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/topology.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/components.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/profile.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/rules.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/specification.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation/templates.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/ptsip/validation_capture.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/domain/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/domain/model.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/domain/registry.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/domain/selector.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/execution/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/execution/adapters/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/execution/adapters/command.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/execution/runner.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/integration/__init__.py +0 -0
- {ptsip-0.3.8a2 → ptsip-0.3.8a3}/src/vpms/integration/ptsip_bridge.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PTSIP
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.8a3
|
|
4
4
|
Summary: Reference tooling for primary lifecycle ownership and responsibility isolation
|
|
5
5
|
Author: Kinirin
|
|
6
6
|
Maintainer: Kinirin
|
|
@@ -42,8 +42,8 @@ Dynamic: license-file
|
|
|
42
42
|
|
|
43
43
|
# PTSIP — Primary Lifecycle Ownership and Responsibility Isolation Policy
|
|
44
44
|
|
|
45
|
-
**Status:** Tool `0.3.
|
|
46
|
-
**Tool/package version:** `0.3.
|
|
45
|
+
**Status:** Tool `0.3.8a3` Context Plane migration-semantics emergency prerelease — publication pending<br>
|
|
46
|
+
**Tool/package version:** `0.3.8a3`<br>
|
|
47
47
|
**Project Profile contract:** `pp.1.02`<br>
|
|
48
48
|
**Specification family:** `0.3.7-draft`<br>
|
|
49
49
|
**Bound immutable Specification revision:** `3c47816770d194ae42f98faedc911d980db0e62a`<br>
|
|
@@ -55,11 +55,11 @@ PTSIP is a project-defined architecture policy for separating project responsibi
|
|
|
55
55
|
|
|
56
56
|
> **Purpose precedes reuse.** Classify a coherent responsibility by why it exists and which lifecycle owns it before optimizing for code sharing.
|
|
57
57
|
|
|
58
|
-
Tool `0.3.
|
|
58
|
+
Tool `0.3.8a3` is an emergency corrective prerelease over the published `0.3.8a2` repository-namespace release. Tool `0.3.8a2` established `.ptsip/` and the provider-neutral Context Plane at repository level, but its Context Projection implementation remained under `developer/automation/` and therefore was not shipped in the installed Consumer Tool. Tool `0.3.8a3` closes that packaging and migration gap by shipping the canonical Context Plane implementation as `ptsip.context_plane`, exposing `ptsip context status|migrate|repair|check`, and binding release verification to the installed wheel. The Specification and Project Profile identities remain unchanged.
|
|
59
59
|
|
|
60
60
|
## Primary lifecycle ownership
|
|
61
61
|
|
|
62
|
-
Canonical Tool `0.3.
|
|
62
|
+
Canonical Tool `0.3.8a3` classifications remain exactly:
|
|
63
63
|
|
|
64
64
|
| Classification | Meaning |
|
|
65
65
|
| --- | --- |
|
|
@@ -81,9 +81,9 @@ TOOLCHAIN
|
|
|
81
81
|
NEUTRAL_CONTRACT
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
Tool `0.3.
|
|
84
|
+
Tool `0.3.8a3` preserves the five-classification model established by Tool `0.3.6`. `TOOLCHAIN` is therefore **legacy Tool `0.3.5` input**, not a current canonical alias. A legacy Toolchain responsibility may become `DEVELOPMENT_TOOLING`, `DELIVERY`, `OPERATIONS`, or require a split depending on its actual lifecycle ownership. Blind `TOOLCHAIN -> DEVELOPMENT_TOOLING` rewriting is prohibited.
|
|
85
85
|
|
|
86
|
-
Tool `0.3.
|
|
86
|
+
Tool `0.3.8a3` provides evidence-bound direct current-target migration for explicitly supported historical sources. Migration capability remains separate from repository adoption authority and never turns inference into project intent.
|
|
87
87
|
|
|
88
88
|
## Classification is not path or technology
|
|
89
89
|
|
|
@@ -104,7 +104,7 @@ Paths such as `tests/`, `tools/`, `deploy/`, `ops/`, or `.github/workflows/` are
|
|
|
104
104
|
|
|
105
105
|
## Responsibility Map v2
|
|
106
106
|
|
|
107
|
-
Tool `0.3.
|
|
107
|
+
Tool `0.3.8a3` uses Responsibility Map v2 as the project-owned architecture declaration model. It keeps several axes independent:
|
|
108
108
|
|
|
109
109
|
```text
|
|
110
110
|
classification
|
|
@@ -233,12 +233,12 @@ Upgrade to the latest **published** release:
|
|
|
233
233
|
python -m pip install --upgrade PTSIP
|
|
234
234
|
```
|
|
235
235
|
|
|
236
|
-
Tool `0.3.
|
|
236
|
+
Tool `0.3.8a3` is a prerelease. A normal `pip install PTSIP` may continue to select the latest stable release unless prereleases are explicitly requested.
|
|
237
237
|
|
|
238
238
|
After publication, install this prerelease explicitly with:
|
|
239
239
|
|
|
240
240
|
```powershell
|
|
241
|
-
python -m pip install "PTSIP==0.3.
|
|
241
|
+
python -m pip install "PTSIP==0.3.8a3"
|
|
242
242
|
```
|
|
243
243
|
|
|
244
244
|
For source development on this release line:
|
|
@@ -261,6 +261,8 @@ ptsip clarify .
|
|
|
261
261
|
ptsip gate .
|
|
262
262
|
ptsip resolve --help
|
|
263
263
|
ptsip conform .
|
|
264
|
+
ptsip context status . --json
|
|
265
|
+
ptsip context check . --json
|
|
264
266
|
```
|
|
265
267
|
|
|
266
268
|
New project-owned profiles are selected through `.ptsip/profiles/index.json`; the catalog's `default_profile` resolves the active `*.ptsip.yaml` resource. Repository-root `ptsip.yaml` remains a compatibility/migration input, and an explicit `--profile` path still takes precedence.
|
|
@@ -269,7 +271,7 @@ New project-owned profiles are selected through `.ptsip/profiles/index.json`; th
|
|
|
269
271
|
|
|
270
272
|
Repository evidence is not architecture authority. Candidate discovery, path names, templates, heuristics, and agent confidence can support review but cannot manufacture project intent.
|
|
271
273
|
|
|
272
|
-
Canonical Tool `0.3.
|
|
274
|
+
Canonical Tool `0.3.8a3` explicit adoption facts center on `classification` as lifecycle ownership authority. New canonical decisions use facts such as:
|
|
273
275
|
|
|
274
276
|
```text
|
|
275
277
|
classification
|
|
@@ -279,7 +281,7 @@ runtime_required
|
|
|
279
281
|
executable
|
|
280
282
|
```
|
|
281
283
|
|
|
282
|
-
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.
|
|
284
|
+
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.8a3` ownership authority.
|
|
283
285
|
|
|
284
286
|
Example dry-run:
|
|
285
287
|
|
|
@@ -344,7 +346,7 @@ PTSIP uses action-time synchronization rather than continuous background polling
|
|
|
344
346
|
|
|
345
347
|
Artifact ownership is independent from producer ownership. A `DEVELOPMENT_TOOLING` or `DELIVERY` component may validly build a `PRODUCT` artifact, but the resulting artifact must still satisfy the Product package boundary.
|
|
346
348
|
|
|
347
|
-
Tool `0.3.
|
|
349
|
+
Tool `0.3.8a3` supports snapshot-bound Product Artifact evidence. Release verification checks actual built distribution content rather than treating packaging configuration as proof. Product distribution verification rejects definite non-Product implementation leakage under `PTSIP-PKG-001`.
|
|
348
350
|
|
|
349
351
|
## VPMS — Verification Purpose Management System
|
|
350
352
|
|
|
@@ -360,7 +362,7 @@ VPMS
|
|
|
360
362
|
|
|
361
363
|
PTSIP classification and VPMS Verification Purpose remain separate axes. PTSIP core does not depend on VPMS. VPMS consumes only a narrow read-only projection of already-resolved PTSIP metadata.
|
|
362
364
|
|
|
363
|
-
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.
|
|
365
|
+
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.8a3` PTSIP classification.
|
|
364
366
|
|
|
365
367
|
VPMS verification PASS does not imply PTSIP `CONFORMANT`, and PTSIP `CONFORMANT` does not imply functional verification PASS.
|
|
366
368
|
|
|
@@ -431,6 +433,20 @@ in its Tool release note; advancing the PP contract does not rewrite that Tool h
|
|
|
431
433
|
|
|
432
434
|
A new immutable revision is required only for a genuine normative change. Release workflow, test, planning, status, or documentation-only changes do not move `SPEC_REVISION` by themselves.
|
|
433
435
|
|
|
436
|
+
## Tool 0.3.8a3 release identity
|
|
437
|
+
|
|
438
|
+
Tool `0.3.8a3` is an emergency Context Plane migration-semantics patch over the published `0.3.8a2` repository-namespace release.
|
|
439
|
+
|
|
440
|
+
```text
|
|
441
|
+
Tool: 0.3.8a3
|
|
442
|
+
Project Profile: pp.1.02
|
|
443
|
+
Specification: 0.3.7-draft
|
|
444
|
+
SPEC_REVISION: 3c47816770d194ae42f98faedc911d980db0e62a
|
|
445
|
+
Release scope: deterministic MEMORY.md -> Context Plane migration and projection repair
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
The canonical semantic write target is `.ptsip/context/source/context.source.json`. Generated `context.json`, `context.jsonl`, and `context.schema.json` are repaired from that source. Semantic ambiguity remains user-owned; deterministic projection repair is preauthorized for coding agents. Unlike Tool `0.3.8a2`, Tool `0.3.8a3` ships this implementation inside the Consumer Tool as `ptsip/context_plane.py`; a release build is invalid if that module or the `ptsip context` CLI surface is absent from the built wheel.
|
|
449
|
+
|
|
434
450
|
## Tool 0.3.8a2 release identity
|
|
435
451
|
|
|
436
452
|
Tool `0.3.8a2` is a repository-namespace stabilization prerelease with a deliberately narrow compatibility goal.
|
|
@@ -482,8 +498,8 @@ Read-only inspection and Pilot operations remain read-only and do not create rep
|
|
|
482
498
|
|
|
483
499
|
Repository tooling implementations may physically live under `tools/`, `scripts/`, `src/`, or another project-owned path. Their PTSIP-owned registration, policy bindings, task/operation contracts, indexes, and lifecycle state must not establish an alternative repository-local PTSIP control-plane root.
|
|
484
500
|
|
|
485
|
-
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.
|
|
501
|
+
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.8a3` uses `.ptsip/index.json` as the root router and `.ptsip/profiles/index.json` for local Project Profile selection. The Task and runtime namespaces are reserved; runtime persistence details remain future work. A reserved or unavailable Task capability must fail closed for the dependent operation rather than causing an agent to invent a new Task Engine elsewhere in the repository.
|
|
486
502
|
|
|
487
503
|
## Project status
|
|
488
504
|
|
|
489
|
-
PTSIP remains experimental. Tool `0.3.
|
|
505
|
+
PTSIP remains experimental. Tool `0.3.8a3` is the current namespace-stabilization prerelease candidate; its publication boundary is tracked in [`releasenote/tool/0.3.8a3.md`](releasenote/tool/0.3.8a3.md). Historical Tool releases, including `0.3.8a1`, and Specification notes are preserved under [`releasenote/`](releasenote/).
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
# PTSIP — Primary Lifecycle Ownership and Responsibility Isolation Policy
|
|
6
6
|
|
|
7
|
-
**Status:** Tool `0.3.
|
|
8
|
-
**Tool/package version:** `0.3.
|
|
7
|
+
**Status:** Tool `0.3.8a3` Context Plane migration-semantics emergency prerelease — publication pending<br>
|
|
8
|
+
**Tool/package version:** `0.3.8a3`<br>
|
|
9
9
|
**Project Profile contract:** `pp.1.02`<br>
|
|
10
10
|
**Specification family:** `0.3.7-draft`<br>
|
|
11
11
|
**Bound immutable Specification revision:** `3c47816770d194ae42f98faedc911d980db0e62a`<br>
|
|
@@ -17,11 +17,11 @@ PTSIP is a project-defined architecture policy for separating project responsibi
|
|
|
17
17
|
|
|
18
18
|
> **Purpose precedes reuse.** Classify a coherent responsibility by why it exists and which lifecycle owns it before optimizing for code sharing.
|
|
19
19
|
|
|
20
|
-
Tool `0.3.
|
|
20
|
+
Tool `0.3.8a3` is an emergency corrective prerelease over the published `0.3.8a2` repository-namespace release. Tool `0.3.8a2` established `.ptsip/` and the provider-neutral Context Plane at repository level, but its Context Projection implementation remained under `developer/automation/` and therefore was not shipped in the installed Consumer Tool. Tool `0.3.8a3` closes that packaging and migration gap by shipping the canonical Context Plane implementation as `ptsip.context_plane`, exposing `ptsip context status|migrate|repair|check`, and binding release verification to the installed wheel. The Specification and Project Profile identities remain unchanged.
|
|
21
21
|
|
|
22
22
|
## Primary lifecycle ownership
|
|
23
23
|
|
|
24
|
-
Canonical Tool `0.3.
|
|
24
|
+
Canonical Tool `0.3.8a3` classifications remain exactly:
|
|
25
25
|
|
|
26
26
|
| Classification | Meaning |
|
|
27
27
|
| --- | --- |
|
|
@@ -43,9 +43,9 @@ TOOLCHAIN
|
|
|
43
43
|
NEUTRAL_CONTRACT
|
|
44
44
|
```
|
|
45
45
|
|
|
46
|
-
Tool `0.3.
|
|
46
|
+
Tool `0.3.8a3` preserves the five-classification model established by Tool `0.3.6`. `TOOLCHAIN` is therefore **legacy Tool `0.3.5` input**, not a current canonical alias. A legacy Toolchain responsibility may become `DEVELOPMENT_TOOLING`, `DELIVERY`, `OPERATIONS`, or require a split depending on its actual lifecycle ownership. Blind `TOOLCHAIN -> DEVELOPMENT_TOOLING` rewriting is prohibited.
|
|
47
47
|
|
|
48
|
-
Tool `0.3.
|
|
48
|
+
Tool `0.3.8a3` provides evidence-bound direct current-target migration for explicitly supported historical sources. Migration capability remains separate from repository adoption authority and never turns inference into project intent.
|
|
49
49
|
|
|
50
50
|
## Classification is not path or technology
|
|
51
51
|
|
|
@@ -66,7 +66,7 @@ Paths such as `tests/`, `tools/`, `deploy/`, `ops/`, or `.github/workflows/` are
|
|
|
66
66
|
|
|
67
67
|
## Responsibility Map v2
|
|
68
68
|
|
|
69
|
-
Tool `0.3.
|
|
69
|
+
Tool `0.3.8a3` uses Responsibility Map v2 as the project-owned architecture declaration model. It keeps several axes independent:
|
|
70
70
|
|
|
71
71
|
```text
|
|
72
72
|
classification
|
|
@@ -195,12 +195,12 @@ Upgrade to the latest **published** release:
|
|
|
195
195
|
python -m pip install --upgrade PTSIP
|
|
196
196
|
```
|
|
197
197
|
|
|
198
|
-
Tool `0.3.
|
|
198
|
+
Tool `0.3.8a3` is a prerelease. A normal `pip install PTSIP` may continue to select the latest stable release unless prereleases are explicitly requested.
|
|
199
199
|
|
|
200
200
|
After publication, install this prerelease explicitly with:
|
|
201
201
|
|
|
202
202
|
```powershell
|
|
203
|
-
python -m pip install "PTSIP==0.3.
|
|
203
|
+
python -m pip install "PTSIP==0.3.8a3"
|
|
204
204
|
```
|
|
205
205
|
|
|
206
206
|
For source development on this release line:
|
|
@@ -223,6 +223,8 @@ ptsip clarify .
|
|
|
223
223
|
ptsip gate .
|
|
224
224
|
ptsip resolve --help
|
|
225
225
|
ptsip conform .
|
|
226
|
+
ptsip context status . --json
|
|
227
|
+
ptsip context check . --json
|
|
226
228
|
```
|
|
227
229
|
|
|
228
230
|
New project-owned profiles are selected through `.ptsip/profiles/index.json`; the catalog's `default_profile` resolves the active `*.ptsip.yaml` resource. Repository-root `ptsip.yaml` remains a compatibility/migration input, and an explicit `--profile` path still takes precedence.
|
|
@@ -231,7 +233,7 @@ New project-owned profiles are selected through `.ptsip/profiles/index.json`; th
|
|
|
231
233
|
|
|
232
234
|
Repository evidence is not architecture authority. Candidate discovery, path names, templates, heuristics, and agent confidence can support review but cannot manufacture project intent.
|
|
233
235
|
|
|
234
|
-
Canonical Tool `0.3.
|
|
236
|
+
Canonical Tool `0.3.8a3` explicit adoption facts center on `classification` as lifecycle ownership authority. New canonical decisions use facts such as:
|
|
235
237
|
|
|
236
238
|
```text
|
|
237
239
|
classification
|
|
@@ -241,7 +243,7 @@ runtime_required
|
|
|
241
243
|
executable
|
|
242
244
|
```
|
|
243
245
|
|
|
244
|
-
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.
|
|
246
|
+
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.8a3` ownership authority.
|
|
245
247
|
|
|
246
248
|
Example dry-run:
|
|
247
249
|
|
|
@@ -306,7 +308,7 @@ PTSIP uses action-time synchronization rather than continuous background polling
|
|
|
306
308
|
|
|
307
309
|
Artifact ownership is independent from producer ownership. A `DEVELOPMENT_TOOLING` or `DELIVERY` component may validly build a `PRODUCT` artifact, but the resulting artifact must still satisfy the Product package boundary.
|
|
308
310
|
|
|
309
|
-
Tool `0.3.
|
|
311
|
+
Tool `0.3.8a3` supports snapshot-bound Product Artifact evidence. Release verification checks actual built distribution content rather than treating packaging configuration as proof. Product distribution verification rejects definite non-Product implementation leakage under `PTSIP-PKG-001`.
|
|
310
312
|
|
|
311
313
|
## VPMS — Verification Purpose Management System
|
|
312
314
|
|
|
@@ -322,7 +324,7 @@ VPMS
|
|
|
322
324
|
|
|
323
325
|
PTSIP classification and VPMS Verification Purpose remain separate axes. PTSIP core does not depend on VPMS. VPMS consumes only a narrow read-only projection of already-resolved PTSIP metadata.
|
|
324
326
|
|
|
325
|
-
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.
|
|
327
|
+
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.8a3` PTSIP classification.
|
|
326
328
|
|
|
327
329
|
VPMS verification PASS does not imply PTSIP `CONFORMANT`, and PTSIP `CONFORMANT` does not imply functional verification PASS.
|
|
328
330
|
|
|
@@ -393,6 +395,20 @@ in its Tool release note; advancing the PP contract does not rewrite that Tool h
|
|
|
393
395
|
|
|
394
396
|
A new immutable revision is required only for a genuine normative change. Release workflow, test, planning, status, or documentation-only changes do not move `SPEC_REVISION` by themselves.
|
|
395
397
|
|
|
398
|
+
## Tool 0.3.8a3 release identity
|
|
399
|
+
|
|
400
|
+
Tool `0.3.8a3` is an emergency Context Plane migration-semantics patch over the published `0.3.8a2` repository-namespace release.
|
|
401
|
+
|
|
402
|
+
```text
|
|
403
|
+
Tool: 0.3.8a3
|
|
404
|
+
Project Profile: pp.1.02
|
|
405
|
+
Specification: 0.3.7-draft
|
|
406
|
+
SPEC_REVISION: 3c47816770d194ae42f98faedc911d980db0e62a
|
|
407
|
+
Release scope: deterministic MEMORY.md -> Context Plane migration and projection repair
|
|
408
|
+
```
|
|
409
|
+
|
|
410
|
+
The canonical semantic write target is `.ptsip/context/source/context.source.json`. Generated `context.json`, `context.jsonl`, and `context.schema.json` are repaired from that source. Semantic ambiguity remains user-owned; deterministic projection repair is preauthorized for coding agents. Unlike Tool `0.3.8a2`, Tool `0.3.8a3` ships this implementation inside the Consumer Tool as `ptsip/context_plane.py`; a release build is invalid if that module or the `ptsip context` CLI surface is absent from the built wheel.
|
|
411
|
+
|
|
396
412
|
## Tool 0.3.8a2 release identity
|
|
397
413
|
|
|
398
414
|
Tool `0.3.8a2` is a repository-namespace stabilization prerelease with a deliberately narrow compatibility goal.
|
|
@@ -444,8 +460,8 @@ Read-only inspection and Pilot operations remain read-only and do not create rep
|
|
|
444
460
|
|
|
445
461
|
Repository tooling implementations may physically live under `tools/`, `scripts/`, `src/`, or another project-owned path. Their PTSIP-owned registration, policy bindings, task/operation contracts, indexes, and lifecycle state must not establish an alternative repository-local PTSIP control-plane root.
|
|
446
462
|
|
|
447
|
-
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.
|
|
463
|
+
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.8a3` uses `.ptsip/index.json` as the root router and `.ptsip/profiles/index.json` for local Project Profile selection. The Task and runtime namespaces are reserved; runtime persistence details remain future work. A reserved or unavailable Task capability must fail closed for the dependent operation rather than causing an agent to invent a new Task Engine elsewhere in the repository.
|
|
448
464
|
|
|
449
465
|
## Project status
|
|
450
466
|
|
|
451
|
-
PTSIP remains experimental. Tool `0.3.
|
|
467
|
+
PTSIP remains experimental. Tool `0.3.8a3` is the current namespace-stabilization prerelease candidate; its publication boundary is tracked in [`releasenote/tool/0.3.8a3.md`](releasenote/tool/0.3.8a3.md). Historical Tool releases, including `0.3.8a1`, and Specification notes are preserved under [`releasenote/`](releasenote/).
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
schema_version: ptsip-support-feature-policy/v1
|
|
2
|
+
policy_class: PTSIP_SUPPORT_FEATURE
|
|
3
|
+
policy:
|
|
4
|
+
id: SFP-0022
|
|
5
|
+
title: Context Plane Migration and Deterministic Projection Repair
|
|
6
|
+
status: ACTIVE
|
|
7
|
+
feature_contract:
|
|
8
|
+
shipped: true
|
|
9
|
+
runtime_surface:
|
|
10
|
+
- src/ptsip/context_plane.py
|
|
11
|
+
- src/ptsip/cli.py
|
|
12
|
+
authority_contract:
|
|
13
|
+
authority_type: CONTEXT_PLANE_MIGRATION_REPAIR
|
|
14
|
+
schema_id: ptsip.context/migration-repair
|
|
15
|
+
schema_version: 1
|
|
16
|
+
authority_semantics:
|
|
17
|
+
canonical_semantic_source: .ptsip/context/source/context.source.json
|
|
18
|
+
generated_projections:
|
|
19
|
+
- .ptsip/context/context.json
|
|
20
|
+
- .ptsip/context/context.jsonl
|
|
21
|
+
- .ptsip/context/context.schema.json
|
|
22
|
+
normal_direct_projection_edit: FORBIDDEN
|
|
23
|
+
deterministic_projection_repair:
|
|
24
|
+
coding_agent_authorization: PREAUTHORIZED
|
|
25
|
+
user_decision_required: false
|
|
26
|
+
semantic_source_creation_from_legacy_memory:
|
|
27
|
+
legacy_memory_read_scope: MIGRATION_ONLY
|
|
28
|
+
deterministic_conversion_authorization: PREAUTHORIZED
|
|
29
|
+
semantic_ambiguity: OWNER_DECISION_REQUIRED
|
|
30
|
+
existing_semantic_source_replacement:
|
|
31
|
+
authorization: USER_EXPLICIT
|
|
32
|
+
silent_agent_selection: FORBIDDEN
|
|
33
|
+
legacy_memory_deletion:
|
|
34
|
+
before_context_validation: FORBIDDEN
|
|
35
|
+
after_context_validation: PREAUTHORIZED
|
|
36
|
+
migration_failure_preserves_legacy_memory: true
|
|
37
|
+
emergency_direct_projection_repair:
|
|
38
|
+
authorization: USER_EXPLICIT
|
|
39
|
+
status: TEMPORARY_ONLY
|
|
40
|
+
release_while_active: FORBIDDEN
|
|
41
|
+
required_reconciliation:
|
|
42
|
+
- REGENERATE_FROM_CANONICAL_SOURCE
|
|
43
|
+
- CONTEXT_CHECK_PASS
|
|
44
|
+
release_gate:
|
|
45
|
+
context_check: REQUIRED
|
|
46
|
+
missing_projection: FAIL_CLOSED
|
|
47
|
+
projection_drift: FAIL_CLOSED
|
|
48
|
+
semantic_equivalence_failure: FAIL_CLOSED
|
|
49
|
+
relations:
|
|
50
|
+
supersedes: []
|
|
51
|
+
amends: []
|
|
52
|
+
extends: []
|
|
53
|
+
depends_on: []
|
|
@@ -368,6 +368,18 @@ policy_roles:
|
|
|
368
368
|
- govern_specification_capabilities
|
|
369
369
|
- require_explicit_specification_binding
|
|
370
370
|
- separate_cross_contract_identity_axes
|
|
371
|
+
- policy_id: SFP-0022
|
|
372
|
+
projection_role: PROJECT_ARCHITECTURE_AUTHORITY
|
|
373
|
+
resolution_state: DECLARED
|
|
374
|
+
effects:
|
|
375
|
+
- constrain_machine_output_structure
|
|
376
|
+
- deny_unauthorized_semantic_inference
|
|
377
|
+
- fail_closed_on_invalid_state
|
|
378
|
+
- govern_migration_execution_authorization
|
|
379
|
+
- govern_migration_execution_state_machine
|
|
380
|
+
- require_deterministic_integrity_digest
|
|
381
|
+
- require_project_owner_decision
|
|
382
|
+
- separate_global_authority_from_local_projection
|
|
371
383
|
invariants:
|
|
372
384
|
registered_effect_token_is_project_authority_by_itself: false
|
|
373
385
|
projection_role_is_current_eligibility_result_by_itself: false
|
|
@@ -117,3 +117,8 @@ entries:
|
|
|
117
117
|
schema_id: ptsip.governance/specification-binding-capability-registries
|
|
118
118
|
schema_version: 1
|
|
119
119
|
schema_definition: SFP_0021_V1
|
|
120
|
+
- policy_id: SFP-0022
|
|
121
|
+
authority_type: CONTEXT_PLANE_MIGRATION_REPAIR
|
|
122
|
+
schema_id: ptsip.context/migration-repair
|
|
123
|
+
schema_version: 1
|
|
124
|
+
schema_definition: SFP_0022_V1
|
|
@@ -581,6 +581,50 @@
|
|
|
581
581
|
"historical_bridge_role": "MIGRATION_INTERPRETATION_ONLY",
|
|
582
582
|
"unsupported_or_malformed_binding": "FAIL_CLOSED"
|
|
583
583
|
}
|
|
584
|
+
},
|
|
585
|
+
"SFP_0022_V1": {
|
|
586
|
+
"const": {
|
|
587
|
+
"canonical_semantic_source": ".ptsip/context/source/context.source.json",
|
|
588
|
+
"generated_projections": [
|
|
589
|
+
".ptsip/context/context.json",
|
|
590
|
+
".ptsip/context/context.jsonl",
|
|
591
|
+
".ptsip/context/context.schema.json"
|
|
592
|
+
],
|
|
593
|
+
"normal_direct_projection_edit": "FORBIDDEN",
|
|
594
|
+
"deterministic_projection_repair": {
|
|
595
|
+
"coding_agent_authorization": "PREAUTHORIZED",
|
|
596
|
+
"user_decision_required": false
|
|
597
|
+
},
|
|
598
|
+
"semantic_source_creation_from_legacy_memory": {
|
|
599
|
+
"legacy_memory_read_scope": "MIGRATION_ONLY",
|
|
600
|
+
"deterministic_conversion_authorization": "PREAUTHORIZED",
|
|
601
|
+
"semantic_ambiguity": "OWNER_DECISION_REQUIRED"
|
|
602
|
+
},
|
|
603
|
+
"existing_semantic_source_replacement": {
|
|
604
|
+
"authorization": "USER_EXPLICIT",
|
|
605
|
+
"silent_agent_selection": "FORBIDDEN"
|
|
606
|
+
},
|
|
607
|
+
"legacy_memory_deletion": {
|
|
608
|
+
"before_context_validation": "FORBIDDEN",
|
|
609
|
+
"after_context_validation": "PREAUTHORIZED",
|
|
610
|
+
"migration_failure_preserves_legacy_memory": true
|
|
611
|
+
},
|
|
612
|
+
"emergency_direct_projection_repair": {
|
|
613
|
+
"authorization": "USER_EXPLICIT",
|
|
614
|
+
"status": "TEMPORARY_ONLY",
|
|
615
|
+
"release_while_active": "FORBIDDEN",
|
|
616
|
+
"required_reconciliation": [
|
|
617
|
+
"REGENERATE_FROM_CANONICAL_SOURCE",
|
|
618
|
+
"CONTEXT_CHECK_PASS"
|
|
619
|
+
]
|
|
620
|
+
},
|
|
621
|
+
"release_gate": {
|
|
622
|
+
"context_check": "REQUIRED",
|
|
623
|
+
"missing_projection": "FAIL_CLOSED",
|
|
624
|
+
"projection_drift": "FAIL_CLOSED",
|
|
625
|
+
"semantic_equivalence_failure": "FAIL_CLOSED"
|
|
626
|
+
}
|
|
627
|
+
}
|
|
584
628
|
}
|
|
585
629
|
}
|
|
586
630
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PTSIP
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.8a3
|
|
4
4
|
Summary: Reference tooling for primary lifecycle ownership and responsibility isolation
|
|
5
5
|
Author: Kinirin
|
|
6
6
|
Maintainer: Kinirin
|
|
@@ -42,8 +42,8 @@ Dynamic: license-file
|
|
|
42
42
|
|
|
43
43
|
# PTSIP — Primary Lifecycle Ownership and Responsibility Isolation Policy
|
|
44
44
|
|
|
45
|
-
**Status:** Tool `0.3.
|
|
46
|
-
**Tool/package version:** `0.3.
|
|
45
|
+
**Status:** Tool `0.3.8a3` Context Plane migration-semantics emergency prerelease — publication pending<br>
|
|
46
|
+
**Tool/package version:** `0.3.8a3`<br>
|
|
47
47
|
**Project Profile contract:** `pp.1.02`<br>
|
|
48
48
|
**Specification family:** `0.3.7-draft`<br>
|
|
49
49
|
**Bound immutable Specification revision:** `3c47816770d194ae42f98faedc911d980db0e62a`<br>
|
|
@@ -55,11 +55,11 @@ PTSIP is a project-defined architecture policy for separating project responsibi
|
|
|
55
55
|
|
|
56
56
|
> **Purpose precedes reuse.** Classify a coherent responsibility by why it exists and which lifecycle owns it before optimizing for code sharing.
|
|
57
57
|
|
|
58
|
-
Tool `0.3.
|
|
58
|
+
Tool `0.3.8a3` is an emergency corrective prerelease over the published `0.3.8a2` repository-namespace release. Tool `0.3.8a2` established `.ptsip/` and the provider-neutral Context Plane at repository level, but its Context Projection implementation remained under `developer/automation/` and therefore was not shipped in the installed Consumer Tool. Tool `0.3.8a3` closes that packaging and migration gap by shipping the canonical Context Plane implementation as `ptsip.context_plane`, exposing `ptsip context status|migrate|repair|check`, and binding release verification to the installed wheel. The Specification and Project Profile identities remain unchanged.
|
|
59
59
|
|
|
60
60
|
## Primary lifecycle ownership
|
|
61
61
|
|
|
62
|
-
Canonical Tool `0.3.
|
|
62
|
+
Canonical Tool `0.3.8a3` classifications remain exactly:
|
|
63
63
|
|
|
64
64
|
| Classification | Meaning |
|
|
65
65
|
| --- | --- |
|
|
@@ -81,9 +81,9 @@ TOOLCHAIN
|
|
|
81
81
|
NEUTRAL_CONTRACT
|
|
82
82
|
```
|
|
83
83
|
|
|
84
|
-
Tool `0.3.
|
|
84
|
+
Tool `0.3.8a3` preserves the five-classification model established by Tool `0.3.6`. `TOOLCHAIN` is therefore **legacy Tool `0.3.5` input**, not a current canonical alias. A legacy Toolchain responsibility may become `DEVELOPMENT_TOOLING`, `DELIVERY`, `OPERATIONS`, or require a split depending on its actual lifecycle ownership. Blind `TOOLCHAIN -> DEVELOPMENT_TOOLING` rewriting is prohibited.
|
|
85
85
|
|
|
86
|
-
Tool `0.3.
|
|
86
|
+
Tool `0.3.8a3` provides evidence-bound direct current-target migration for explicitly supported historical sources. Migration capability remains separate from repository adoption authority and never turns inference into project intent.
|
|
87
87
|
|
|
88
88
|
## Classification is not path or technology
|
|
89
89
|
|
|
@@ -104,7 +104,7 @@ Paths such as `tests/`, `tools/`, `deploy/`, `ops/`, or `.github/workflows/` are
|
|
|
104
104
|
|
|
105
105
|
## Responsibility Map v2
|
|
106
106
|
|
|
107
|
-
Tool `0.3.
|
|
107
|
+
Tool `0.3.8a3` uses Responsibility Map v2 as the project-owned architecture declaration model. It keeps several axes independent:
|
|
108
108
|
|
|
109
109
|
```text
|
|
110
110
|
classification
|
|
@@ -233,12 +233,12 @@ Upgrade to the latest **published** release:
|
|
|
233
233
|
python -m pip install --upgrade PTSIP
|
|
234
234
|
```
|
|
235
235
|
|
|
236
|
-
Tool `0.3.
|
|
236
|
+
Tool `0.3.8a3` is a prerelease. A normal `pip install PTSIP` may continue to select the latest stable release unless prereleases are explicitly requested.
|
|
237
237
|
|
|
238
238
|
After publication, install this prerelease explicitly with:
|
|
239
239
|
|
|
240
240
|
```powershell
|
|
241
|
-
python -m pip install "PTSIP==0.3.
|
|
241
|
+
python -m pip install "PTSIP==0.3.8a3"
|
|
242
242
|
```
|
|
243
243
|
|
|
244
244
|
For source development on this release line:
|
|
@@ -261,6 +261,8 @@ ptsip clarify .
|
|
|
261
261
|
ptsip gate .
|
|
262
262
|
ptsip resolve --help
|
|
263
263
|
ptsip conform .
|
|
264
|
+
ptsip context status . --json
|
|
265
|
+
ptsip context check . --json
|
|
264
266
|
```
|
|
265
267
|
|
|
266
268
|
New project-owned profiles are selected through `.ptsip/profiles/index.json`; the catalog's `default_profile` resolves the active `*.ptsip.yaml` resource. Repository-root `ptsip.yaml` remains a compatibility/migration input, and an explicit `--profile` path still takes precedence.
|
|
@@ -269,7 +271,7 @@ New project-owned profiles are selected through `.ptsip/profiles/index.json`; th
|
|
|
269
271
|
|
|
270
272
|
Repository evidence is not architecture authority. Candidate discovery, path names, templates, heuristics, and agent confidence can support review but cannot manufacture project intent.
|
|
271
273
|
|
|
272
|
-
Canonical Tool `0.3.
|
|
274
|
+
Canonical Tool `0.3.8a3` explicit adoption facts center on `classification` as lifecycle ownership authority. New canonical decisions use facts such as:
|
|
273
275
|
|
|
274
276
|
```text
|
|
275
277
|
classification
|
|
@@ -279,7 +281,7 @@ runtime_required
|
|
|
279
281
|
executable
|
|
280
282
|
```
|
|
281
283
|
|
|
282
|
-
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.
|
|
284
|
+
The historical `lifecycle_owner` field is legacy migration evidence, not a second Tool `0.3.8a3` ownership authority.
|
|
283
285
|
|
|
284
286
|
Example dry-run:
|
|
285
287
|
|
|
@@ -344,7 +346,7 @@ PTSIP uses action-time synchronization rather than continuous background polling
|
|
|
344
346
|
|
|
345
347
|
Artifact ownership is independent from producer ownership. A `DEVELOPMENT_TOOLING` or `DELIVERY` component may validly build a `PRODUCT` artifact, but the resulting artifact must still satisfy the Product package boundary.
|
|
346
348
|
|
|
347
|
-
Tool `0.3.
|
|
349
|
+
Tool `0.3.8a3` supports snapshot-bound Product Artifact evidence. Release verification checks actual built distribution content rather than treating packaging configuration as proof. Product distribution verification rejects definite non-Product implementation leakage under `PTSIP-PKG-001`.
|
|
348
350
|
|
|
349
351
|
## VPMS — Verification Purpose Management System
|
|
350
352
|
|
|
@@ -360,7 +362,7 @@ VPMS
|
|
|
360
362
|
|
|
361
363
|
PTSIP classification and VPMS Verification Purpose remain separate axes. PTSIP core does not depend on VPMS. VPMS consumes only a narrow read-only projection of already-resolved PTSIP metadata.
|
|
362
364
|
|
|
363
|
-
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.
|
|
365
|
+
The current VPMS compatibility vocabulary may still contain `PRODUCT | TOOLCHAIN`. VPMS `TOOLCHAIN` is not a canonical Tool `0.3.8a3` PTSIP classification.
|
|
364
366
|
|
|
365
367
|
VPMS verification PASS does not imply PTSIP `CONFORMANT`, and PTSIP `CONFORMANT` does not imply functional verification PASS.
|
|
366
368
|
|
|
@@ -431,6 +433,20 @@ in its Tool release note; advancing the PP contract does not rewrite that Tool h
|
|
|
431
433
|
|
|
432
434
|
A new immutable revision is required only for a genuine normative change. Release workflow, test, planning, status, or documentation-only changes do not move `SPEC_REVISION` by themselves.
|
|
433
435
|
|
|
436
|
+
## Tool 0.3.8a3 release identity
|
|
437
|
+
|
|
438
|
+
Tool `0.3.8a3` is an emergency Context Plane migration-semantics patch over the published `0.3.8a2` repository-namespace release.
|
|
439
|
+
|
|
440
|
+
```text
|
|
441
|
+
Tool: 0.3.8a3
|
|
442
|
+
Project Profile: pp.1.02
|
|
443
|
+
Specification: 0.3.7-draft
|
|
444
|
+
SPEC_REVISION: 3c47816770d194ae42f98faedc911d980db0e62a
|
|
445
|
+
Release scope: deterministic MEMORY.md -> Context Plane migration and projection repair
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
The canonical semantic write target is `.ptsip/context/source/context.source.json`. Generated `context.json`, `context.jsonl`, and `context.schema.json` are repaired from that source. Semantic ambiguity remains user-owned; deterministic projection repair is preauthorized for coding agents. Unlike Tool `0.3.8a2`, Tool `0.3.8a3` ships this implementation inside the Consumer Tool as `ptsip/context_plane.py`; a release build is invalid if that module or the `ptsip context` CLI surface is absent from the built wheel.
|
|
449
|
+
|
|
434
450
|
## Tool 0.3.8a2 release identity
|
|
435
451
|
|
|
436
452
|
Tool `0.3.8a2` is a repository-namespace stabilization prerelease with a deliberately narrow compatibility goal.
|
|
@@ -482,8 +498,8 @@ Read-only inspection and Pilot operations remain read-only and do not create rep
|
|
|
482
498
|
|
|
483
499
|
Repository tooling implementations may physically live under `tools/`, `scripts/`, `src/`, or another project-owned path. Their PTSIP-owned registration, policy bindings, task/operation contracts, indexes, and lifecycle state must not establish an alternative repository-local PTSIP control-plane root.
|
|
484
500
|
|
|
485
|
-
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.
|
|
501
|
+
Canonical machine indexes under `.ptsip/` use JSON. Tool `0.3.8a3` uses `.ptsip/index.json` as the root router and `.ptsip/profiles/index.json` for local Project Profile selection. The Task and runtime namespaces are reserved; runtime persistence details remain future work. A reserved or unavailable Task capability must fail closed for the dependent operation rather than causing an agent to invent a new Task Engine elsewhere in the repository.
|
|
486
502
|
|
|
487
503
|
## Project status
|
|
488
504
|
|
|
489
|
-
PTSIP remains experimental. Tool `0.3.
|
|
505
|
+
PTSIP remains experimental. Tool `0.3.8a3` is the current namespace-stabilization prerelease candidate; its publication boundary is tracked in [`releasenote/tool/0.3.8a3.md`](releasenote/tool/0.3.8a3.md). Historical Tool releases, including `0.3.8a1`, and Specification notes are preserved under [`releasenote/`](releasenote/).
|
|
@@ -29,6 +29,7 @@ docs/Support_policy/policy/SFP-0018.yaml
|
|
|
29
29
|
docs/Support_policy/policy/SFP-0019.yaml
|
|
30
30
|
docs/Support_policy/policy/SFP-0020.yaml
|
|
31
31
|
docs/Support_policy/policy/SFP-0021.yaml
|
|
32
|
+
docs/Support_policy/policy/SFP-0022.yaml
|
|
32
33
|
docs/Support_policy/policy/index.yaml
|
|
33
34
|
docs/Support_policy/policy/registries/ptsip-support-authority-role-registry.yaml
|
|
34
35
|
docs/Support_policy/policy/registries/ptsip-support-authority-schema-registry.yaml
|
|
@@ -167,6 +168,7 @@ src/ptsip/conformance.py
|
|
|
167
168
|
src/ptsip/conformance_audit.py
|
|
168
169
|
src/ptsip/conformance_engine.py
|
|
169
170
|
src/ptsip/constants.py
|
|
171
|
+
src/ptsip/context_plane.py
|
|
170
172
|
src/ptsip/dependency_analysis.py
|
|
171
173
|
src/ptsip/dependency_cache.py
|
|
172
174
|
src/ptsip/dependency_reconciliation.py
|