Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

English | 한국어

PTSIP — Primary Lifecycle Ownership and Responsibility Isolation Policy

PTSIP records architecture responsibility as explicit, machine-readable project intent, then verifies it against repository evidence. It separates Product, development, delivery, and operations lifecycles without forcing a specific folder layout or programming language.

Purpose precedes reuse. Determine why a responsibility exists and which lifecycle owns it before optimizing how code is shared.

Component versions

Identity Source-tree value
PTSIP_Package 0.3.8.<SHA6> — composition assigned after successful publication
PTSIP_Tool 0.3.8b1
Project Profile pp.1.02
Engine Context/Projection 0.2.0; Storage/Validation/Discovery/Planning/Execution 0.3.0

Package composition, Tool, each engine and Project Profile retain independent versions. The immutable Specification binding is recorded in the canonical composition and shipping manifest. Read what changed in 0.3.8b1, the Tool release history, or the release workflow. Release verification is selected from .github/test_modes.yaml and runs exclusively in tooling-test.yml; publication consumes that exact-source evidence in tooling-release.yml. Actual publication state and exact Package composition are recorded in the version-specific release assets.

Quick start

Requires Python 3.11 or newer. These commands use PowerShell; the basic CLI commands also work in other shells.

Install the latest normally selected published release, then inspect its identities:

python -m pip install --upgrade PTSIP
ptsip --version
ptsip spec

To install Tool 0.3.8b1 specifically (ordinary pip resolution might select a stable version instead):

python -m pip install "PTSIP==0.3.8b1"

To develop this repository directly:

git clone https://github.com/Kinirin/PTSIP.git
cd PTSIP
python -m pip install -e ".[dev]"

Start with read-only or diagnostic operations before changing a Project Profile:

ptsip doctor .
ptsip inspect .
ptsip pilot .
ptsip validate .
ptsip conform .

validate checks declarations. conform evaluates applicable architecture requirements against observed evidence. A valid profile is not proof of conformance; consult the installed CLI help for exact supported options.

What the system keeps separate

Authority/evidence plane Responsibility
Specification Normative requirements and their immutable revision
Decision Authority Explicit approved architectural answers and their coordination
Source Project Profile / Responsibility Map Project-owned architecture declarations
Observations and conformance Actual repository/artifact behavior and rule evaluation

Evidence is not architecture authority. File paths, packages, heuristics, templates, AI confidence and observed imports can inform review; none may silently create lifecycle ownership. The tool never treats an INCOMPLETE result as a pass.

Primary lifecycle ownership

Canonical Tool 0.3.8a5 classifications remain exactly:

Classification Meaning
PRODUCT Responsibility primarily owned by the Product lifecycle.
DEVELOPMENT_TOOLING Development-lifecycle responsibility used to create, inspect, validate, transform, generate, migrate, analyze, test, or otherwise support development.
DELIVERY Responsibility for release preparation, packaging, publication, promotion, distribution, or deployment to the delivery destination.
OPERATIONS Ongoing post-delivery responsibility for health, recovery, reconciliation, maintenance, and operation.
NEUTRAL_CONTRACT Deliberately non-executable, non-owning contract responsibility with lifecycle-independent governance.

UNKNOWN, CONFLICT, INCOMPLETE, PENDING, confidence values, and migration states are workflow/evaluation states, not additional classifications.

Tool 0.3.5 compatibility boundary

Tool 0.3.5 historically used:

PRODUCT
TOOLCHAIN
NEUTRAL_CONTRACT

Tool 0.3.8a5 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.

Tool 0.3.8a5 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.

Classification is not path or technology

Classification follows the governing lifecycle obligation, not filename, directory, language, framework, executable status, workflow provider, compilation behavior, runtime duration, test status, or confidence score.

Examples:

Product-specific verification responsibility       -> PRODUCT
Reusable verification framework / test SDK         -> DEVELOPMENT_TOOLING
Product runtime implementation                      -> PRODUCT
Release-unit assembly / publication automation      -> DELIVERY
Post-deployment health or recovery automation       -> OPERATIONS
Independent non-executable shared contract          -> NEUTRAL_CONTRACT

Paths such as tests/, tools/, deploy/, ops/, or .github/workflows/ are evidence context only. They do not become architecture authority.

Responsibility Map v2

Tool 0.3.8a5 uses Responsibility Map v2 as the project-owned architecture declaration model. It keeps several axes independent:

classification
    = primary lifecycle ownership

roles
    = coarse responsibility characteristics

relationships
    = project-owned typed directed semantics

source/derived provenance
    = where declaration/materialized architecture came from

VPMS Verification Purpose
    = why verification exists and what it protects

