apatch-studio 0.1.0__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.
- apatch_studio-0.1.0/LICENSE +21 -0
- apatch_studio-0.1.0/MANIFEST.in +8 -0
- apatch_studio-0.1.0/PKG-INFO +118 -0
- apatch_studio-0.1.0/README.md +80 -0
- apatch_studio-0.1.0/apatch_studio/__init__.py +3 -0
- apatch_studio-0.1.0/apatch_studio/action_facade.py +910 -0
- apatch_studio-0.1.0/apatch_studio/adapter.py +437 -0
- apatch_studio-0.1.0/apatch_studio/agent_runs.py +1547 -0
- apatch_studio-0.1.0/apatch_studio/app.py +698 -0
- apatch_studio-0.1.0/apatch_studio/build_assets.py +47 -0
- apatch_studio-0.1.0/apatch_studio/capabilities.py +165 -0
- apatch_studio-0.1.0/apatch_studio/change_details.py +288 -0
- apatch_studio-0.1.0/apatch_studio/change_feed.py +196 -0
- apatch_studio-0.1.0/apatch_studio/change_history.py +156 -0
- apatch_studio-0.1.0/apatch_studio/cli.py +213 -0
- apatch_studio-0.1.0/apatch_studio/contribution_workflow.py +310 -0
- apatch_studio-0.1.0/apatch_studio/delivery_pack.py +1212 -0
- apatch_studio-0.1.0/apatch_studio/delivery_workflow.py +299 -0
- apatch_studio-0.1.0/apatch_studio/edition.py +40 -0
- apatch_studio-0.1.0/apatch_studio/endpoint_enrollment.py +412 -0
- apatch_studio-0.1.0/apatch_studio/endpoint_identity.py +116 -0
- apatch_studio-0.1.0/apatch_studio/endpoint_outbox.py +266 -0
- apatch_studio-0.1.0/apatch_studio/endpoint_transport.py +161 -0
- apatch_studio-0.1.0/apatch_studio/execution_intents.py +745 -0
- apatch_studio-0.1.0/apatch_studio/failure_copy.py +131 -0
- apatch_studio-0.1.0/apatch_studio/governed_work_gateway.py +203 -0
- apatch_studio-0.1.0/apatch_studio/intent_store.py +362 -0
- apatch_studio-0.1.0/apatch_studio/local_review.py +201 -0
- apatch_studio-0.1.0/apatch_studio/lock_authority.py +662 -0
- apatch_studio-0.1.0/apatch_studio/operations.py +234 -0
- apatch_studio-0.1.0/apatch_studio/plan_handoff.py +368 -0
- apatch_studio-0.1.0/apatch_studio/policy_workflow.py +228 -0
- apatch_studio-0.1.0/apatch_studio/project_documents.py +479 -0
- apatch_studio-0.1.0/apatch_studio/projection.py +59 -0
- apatch_studio-0.1.0/apatch_studio/run_review.py +124 -0
- apatch_studio-0.1.0/apatch_studio/run_store.py +502 -0
- apatch_studio-0.1.0/apatch_studio/runtime_requirements.py +94 -0
- apatch_studio-0.1.0/apatch_studio/scope_projection.py +242 -0
- apatch_studio-0.1.0/apatch_studio/sdd_workflow.py +1272 -0
- apatch_studio-0.1.0/apatch_studio/security.py +165 -0
- apatch_studio-0.1.0/apatch_studio/settings_workflow.py +112 -0
- apatch_studio-0.1.0/apatch_studio/state_io.py +301 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/PKG-INFO +118 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/SOURCES.txt +94 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/dependency_links.txt +1 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/entry_points.txt +2 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/requires.txt +14 -0
- apatch_studio-0.1.0/apatch_studio.egg-info/top_level.txt +1 -0
- apatch_studio-0.1.0/frontend/dist/assets/index-CA-lVp33.js +333 -0
- apatch_studio-0.1.0/frontend/dist/assets/index-DGXZMUky.css +1 -0
- apatch_studio-0.1.0/frontend/dist/index.html +16 -0
- apatch_studio-0.1.0/frontend/dist/theme-init.js +9 -0
- apatch_studio-0.1.0/frontend/index.html +14 -0
- apatch_studio-0.1.0/frontend/package-lock.json +1877 -0
- apatch_studio-0.1.0/frontend/package.json +23 -0
- apatch_studio-0.1.0/frontend/public/theme-init.js +9 -0
- apatch_studio-0.1.0/frontend/src/ChangeDetailView.tsx +728 -0
- apatch_studio-0.1.0/frontend/src/ImportedChangeCard.tsx +108 -0
- apatch_studio-0.1.0/frontend/src/OutsideInAdmin.tsx +301 -0
- apatch_studio-0.1.0/frontend/src/OutsideInApp.tsx +214 -0
- apatch_studio-0.1.0/frontend/src/OutsideInViews.tsx +746 -0
- apatch_studio-0.1.0/frontend/src/ProjectPlanView.tsx +361 -0
- apatch_studio-0.1.0/frontend/src/ProofDetails.tsx +36 -0
- apatch_studio-0.1.0/frontend/src/TimeLibrary.tsx +149 -0
- apatch_studio-0.1.0/frontend/src/api.ts +389 -0
- apatch_studio-0.1.0/frontend/src/main.tsx +13 -0
- apatch_studio-0.1.0/frontend/src/navigation.contract.json +28 -0
- apatch_studio-0.1.0/frontend/src/outside-in.css +584 -0
- apatch_studio-0.1.0/frontend/src/outsideInNavigation.ts +78 -0
- apatch_studio-0.1.0/frontend/src/productLanguage.ts +57 -0
- apatch_studio-0.1.0/frontend/src/styles.css +611 -0
- apatch_studio-0.1.0/frontend/src/timesheetCsv.ts +44 -0
- apatch_studio-0.1.0/frontend/src/trustchain-theme.css +300 -0
- apatch_studio-0.1.0/frontend/src/types.ts +1145 -0
- apatch_studio-0.1.0/frontend/src/vocabulary.contract.json +35 -0
- apatch_studio-0.1.0/frontend/tsconfig.app.json +21 -0
- apatch_studio-0.1.0/frontend/tsconfig.json +4 -0
- apatch_studio-0.1.0/frontend/vite.config.ts +11 -0
- apatch_studio-0.1.0/pyproject.toml +68 -0
- apatch_studio-0.1.0/setup.cfg +4 -0
- apatch_studio-0.1.0/tests/test_adapter.py +82 -0
- apatch_studio-0.1.0/tests/test_agent_runs.py +228 -0
- apatch_studio-0.1.0/tests/test_api.py +236 -0
- apatch_studio-0.1.0/tests/test_contracts.py +131 -0
- apatch_studio-0.1.0/tests/test_operations_api.py +221 -0
- apatch_studio-0.1.0/tests/test_operations_contract.py +93 -0
- apatch_studio-0.1.0/tests/test_operations_smoke.py +77 -0
- apatch_studio-0.1.0/tests/test_projection.py +42 -0
- apatch_studio-0.1.0/tests/test_run_ledger_contract.py +27 -0
- apatch_studio-0.1.0/tests/test_run_ledger_smoke.py +125 -0
- apatch_studio-0.1.0/tests/test_run_review.py +119 -0
- apatch_studio-0.1.0/tests/test_run_store.py +111 -0
- apatch_studio-0.1.0/tests/test_security.py +73 -0
- apatch_studio-0.1.0/tests/test_studio_continuity_contract.py +50 -0
- apatch_studio-0.1.0/tests/test_studio_loop_closure_contract.py +81 -0
- apatch_studio-0.1.0/tests/test_studio_outside_in_contract.py +60 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Ed Cherednik
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
include frontend/index.html
|
|
2
|
+
include frontend/package.json frontend/package-lock.json
|
|
3
|
+
include frontend/tsconfig*.json frontend/vite.config.ts
|
|
4
|
+
recursive-include frontend/src *.ts *.tsx *.css *.json
|
|
5
|
+
recursive-include frontend/public *.js *.svg *.png *.ico
|
|
6
|
+
recursive-include frontend/dist *.html *.js *.css *.svg *.png *.ico
|
|
7
|
+
prune frontend/node_modules
|
|
8
|
+
global-exclude __pycache__ *.py[cod] *.tsbuildinfo
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: apatch-studio
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Local contract-driven workspace for governing AI-agent work with APatch and TrustChain Cowork
|
|
5
|
+
Author: Ed Cherednik
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/petro1eum/apatch-studio-oss
|
|
8
|
+
Project-URL: Documentation, https://github.com/petro1eum/apatch-studio-oss#readme
|
|
9
|
+
Project-URL: Issues, https://github.com/petro1eum/apatch-studio-oss/issues
|
|
10
|
+
Project-URL: Source, https://github.com/petro1eum/apatch-studio-oss
|
|
11
|
+
Classifier: Development Status :: 3 - Alpha
|
|
12
|
+
Classifier: Environment :: Web Environment
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
20
|
+
Classifier: Topic :: Software Development :: Quality Assurance
|
|
21
|
+
Requires-Python: >=3.11
|
|
22
|
+
Description-Content-Type: text/markdown
|
|
23
|
+
License-File: LICENSE
|
|
24
|
+
Requires-Dist: apatch[mcp]>=0.8.45
|
|
25
|
+
Requires-Dist: cryptography<47,>=45
|
|
26
|
+
Requires-Dist: fastapi<1,>=0.115
|
|
27
|
+
Requires-Dist: markdown-it-py<5,>=4.0
|
|
28
|
+
Requires-Dist: uvicorn<1,>=0.34
|
|
29
|
+
Provides-Extra: dev
|
|
30
|
+
Requires-Dist: build<2,>=1; extra == "dev"
|
|
31
|
+
Requires-Dist: httpx<1,>=0.27; extra == "dev"
|
|
32
|
+
Requires-Dist: pytest<10,>=8; extra == "dev"
|
|
33
|
+
Requires-Dist: pytest-asyncio<2,>=0.24; extra == "dev"
|
|
34
|
+
Requires-Dist: ruff<1,>=0.12; extra == "dev"
|
|
35
|
+
Requires-Dist: setuptools>=75; extra == "dev"
|
|
36
|
+
Requires-Dist: twine<7,>=6; extra == "dev"
|
|
37
|
+
Dynamic: license-file
|
|
38
|
+
|
|
39
|
+
# APatch Studio OSS
|
|
40
|
+
|
|
41
|
+
APatch Studio OSS is the local workspace for contract-driven work with AI agents.
|
|
42
|
+
|
|
43
|
+
Most agent sessions begin as requests in natural language: “read the specification,”
|
|
44
|
+
“write the tests,” “do not change them,” “implement the feature.” Studio turns that
|
|
45
|
+
fragile conversation into an explicit local contract that connects:
|
|
46
|
+
|
|
47
|
+
- the human intent and selected scope;
|
|
48
|
+
- the exact RFP, SPEC and requirement being executed;
|
|
49
|
+
- the agent run and every governed mutation;
|
|
50
|
+
- verification results, recovery checkpoints and signed evidence;
|
|
51
|
+
- the delivery decision and a factual time draft.
|
|
52
|
+
|
|
53
|
+
The result is not merely “AI generated code.” It is work whose mandate, changes,
|
|
54
|
+
tests and proof remain inspectable after the chat session ends.
|
|
55
|
+
|
|
56
|
+
Studio is useful without an account, subscription or network connection. When the
|
|
57
|
+
owner chooses to connect it to [TrustChain Cowork](https://trust-chain.ai/), the same
|
|
58
|
+
local workspace can receive signed assignments, require explicit local acceptance,
|
|
59
|
+
bind them to an existing SPEC, run APatch locally and return only authorized,
|
|
60
|
+
content-safe evidence. Source code, diffs, prompts, credentials and private keys stay
|
|
61
|
+
on the user's machine unless the user separately publishes them through Git.
|
|
62
|
+
|
|
63
|
+
## Install
|
|
64
|
+
|
|
65
|
+
APatch Studio OSS requires Python 3.11 or newer.
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
python3 -m pip install apatch-studio
|
|
69
|
+
apatch-studio serve --workspace /path/to/your/git/repository
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Studio opens a loopback-only browser interface. Consumer installation does not need
|
|
73
|
+
Node.js because the wheel contains the built web client.
|
|
74
|
+
|
|
75
|
+
For development:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
python3 -m venv .venv
|
|
79
|
+
npm --prefix frontend ci
|
|
80
|
+
npm --prefix frontend run build
|
|
81
|
+
.venv/bin/pip install -e ".[dev]"
|
|
82
|
+
.venv/bin/pytest -q
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## What is included
|
|
86
|
+
|
|
87
|
+
- local governed changes and exact SPEC requirement execution;
|
|
88
|
+
- Codex and Claude Code runner supervision;
|
|
89
|
+
- interruption recovery, retry and rollback;
|
|
90
|
+
- local review, delivery packs and owner decisions;
|
|
91
|
+
- signed evidence, WorkAssets, Avatar evidence export and factual time drafts;
|
|
92
|
+
- an opt-in signed Inbox and APatch governed-work round trip with Cowork;
|
|
93
|
+
- workspace, policy and runtime diagnostics.
|
|
94
|
+
|
|
95
|
+
## What is not included
|
|
96
|
+
|
|
97
|
+
The public distribution contains no organization control plane, membership or
|
|
98
|
+
entitlement service, fleet management, hosted database, cloud source storage or
|
|
99
|
+
remote arbitrary-execution endpoint. Those collaboration capabilities belong to
|
|
100
|
+
TrustChain Cowork and its hosted services. Their absence never disables local work.
|
|
101
|
+
|
|
102
|
+
## Documentation
|
|
103
|
+
|
|
104
|
+
- [Getting started](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/GETTING-STARTED.md)
|
|
105
|
+
- [OSS publication contract](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/RFP-023-studio-oss-publication.md)
|
|
106
|
+
- [Executable publication specification](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/specs/SPEC-STUDIO-OSS-PUBLICATION-1.md)
|
|
107
|
+
- [APatch OSS](https://github.com/petro1eum/apatch-oss)
|
|
108
|
+
- [TrustChain](https://trust-chain.ai/)
|
|
109
|
+
|
|
110
|
+
## Security
|
|
111
|
+
|
|
112
|
+
Please report security issues privately through the repository's GitHub Security
|
|
113
|
+
Advisory flow. Do not open a public issue containing credentials, private keys,
|
|
114
|
+
source code or personal data.
|
|
115
|
+
|
|
116
|
+
## License
|
|
117
|
+
|
|
118
|
+
MIT. See [LICENSE](https://github.com/petro1eum/apatch-studio-oss/blob/main/LICENSE).
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# APatch Studio OSS
|
|
2
|
+
|
|
3
|
+
APatch Studio OSS is the local workspace for contract-driven work with AI agents.
|
|
4
|
+
|
|
5
|
+
Most agent sessions begin as requests in natural language: “read the specification,”
|
|
6
|
+
“write the tests,” “do not change them,” “implement the feature.” Studio turns that
|
|
7
|
+
fragile conversation into an explicit local contract that connects:
|
|
8
|
+
|
|
9
|
+
- the human intent and selected scope;
|
|
10
|
+
- the exact RFP, SPEC and requirement being executed;
|
|
11
|
+
- the agent run and every governed mutation;
|
|
12
|
+
- verification results, recovery checkpoints and signed evidence;
|
|
13
|
+
- the delivery decision and a factual time draft.
|
|
14
|
+
|
|
15
|
+
The result is not merely “AI generated code.” It is work whose mandate, changes,
|
|
16
|
+
tests and proof remain inspectable after the chat session ends.
|
|
17
|
+
|
|
18
|
+
Studio is useful without an account, subscription or network connection. When the
|
|
19
|
+
owner chooses to connect it to [TrustChain Cowork](https://trust-chain.ai/), the same
|
|
20
|
+
local workspace can receive signed assignments, require explicit local acceptance,
|
|
21
|
+
bind them to an existing SPEC, run APatch locally and return only authorized,
|
|
22
|
+
content-safe evidence. Source code, diffs, prompts, credentials and private keys stay
|
|
23
|
+
on the user's machine unless the user separately publishes them through Git.
|
|
24
|
+
|
|
25
|
+
## Install
|
|
26
|
+
|
|
27
|
+
APatch Studio OSS requires Python 3.11 or newer.
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
python3 -m pip install apatch-studio
|
|
31
|
+
apatch-studio serve --workspace /path/to/your/git/repository
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Studio opens a loopback-only browser interface. Consumer installation does not need
|
|
35
|
+
Node.js because the wheel contains the built web client.
|
|
36
|
+
|
|
37
|
+
For development:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
python3 -m venv .venv
|
|
41
|
+
npm --prefix frontend ci
|
|
42
|
+
npm --prefix frontend run build
|
|
43
|
+
.venv/bin/pip install -e ".[dev]"
|
|
44
|
+
.venv/bin/pytest -q
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## What is included
|
|
48
|
+
|
|
49
|
+
- local governed changes and exact SPEC requirement execution;
|
|
50
|
+
- Codex and Claude Code runner supervision;
|
|
51
|
+
- interruption recovery, retry and rollback;
|
|
52
|
+
- local review, delivery packs and owner decisions;
|
|
53
|
+
- signed evidence, WorkAssets, Avatar evidence export and factual time drafts;
|
|
54
|
+
- an opt-in signed Inbox and APatch governed-work round trip with Cowork;
|
|
55
|
+
- workspace, policy and runtime diagnostics.
|
|
56
|
+
|
|
57
|
+
## What is not included
|
|
58
|
+
|
|
59
|
+
The public distribution contains no organization control plane, membership or
|
|
60
|
+
entitlement service, fleet management, hosted database, cloud source storage or
|
|
61
|
+
remote arbitrary-execution endpoint. Those collaboration capabilities belong to
|
|
62
|
+
TrustChain Cowork and its hosted services. Their absence never disables local work.
|
|
63
|
+
|
|
64
|
+
## Documentation
|
|
65
|
+
|
|
66
|
+
- [Getting started](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/GETTING-STARTED.md)
|
|
67
|
+
- [OSS publication contract](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/RFP-023-studio-oss-publication.md)
|
|
68
|
+
- [Executable publication specification](https://github.com/petro1eum/apatch-studio-oss/blob/main/docs/specs/SPEC-STUDIO-OSS-PUBLICATION-1.md)
|
|
69
|
+
- [APatch OSS](https://github.com/petro1eum/apatch-oss)
|
|
70
|
+
- [TrustChain](https://trust-chain.ai/)
|
|
71
|
+
|
|
72
|
+
## Security
|
|
73
|
+
|
|
74
|
+
Please report security issues privately through the repository's GitHub Security
|
|
75
|
+
Advisory flow. Do not open a public issue containing credentials, private keys,
|
|
76
|
+
source code or personal data.
|
|
77
|
+
|
|
78
|
+
## License
|
|
79
|
+
|
|
80
|
+
MIT. See [LICENSE](https://github.com/petro1eum/apatch-studio-oss/blob/main/LICENSE).
|