Canonical roles are:

IMPLEMENTATION
VERIFICATION
AUTOMATION
CONFIGURATION
DOCUMENTATION
GOVERNANCE

Canonical typed relationships are:

IMPORTS
LINKS
LOADS
INVOKES
READS
GENERATES
BUILDS
PACKAGES
PUBLISHES
DEPLOYS
VERIFIES
MANAGES
DOCUMENTS
SPECIFIES
GOVERNS

An associated artifact is a project-owned non-component support surface subordinate to one classified anchor component. It must not be used to hide independently governable executable or lifecycle responsibility.

Explicit, template, and hybrid declarations

Canonical source modes are:

explicit
    repository directly declares the complete map

template
    repository explicitly selects one immutable revision-bound template

hybrid
    repository explicitly selects a template and adds project-owned
    overrides, extensions, or removals

The initial template catalog contains:

python-package-library
python-cli-application
mixed-product-development-delivery

Template selection is explicit. PTSIP does not automatically select a template from repository layout, language, framework detection, manifests, or confidence.

Source declaration and Effective Responsibility Map

All source modes resolve through deterministic, non-authoritative materialization:

Source Project Profile
        |
        v
explicit / template / hybrid
        |
        v
deterministic materialization
        |
        v
Canonical Effective Responsibility Map
        |
        +--> validation / conformance
        +--> clarification / adoption
        +--> narrow VPMS read-only projection

The Source Project Profile remains project-owned architecture authority. Materialization must not select templates, infer ownership, repair invalid architecture, or silently rewrite the source declaration.

The resolved view retains declaration provenance such as:

PROJECT_EXPLICIT
TEMPLATE
PROJECT_OVERRIDE
PROJECT_EXTENSION
PROJECT_REMOVAL

and has deterministic digest identity for reproducibility. Neither provenance nor digest becomes a replacement architecture authority.

Profile selection and adoption

When repository-local PTSIP configuration is persisted, .ptsip/index.json routes the canonical .ptsip/ namespaces and .ptsip/profiles/index.json selects the active *.ptsip.yaml Project Profile through default_profile. Repository-root ptsip.yaml is a historical migration/compatibility input, not a second active declaration authority.

explicit, template, and hybrid declarations all materialize to a Canonical Effective Responsibility Map. The materializer may resolve registered structures and provenance; it must not auto-select a template, invent a component owner, or fix conflicting project intent.

For an existing component, inspect the declaration change without applying it:

ptsip adopt . `
  --component tools `
  --classification DEVELOPMENT_TOOLING `
  --purpose "Repository-local generation tooling" `
  --shipped no `
  --runtime-required no `
  --executable yes `
  --json

Apply only an owner-reviewed change by adding --apply. This is an illustrative command, not a rule classifying every directory named tools. Canonical ownership is classification; the historical lifecycle_owner field is migration evidence only.

Optional GitHub-coordinated decision authority uses refs/heads/ptsip-policy when configured. It relies on fresh authority reads and conditional mutations to reject stale writers. Coordination failures block new architecture-authority writes rather than silently falling back to an unrelated local decision store; GitHub is not a universal Specification dependency.

Native foundation and consumer boundaries

Seven independently built Rust engines have versioned, language-neutral contracts and registered entrypoint bindings under src/ptsip/engines/. See the official engine index.

Engine Owned capability
Context Load validated, identity/source-bound Context snapshots
Storage Mediate provider operations without taking provider ownership
Validation Check schemas, contracts, typed I/O, preconditions and Cases
Discovery Resolve registered source closures and invocation bindings
Planning Order dependencies, assess changes and prepare native invocation
Execution Perform bounded caller-admitted requests and record effects/stops
Projection Render validated Context into declared output formats

0.3.8a5 verifies the native foundation on Linux, Windows and macOS; it does not implicitly grant consumer production installation, authority admission, activation, or versioned cutover. The Python wheel carries neutral engine contract data, not the Rust sources, native binaries or build outputs. Existing consumer APIs remain available; see the release-scope boundary.

PTSIP controls who owns lifecycle responsibilities. The independent src/vpms/ Verification Protocol Management System (VPMS) controls how explicit Verification Cases are registered, selected, run and reported. VPMS purpose/verification status is separate from PTSIP classification and conformance.

VPMS public composition uses load_registry_snapshot, resolve_selection, and run_cases, with explicit caller-owned definitions, references and adapters. The optional PTSIP bridge consumes only validated immutable Effective Responsibility Map data; it does not establish project authority. VPMS PASS does not imply PTSIP CONFORMANT, or vice versa.

PTSIP conformance completes with CONFORMANT (exit 0), NON_CONFORMANT (5), or INCOMPLETE (6). Missing required evidence is fail-closed. Product distribution verification inspects actual snapshot-bound built artifacts; the producer component owning a build step is not automatically the owner of the resulting Product artifact.

Developer workflow and repository map

Path Responsibility
.ptsip/ Consumer-repository indexes, profiles, Context; Task/runtime are reserved
src/policy/index.yaml Current Support Feature policy registry (ACTIVE/DRAFT/RETIRED)
developer/policy/ Developer machine policy and bindings
developer/planning/ and planning/ Policy-derived execution plans, work units and historical records
developer/automation/ Native Go developer tooling, policy/planning/release controls
src/ptsip/ Python Consumer Tool, conformance, profile materialization and engines contracts
src/ptsip/engines/ Seven independently owned native engine implementations/contracts
src/vpms/ Independent verification subsystem
src/tests/ and developer/tests/ Consumer, developer and native verification
registry/ and schemas/ Specification registries and schemas
.github/workflows/ Test, release and README translation workflows
docs/releasenote/ Tool, Project Profile and Specification release records

For coding agents, AGENTS.md is an entry projection not an alternative policy authority. Policies govern plans, plans govern implementation; lower levels must not silently change an authoritative decision. See CONTRIBUTING.md and the developer automation guide.

Bounded dependency analysis and validation planning are advisory and do not replace current architecture declarations or exact-source release validation:

ptsip dependency analyze .
ptsip dependency review-pack . --max-items 8 --max-context-bytes 12000
ptsip dependency validation-plan . --changed src/ptsip/dependency_analysis.py --json

Release PREPARE and PUBLISH are independent, exact-source-verification phases in .github/workflows/tooling-release.yml. Documentation, tests, workflow or Tool-only changes do not themselves change the immutable Specification revision.

Release notes and background

License authority

PTSIP licensing authority is contained exclusively under License-Authority/. The machine-readable entry point is License-Authority/license-authority.yaml, and the controlling legal text is License-Authority/LICENSE.md.

The canonical effective time currently declared by the License Authority is 2026-09-15T00:00:00Z (UTC).

License-related wording elsewhere in this repository is informational or contextual only. It does not become part of the License, modify it, or become incorporated by reference.

Normal Tool releases, Specification validation, Tool version changes, documentation mentions, keyword matches, and AI semantic guesses do not authorize License Authority entry. Entry uses only the triggers declared by License-Authority/license-authority.yaml.

Language and project status

This English README is the canonical project overview. Localized documentation is regenerated on main using the registered Argos Translate workflow; translations do not override the English overview or machine-readable policy. PTSIP remains experimental and release claims are bounded to their exact source and verification evidence.

Metadata

Release files for PTSIP 0.3.8b3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for PTSIP 0.3.8b3
File Size Uploaded
ptsip-0.3.8b3.tar.gz 712.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for PTSIP 0.3.8b3
File Interpreter ABI Platform
ptsip-0.3.8b3-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
ptsip-0.3.8b3-py3-none-manylinux_2_39_x86_64.whl Python 3 none Linux glibc 2.39+ x86-64 Details

Total release size: 31.9 MB

Release files / ptsip-0.3.8b3.tar.gz

Download URL ptsip-0.3.8b3.tar.gz
Size 712.6 kB
Tags Source
SHA-256 checksum
How to use checksums
44cbaee19cba63e99d02e9c142426c9588f99901c151d7078f3bb1c09c83230c
BLAKE2b-256 checksum
How to use checksums
1de5a65005482fd4aa8d70a616f987d1383755e8811d13c07745960d93e51397
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / ptsip-0.3.8b3-py3-none-win_amd64.whl

Download URL ptsip-0.3.8b3-py3-none-win_amd64.whl
Size 14.4 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
215f168aea697c36d6b2550caad2995422efe7ca51c32bf92d2928c096dd937b
BLAKE2b-256 checksum
How to use checksums
5795f4994f39828437df66c364a0608d1d32dba63dd1708bfee42899d27f0298
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / ptsip-0.3.8b3-py3-none-manylinux_2_39_x86_64.whl

Download URL ptsip-0.3.8b3-py3-none-manylinux_2_39_x86_64.whl
Size 16.8 MB
Tags Linux glibc 2.39+ x86-64 Python 3
SHA-256 checksum
How to use checksums
9fbd9d6d5491cadab929e4c1425e7402d31f5a540f65d960960780bf9d5e0b4a
BLAKE2b-256 checksum
How to use checksums
17c8bce62aca4c69dc83067a329a0a787c63dd051863b3246e4723b0a16f602c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page