agentic-development-framework 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.
- agentic_development_framework-0.1.0/.gitignore +26 -0
- agentic_development_framework-0.1.0/CHANGELOG.md +28 -0
- agentic_development_framework-0.1.0/LICENSE +22 -0
- agentic_development_framework-0.1.0/PKG-INFO +175 -0
- agentic_development_framework-0.1.0/README.md +143 -0
- agentic_development_framework-0.1.0/docs/ACCEPTANCE_REPORT.md +84 -0
- agentic_development_framework-0.1.0/docs/IMPLEMENTATION_PLAN.md +27 -0
- agentic_development_framework-0.1.0/docs/IMPLEMENTATION_PROGRESS.md +131 -0
- agentic_development_framework-0.1.0/docs/PYPI_RELEASE.md +113 -0
- agentic_development_framework-0.1.0/docs/REQUIREMENTS_MANAGEMENT.md +60 -0
- agentic_development_framework-0.1.0/pyproject.toml +87 -0
- agentic_development_framework-0.1.0/scripts/installed_distribution_tests.py +63 -0
- agentic_development_framework-0.1.0/scripts/release_acceptance.py +195 -0
- agentic_development_framework-0.1.0/src/agentic_framework/__init__.py +6 -0
- agentic_development_framework-0.1.0/src/agentic_framework/__main__.py +7 -0
- agentic_development_framework-0.1.0/src/agentic_framework/adapters/__init__.py +5 -0
- agentic_development_framework-0.1.0/src/agentic_framework/adapters/generator.py +139 -0
- agentic_development_framework-0.1.0/src/agentic_framework/cli.py +264 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/__init__.py +2 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/command_registry.py +16 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/config.py +146 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/initialization.py +241 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/project.py +93 -0
- agentic_development_framework-0.1.0/src/agentic_framework/core/workflow.py +94 -0
- agentic_development_framework-0.1.0/src/agentic_framework/exceptions.py +22 -0
- agentic_development_framework-0.1.0/src/agentic_framework/logging.py +70 -0
- agentic_development_framework-0.1.0/src/agentic_framework/requirements_manager/__init__.py +8 -0
- agentic_development_framework-0.1.0/src/agentic_framework/requirements_manager/comparison.py +129 -0
- agentic_development_framework-0.1.0/src/agentic_framework/requirements_manager/extraction.py +43 -0
- agentic_development_framework-0.1.0/src/agentic_framework/requirements_manager/ingestion.py +367 -0
- agentic_development_framework-0.1.0/src/agentic_framework/requirements_manager/traceability.py +65 -0
- agentic_development_framework-0.1.0/src/agentic_framework/state/__init__.py +5 -0
- agentic_development_framework-0.1.0/src/agentic_framework/state/database.py +231 -0
- agentic_development_framework-0.1.0/src/agentic_framework/templates/__init__.py +1 -0
- agentic_development_framework-0.1.0/src/agentic_framework/templates/skills/agentic-commands/SKILL.md +22 -0
- agentic_development_framework-0.1.0/tests/acceptance/test_commands_cli.py +56 -0
- agentic_development_framework-0.1.0/tests/acceptance/test_init_cli.py +35 -0
- agentic_development_framework-0.1.0/tests/acceptance/test_requirements_cli.py +37 -0
- agentic_development_framework-0.1.0/tests/integration/test_requirements_ingestion.py +162 -0
- agentic_development_framework-0.1.0/tests/integration/test_workflow_recovery.py +63 -0
- agentic_development_framework-0.1.0/tests/unit/test_adapters.py +36 -0
- agentic_development_framework-0.1.0/tests/unit/test_cli.py +43 -0
- agentic_development_framework-0.1.0/tests/unit/test_comparison.py +65 -0
- agentic_development_framework-0.1.0/tests/unit/test_config.py +70 -0
- agentic_development_framework-0.1.0/tests/unit/test_extraction.py +35 -0
- agentic_development_framework-0.1.0/tests/unit/test_initialization.py +124 -0
- agentic_development_framework-0.1.0/tests/unit/test_logging.py +34 -0
- agentic_development_framework-0.1.0/tests/unit/test_package_resources.py +23 -0
- agentic_development_framework-0.1.0/tests/unit/test_project.py +53 -0
- agentic_development_framework-0.1.0/tests/unit/test_state.py +56 -0
- agentic_development_framework-0.1.0/tests/unit/test_traceability.py +35 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
__pycache__/
|
|
2
|
+
*.py[cod]
|
|
3
|
+
*.egg-info/
|
|
4
|
+
.eggs/
|
|
5
|
+
.coverage
|
|
6
|
+
.coverage.*
|
|
7
|
+
coverage.xml
|
|
8
|
+
htmlcov/
|
|
9
|
+
.pytest_cache/
|
|
10
|
+
.ruff_cache/
|
|
11
|
+
.mypy_cache/
|
|
12
|
+
.venv/
|
|
13
|
+
venv/
|
|
14
|
+
build/
|
|
15
|
+
dist/
|
|
16
|
+
|
|
17
|
+
# Local framework runtime data
|
|
18
|
+
.agentic/
|
|
19
|
+
|
|
20
|
+
# Local secrets and editor metadata
|
|
21
|
+
.env
|
|
22
|
+
.env.*
|
|
23
|
+
!.env.example
|
|
24
|
+
.idea/
|
|
25
|
+
.vscode/
|
|
26
|
+
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## Unreleased
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Initial package and CLI foundation.
|
|
10
|
+
- Validated YAML configuration models.
|
|
11
|
+
- Console logging and structured JSONL event logging.
|
|
12
|
+
- Phase 1 unit tests and project documentation.
|
|
13
|
+
- Safe, idempotent project initialization for new and existing repositories.
|
|
14
|
+
- Project, Git, technology, and package-manager discovery.
|
|
15
|
+
- Conflict proposals and human-readable initialization reports.
|
|
16
|
+
- Atomic, hash-verified requirements ingestion with immutable source versions.
|
|
17
|
+
- Requirement-ID traceability, duplicate detection, version comparison, and impact reports.
|
|
18
|
+
- Requirements management unit, integration, and acceptance coverage.
|
|
19
|
+
- SQLite runtime state, JSON snapshots, events, integrity-checked checkpoints, and recovery.
|
|
20
|
+
- Central lifecycle command registry with CLI and chat-command mappings.
|
|
21
|
+
- Canonical workflow, policy, and eleven-agent registry generation.
|
|
22
|
+
- Documented Codex skill/instructions and Antigravity rule generation.
|
|
23
|
+
- Wheel-installed Django + React release acceptance harness.
|
|
24
|
+
- Single-source package versioning and explicit wheel/source-distribution content rules.
|
|
25
|
+
- Installed-distribution resource and full-suite regression tests.
|
|
26
|
+
- Python 3.11–3.13 CI plus tag-only PyPI OIDC Trusted Publishing.
|
|
27
|
+
- Maintainer checklist for building, inspecting, testing, and publishing releases.
|
|
28
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Agentic Development Framework contributors
|
|
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.
|
|
22
|
+
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agentic-development-framework
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A local-first framework for agentic software development workflows.
|
|
5
|
+
Project-URL: Homepage, https://github.com/Badsha-ugv/ide-agentic-development-framework
|
|
6
|
+
Project-URL: Repository, https://github.com/Badsha-ugv/ide-agentic-development-framework
|
|
7
|
+
Project-URL: Issues, https://github.com/Badsha-ugv/ide-agentic-development-framework/issues
|
|
8
|
+
Project-URL: Changelog, https://github.com/Badsha-ugv/ide-agentic-development-framework/blob/main/CHANGELOG.md
|
|
9
|
+
Author: Agentic Development Framework contributors
|
|
10
|
+
License-Expression: MIT
|
|
11
|
+
License-File: LICENSE
|
|
12
|
+
Classifier: Development Status :: 3 - Alpha
|
|
13
|
+
Classifier: Environment :: Console
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Operating System :: OS Independent
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Topic :: Software Development
|
|
21
|
+
Requires-Python: >=3.11
|
|
22
|
+
Requires-Dist: pydantic<3,>=2.7
|
|
23
|
+
Requires-Dist: pyyaml<7,>=6.0
|
|
24
|
+
Requires-Dist: typer<1,>=0.12
|
|
25
|
+
Provides-Extra: dev
|
|
26
|
+
Requires-Dist: build<2,>=1.2; extra == 'dev'
|
|
27
|
+
Requires-Dist: pytest-cov<8,>=5.0; extra == 'dev'
|
|
28
|
+
Requires-Dist: pytest<9,>=8.0; extra == 'dev'
|
|
29
|
+
Requires-Dist: ruff<1,>=0.8; extra == 'dev'
|
|
30
|
+
Requires-Dist: twine<7,>=5; extra == 'dev'
|
|
31
|
+
Description-Content-Type: text/markdown
|
|
32
|
+
|
|
33
|
+
# Agentic Development Framework
|
|
34
|
+
|
|
35
|
+
Agentic Development Framework (ADF) is a local-first foundation for persistent,
|
|
36
|
+
human-controlled software development workflows driven through IDE coding agents.
|
|
37
|
+
|
|
38
|
+
The project is being delivered incrementally. The current implementation provides the
|
|
39
|
+
installable package, strict configuration validation, structured logging, safe project
|
|
40
|
+
initialization, immutable requirements versioning, SQLite workflow state, recovery checkpoints,
|
|
41
|
+
lifecycle commands, and Codex/Antigravity project configuration.
|
|
42
|
+
|
|
43
|
+
## Requirements
|
|
44
|
+
|
|
45
|
+
- Python 3.11 or newer
|
|
46
|
+
|
|
47
|
+
## Installation
|
|
48
|
+
|
|
49
|
+
Install the latest released version from PyPI:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
python -m pip install agentic-development-framework
|
|
53
|
+
adt --help
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Development setup
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
python -m venv .venv
|
|
60
|
+
source .venv/bin/activate
|
|
61
|
+
python -m pip install -e '.[dev]'
|
|
62
|
+
pytest
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## CLI
|
|
66
|
+
|
|
67
|
+
Both entry points expose the same application:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
adt --help
|
|
71
|
+
python -m agentic_framework --help
|
|
72
|
+
adt --version
|
|
73
|
+
adt init
|
|
74
|
+
adt config validate path/to/config.yaml
|
|
75
|
+
adt requirements ingest
|
|
76
|
+
adt start
|
|
77
|
+
adt status
|
|
78
|
+
adt pause
|
|
79
|
+
adt resume
|
|
80
|
+
adt continue
|
|
81
|
+
adt stop
|
|
82
|
+
adt review
|
|
83
|
+
adt approve requirements_review
|
|
84
|
+
adt revise requirements_review "Clarify the acceptance criteria"
|
|
85
|
+
adt tasks
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
The validation command prints the normalized configuration as YAML and exits with code 2
|
|
89
|
+
for missing, malformed, or invalid configuration.
|
|
90
|
+
|
|
91
|
+
## Project initialization
|
|
92
|
+
|
|
93
|
+
Run `adt init` or `python -m agentic_framework init` from the project directory. Initialization:
|
|
94
|
+
|
|
95
|
+
- detects new and existing projects, common technologies, package managers, and parent Git roots;
|
|
96
|
+
- creates the ADF runtime, requirements, documentation, and IDE discovery directories;
|
|
97
|
+
- installs initial configuration and project guidance without replacing existing files;
|
|
98
|
+
- writes proposed content under `.agentic/proposals/` when a generated file conflicts; and
|
|
99
|
+
- initializes Git only when no repository is already present.
|
|
100
|
+
|
|
101
|
+
Use `--path DIRECTORY` to target another directory or `--no-git` to suppress Git initialization.
|
|
102
|
+
The operation is idempotent. Its latest report is written to
|
|
103
|
+
`.agentic/reports/initialization.md`.
|
|
104
|
+
|
|
105
|
+
## Requirements management
|
|
106
|
+
|
|
107
|
+
Add one or more source files below `requirements/inbox/`, including files in nested folders,
|
|
108
|
+
then run:
|
|
109
|
+
|
|
110
|
+
```bash
|
|
111
|
+
adt requirements ingest
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Each changed submission creates the next directory under `requirements/versions/`. The version
|
|
115
|
+
contains byte-for-byte source copies, SHA-256 hashes, a manifest, consolidated extracted text, a
|
|
116
|
+
requirement index, and initial traceability records. Existing versions are hash-validated before
|
|
117
|
+
use and are never updated. An unchanged inbox is reported as a duplicate without creating a new
|
|
118
|
+
version.
|
|
119
|
+
|
|
120
|
+
Starting with the second version, ADF compares source files and `REQ-NNN` requirement blocks and
|
|
121
|
+
writes an impact report under `requirements/reports/`. Added, modified, removed, and unchanged
|
|
122
|
+
items are reported separately, along with documentation, architecture, implementation, testing,
|
|
123
|
+
and approval review prompts.
|
|
124
|
+
|
|
125
|
+
Markdown, text, CSV, TSV, JSON, YAML, and reStructuredText are extracted as UTF-8 text. Other
|
|
126
|
+
formats—including PDF, DOCX, XLSX, and images—are still preserved exactly and recorded with a
|
|
127
|
+
clear unsupported-extraction status. Optional binary-format extractors are future work.
|
|
128
|
+
|
|
129
|
+
See `docs/REQUIREMENTS_MANAGEMENT.md` for the file contract and safety behavior.
|
|
130
|
+
|
|
131
|
+
## Runtime state and recovery
|
|
132
|
+
|
|
133
|
+
Initialization creates `.agentic/database/agentic.db` as the transactional source of truth,
|
|
134
|
+
inspection snapshots under `.agentic/state/`, a JSONL event history, and checkpoint storage.
|
|
135
|
+
Pause and stop persist checkpoints. Resume verifies checkpoint integrity and restores the
|
|
136
|
+
checkpoint stage instead of trusting potentially inconsistent conversational context or snapshot
|
|
137
|
+
files. Mandatory workflow approval stages cannot advance until approval is recorded.
|
|
138
|
+
|
|
139
|
+
## IDE configuration
|
|
140
|
+
|
|
141
|
+
ADF generates root `AGENTS.md`, a shared command skill under
|
|
142
|
+
`.agents/skills/agentic-commands/`, and Antigravity rules under `.agents/rules/`. The Codex adapter
|
|
143
|
+
uses the documented root instructions and repository-local skill surfaces. The `.codex/agents/`
|
|
144
|
+
directory contains an informational compatibility note; ADF does not claim an undocumented
|
|
145
|
+
custom-agent file format is automatically discovered.
|
|
146
|
+
|
|
147
|
+
## Configuration
|
|
148
|
+
|
|
149
|
+
ADF configuration uses YAML and rejects unknown keys to catch mistakes early:
|
|
150
|
+
|
|
151
|
+
```yaml
|
|
152
|
+
schema_version: 1
|
|
153
|
+
project:
|
|
154
|
+
name: example-project
|
|
155
|
+
mode: auto
|
|
156
|
+
runtime:
|
|
157
|
+
directory: .agentic
|
|
158
|
+
log_level: INFO
|
|
159
|
+
ide:
|
|
160
|
+
enabled:
|
|
161
|
+
- codex
|
|
162
|
+
policies:
|
|
163
|
+
allow_network: false
|
|
164
|
+
allow_destructive_operations: false
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
Runtime directories must be project-relative and cannot contain parent-directory traversal.
|
|
168
|
+
|
|
169
|
+
## Logging
|
|
170
|
+
|
|
171
|
+
`configure_logging()` sets up readable console output and can additionally write a JSONL
|
|
172
|
+
event stream. Reconfiguration is idempotent and only replaces handlers managed by ADF.
|
|
173
|
+
|
|
174
|
+
See `docs/IMPLEMENTATION_PLAN.md` and `docs/IMPLEMENTATION_PROGRESS.md` for scope and status. The
|
|
175
|
+
maintainer release procedure is documented in `docs/PYPI_RELEASE.md`.
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# Agentic Development Framework
|
|
2
|
+
|
|
3
|
+
Agentic Development Framework (ADF) is a local-first foundation for persistent,
|
|
4
|
+
human-controlled software development workflows driven through IDE coding agents.
|
|
5
|
+
|
|
6
|
+
The project is being delivered incrementally. The current implementation provides the
|
|
7
|
+
installable package, strict configuration validation, structured logging, safe project
|
|
8
|
+
initialization, immutable requirements versioning, SQLite workflow state, recovery checkpoints,
|
|
9
|
+
lifecycle commands, and Codex/Antigravity project configuration.
|
|
10
|
+
|
|
11
|
+
## Requirements
|
|
12
|
+
|
|
13
|
+
- Python 3.11 or newer
|
|
14
|
+
|
|
15
|
+
## Installation
|
|
16
|
+
|
|
17
|
+
Install the latest released version from PyPI:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
python -m pip install agentic-development-framework
|
|
21
|
+
adt --help
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Development setup
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
python -m venv .venv
|
|
28
|
+
source .venv/bin/activate
|
|
29
|
+
python -m pip install -e '.[dev]'
|
|
30
|
+
pytest
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## CLI
|
|
34
|
+
|
|
35
|
+
Both entry points expose the same application:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
adt --help
|
|
39
|
+
python -m agentic_framework --help
|
|
40
|
+
adt --version
|
|
41
|
+
adt init
|
|
42
|
+
adt config validate path/to/config.yaml
|
|
43
|
+
adt requirements ingest
|
|
44
|
+
adt start
|
|
45
|
+
adt status
|
|
46
|
+
adt pause
|
|
47
|
+
adt resume
|
|
48
|
+
adt continue
|
|
49
|
+
adt stop
|
|
50
|
+
adt review
|
|
51
|
+
adt approve requirements_review
|
|
52
|
+
adt revise requirements_review "Clarify the acceptance criteria"
|
|
53
|
+
adt tasks
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
The validation command prints the normalized configuration as YAML and exits with code 2
|
|
57
|
+
for missing, malformed, or invalid configuration.
|
|
58
|
+
|
|
59
|
+
## Project initialization
|
|
60
|
+
|
|
61
|
+
Run `adt init` or `python -m agentic_framework init` from the project directory. Initialization:
|
|
62
|
+
|
|
63
|
+
- detects new and existing projects, common technologies, package managers, and parent Git roots;
|
|
64
|
+
- creates the ADF runtime, requirements, documentation, and IDE discovery directories;
|
|
65
|
+
- installs initial configuration and project guidance without replacing existing files;
|
|
66
|
+
- writes proposed content under `.agentic/proposals/` when a generated file conflicts; and
|
|
67
|
+
- initializes Git only when no repository is already present.
|
|
68
|
+
|
|
69
|
+
Use `--path DIRECTORY` to target another directory or `--no-git` to suppress Git initialization.
|
|
70
|
+
The operation is idempotent. Its latest report is written to
|
|
71
|
+
`.agentic/reports/initialization.md`.
|
|
72
|
+
|
|
73
|
+
## Requirements management
|
|
74
|
+
|
|
75
|
+
Add one or more source files below `requirements/inbox/`, including files in nested folders,
|
|
76
|
+
then run:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
adt requirements ingest
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Each changed submission creates the next directory under `requirements/versions/`. The version
|
|
83
|
+
contains byte-for-byte source copies, SHA-256 hashes, a manifest, consolidated extracted text, a
|
|
84
|
+
requirement index, and initial traceability records. Existing versions are hash-validated before
|
|
85
|
+
use and are never updated. An unchanged inbox is reported as a duplicate without creating a new
|
|
86
|
+
version.
|
|
87
|
+
|
|
88
|
+
Starting with the second version, ADF compares source files and `REQ-NNN` requirement blocks and
|
|
89
|
+
writes an impact report under `requirements/reports/`. Added, modified, removed, and unchanged
|
|
90
|
+
items are reported separately, along with documentation, architecture, implementation, testing,
|
|
91
|
+
and approval review prompts.
|
|
92
|
+
|
|
93
|
+
Markdown, text, CSV, TSV, JSON, YAML, and reStructuredText are extracted as UTF-8 text. Other
|
|
94
|
+
formats—including PDF, DOCX, XLSX, and images—are still preserved exactly and recorded with a
|
|
95
|
+
clear unsupported-extraction status. Optional binary-format extractors are future work.
|
|
96
|
+
|
|
97
|
+
See `docs/REQUIREMENTS_MANAGEMENT.md` for the file contract and safety behavior.
|
|
98
|
+
|
|
99
|
+
## Runtime state and recovery
|
|
100
|
+
|
|
101
|
+
Initialization creates `.agentic/database/agentic.db` as the transactional source of truth,
|
|
102
|
+
inspection snapshots under `.agentic/state/`, a JSONL event history, and checkpoint storage.
|
|
103
|
+
Pause and stop persist checkpoints. Resume verifies checkpoint integrity and restores the
|
|
104
|
+
checkpoint stage instead of trusting potentially inconsistent conversational context or snapshot
|
|
105
|
+
files. Mandatory workflow approval stages cannot advance until approval is recorded.
|
|
106
|
+
|
|
107
|
+
## IDE configuration
|
|
108
|
+
|
|
109
|
+
ADF generates root `AGENTS.md`, a shared command skill under
|
|
110
|
+
`.agents/skills/agentic-commands/`, and Antigravity rules under `.agents/rules/`. The Codex adapter
|
|
111
|
+
uses the documented root instructions and repository-local skill surfaces. The `.codex/agents/`
|
|
112
|
+
directory contains an informational compatibility note; ADF does not claim an undocumented
|
|
113
|
+
custom-agent file format is automatically discovered.
|
|
114
|
+
|
|
115
|
+
## Configuration
|
|
116
|
+
|
|
117
|
+
ADF configuration uses YAML and rejects unknown keys to catch mistakes early:
|
|
118
|
+
|
|
119
|
+
```yaml
|
|
120
|
+
schema_version: 1
|
|
121
|
+
project:
|
|
122
|
+
name: example-project
|
|
123
|
+
mode: auto
|
|
124
|
+
runtime:
|
|
125
|
+
directory: .agentic
|
|
126
|
+
log_level: INFO
|
|
127
|
+
ide:
|
|
128
|
+
enabled:
|
|
129
|
+
- codex
|
|
130
|
+
policies:
|
|
131
|
+
allow_network: false
|
|
132
|
+
allow_destructive_operations: false
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Runtime directories must be project-relative and cannot contain parent-directory traversal.
|
|
136
|
+
|
|
137
|
+
## Logging
|
|
138
|
+
|
|
139
|
+
`configure_logging()` sets up readable console output and can additionally write a JSONL
|
|
140
|
+
event stream. Reconfiguration is idempotent and only replaces handlers managed by ADF.
|
|
141
|
+
|
|
142
|
+
See `docs/IMPLEMENTATION_PLAN.md` and `docs/IMPLEMENTATION_PROGRESS.md` for scope and status. The
|
|
143
|
+
maintainer release procedure is documented in `docs/PYPI_RELEASE.md`.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Release acceptance report
|
|
2
|
+
|
|
3
|
+
Date: 2026-11-02
|
|
4
|
+
|
|
5
|
+
## Verdict
|
|
6
|
+
|
|
7
|
+
The repository passes the local release gates for the `agentic-development-framework` 0.1.0
|
|
8
|
+
alpha release. No package was uploaded, no tag was created, and no remote repository state was
|
|
9
|
+
changed. The remaining work is maintainer review plus the external GitHub environment and PyPI
|
|
10
|
+
Trusted Publisher configuration documented in `PYPI_RELEASE.md`.
|
|
11
|
+
|
|
12
|
+
This verdict covers the functionality represented by the package and README. Unfinished items in
|
|
13
|
+
the broader framework roadmap remain explicitly marked incomplete in `IMPLEMENTATION_PROGRESS.md`.
|
|
14
|
+
|
|
15
|
+
## Artifacts and metadata
|
|
16
|
+
|
|
17
|
+
- Python used for local verification: 3.14.4
|
|
18
|
+
- Wheel: `agentic_development_framework-0.1.0-py3-none-any.whl` (31,613 bytes, 26 entries)
|
|
19
|
+
- Wheel SHA-256: `ed08bb8b3c408c43461da56a37481374f628acea1c73d8c110c32e8930e91394`
|
|
20
|
+
- Source distribution: `agentic_development_framework-0.1.0.tar.gz` (51 entries)
|
|
21
|
+
- Distribution/import/command: `agentic-development-framework` / `agentic_framework` / `adt`
|
|
22
|
+
- Version/Python: `0.1.0` / `>=3.11`
|
|
23
|
+
- Build backend: Hatchling 1.26 through 1.31, producing Core Metadata 2.4
|
|
24
|
+
- License: MIT (SPDX expression and packaged license file)
|
|
25
|
+
|
|
26
|
+
The wheel contains every Python module and the runtime command skill at
|
|
27
|
+
`agentic_framework/templates/skills/agentic-commands/SKILL.md`. Runtime YAML, policy, workflow,
|
|
28
|
+
agent-registry, Codex, and Antigravity files are deterministically generated from packaged Python
|
|
29
|
+
code. The source distribution contains source, tests, release scripts, documentation, changelog,
|
|
30
|
+
license, README, and build metadata.
|
|
31
|
+
|
|
32
|
+
Neither archive contains local `.agentic` state, SQLite databases, `.env` files, virtual
|
|
33
|
+
environments, caches, Git data, or nested build artifacts.
|
|
34
|
+
|
|
35
|
+
## Passed checks
|
|
36
|
+
|
|
37
|
+
- `ruff check .`: passed.
|
|
38
|
+
- Repository pytest suite: 58 passed with 90.65% branch-aware coverage.
|
|
39
|
+
- The same 58 tests imported the non-editable installed wheel from a disposable environment and
|
|
40
|
+
passed with 90.65% coverage.
|
|
41
|
+
- `python -m build`: built the wheel and source distribution through isolated environments.
|
|
42
|
+
- `python -m twine check dist/*`: both artifacts passed.
|
|
43
|
+
- Editor diagnostics for changed Python, TOML, and workflow files: none.
|
|
44
|
+
- Wheel and source-distribution member inspection: passed.
|
|
45
|
+
- Secret, database, local-state, cache, virtual-environment, and nested-build exclusion scan:
|
|
46
|
+
passed.
|
|
47
|
+
|
|
48
|
+
## Clean-install acceptance
|
|
49
|
+
|
|
50
|
+
Both the wheel and source distribution were separately installed into disposable, non-editable
|
|
51
|
+
virtual environments outside the repository. Each artifact passed:
|
|
52
|
+
|
|
53
|
+
- `adt --help`, `adt --version`, and `python -m agentic_framework --help`;
|
|
54
|
+
- valid generated configuration validation;
|
|
55
|
+
- initialization of a completely empty project;
|
|
56
|
+
- initialization of a representative existing Django + React project;
|
|
57
|
+
- Codex instructions, command skill, Antigravity rules, workflow, policies, and eleven-agent
|
|
58
|
+
registry generation;
|
|
59
|
+
- SQLite schema and expected runtime-state generation;
|
|
60
|
+
- a second initialization with zero newly created files;
|
|
61
|
+
- preservation of a conflicting existing `AGENTS.md` and creation of a proposal;
|
|
62
|
+
- two requirements ingestions, immutable versions, comparison, and impact-report generation; and
|
|
63
|
+
- start, continue, pause, resume, stop, and recovery across CLI processes.
|
|
64
|
+
|
|
65
|
+
These projects lived under operating-system temporary directories and had no access to package
|
|
66
|
+
files through the repository source tree.
|
|
67
|
+
|
|
68
|
+
## Release automation
|
|
69
|
+
|
|
70
|
+
Normal CI runs lint, coverage-enforced tests on Python 3.11, 3.12, and 3.13, builds both artifacts,
|
|
71
|
+
validates them with Twine, runs installed-wheel tests, exercises wheel and source-distribution
|
|
72
|
+
acceptance, and uploads the artifacts.
|
|
73
|
+
|
|
74
|
+
The separate publish workflow triggers only for pushed `v*` tags. Its publish job depends on all
|
|
75
|
+
test and build gates, uses the protected `pypi` GitHub environment, grants `id-token: write` only
|
|
76
|
+
to that job, downloads the already-tested artifacts, and invokes
|
|
77
|
+
`pypa/gh-action-pypi-publish@release/v1` without a token or password.
|
|
78
|
+
|
|
79
|
+
## Issue fixed during packaging review
|
|
80
|
+
|
|
81
|
+
Hatchling 1.32 changed its default to Core Metadata 2.5, which Twine 6.2 rejects. The build-system
|
|
82
|
+
requirement is intentionally constrained to `hatchling>=1.26,<1.32`; Hatchling 1.31 produces Core
|
|
83
|
+
Metadata 2.4, preserves SPDX license metadata, and passes Twine. This can be relaxed after the
|
|
84
|
+
release toolchain supports Metadata 2.5.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Implementation plan
|
|
2
|
+
|
|
3
|
+
The framework will be delivered in the ten phases defined by the product specification.
|
|
4
|
+
Each phase depends on passing verification for the preceding phase.
|
|
5
|
+
|
|
6
|
+
1. **Foundation** — package metadata, source layout, CLI entry point, validated configuration,
|
|
7
|
+
logging, repository guidance, and unit tests.
|
|
8
|
+
2. **Project initialization** — safe and idempotent project discovery and file generation.
|
|
9
|
+
3. **Runtime and persistence** — SQLite state, repositories, events, checkpoints, and snapshots.
|
|
10
|
+
4. **Command system** — shared registry and lifecycle commands for CLI and chat adapters.
|
|
11
|
+
5. **Requirements management** — immutable source versions, extraction boundaries, comparison,
|
|
12
|
+
impact reporting, and traceability.
|
|
13
|
+
6. **Agent and workflow system** — canonical contracts, configurable stages, dependencies,
|
|
14
|
+
approval gates, and sequential execution fallback.
|
|
15
|
+
7. **IDE adapters** — verified Codex, Antigravity, and VS Code configuration generators.
|
|
16
|
+
8. **Engineering integrations** — safe Git wrapper, Docker detection/templates, CI templates,
|
|
17
|
+
and documentation maintenance.
|
|
18
|
+
9. **Existing project and design workflows** — repository analysis, Figma boundary, prototype
|
|
19
|
+
generation workflow, and implementation handoff.
|
|
20
|
+
10. **Acceptance and release** — end-to-end verification, security review, package builds,
|
|
21
|
+
installation test, example project, and release documentation.
|
|
22
|
+
|
|
23
|
+
## Phase gates
|
|
24
|
+
|
|
25
|
+
At the end of every phase, run its tests and static checks, update progress documentation, and
|
|
26
|
+
record remaining work. A later phase must not start while current-phase verification is failing.
|
|
27
|
+
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Implementation progress
|
|
2
|
+
|
|
3
|
+
## Phase 1 — Foundation
|
|
4
|
+
|
|
5
|
+
Status: complete (2026-11-02)
|
|
6
|
+
|
|
7
|
+
Planned deliverables:
|
|
8
|
+
|
|
9
|
+
- [x] Repository metadata and packaging configuration
|
|
10
|
+
- [x] Python source package and CLI entry points
|
|
11
|
+
- [x] YAML configuration models and validation
|
|
12
|
+
- [x] Console and JSONL event logging
|
|
13
|
+
- [x] Repository agent guidance
|
|
14
|
+
- [x] Focused unit tests
|
|
15
|
+
- [x] Ruff verification passes
|
|
16
|
+
- [x] Pytest suite passes (15 tests, 90.81% branch-aware coverage)
|
|
17
|
+
- [x] Editable installation, wheel build, and both CLI entry points are verified
|
|
18
|
+
|
|
19
|
+
Verification environment: Python 3.14.4.
|
|
20
|
+
|
|
21
|
+
Phase 1 review (2026-11-02): package boundaries, configuration safety, logging handler
|
|
22
|
+
ownership, CLI error handling, and tests were reviewed. No blocking defects were found; the
|
|
23
|
+
original Phase 1 gate was rerun successfully before Phase 2 work began.
|
|
24
|
+
|
|
25
|
+
## Phase 2 — Project initialization
|
|
26
|
+
|
|
27
|
+
Status: complete (2026-11-02)
|
|
28
|
+
|
|
29
|
+
Planned deliverables:
|
|
30
|
+
|
|
31
|
+
- [x] `python -m agentic_framework init` and `adt init`
|
|
32
|
+
- [x] New and existing project detection
|
|
33
|
+
- [x] Git repository detection and optional safe initialization
|
|
34
|
+
- [x] Common technology and package-manager detection
|
|
35
|
+
- [x] Required project directory generation
|
|
36
|
+
- [x] Safe file conflict proposals
|
|
37
|
+
- [x] Deterministic initialization report
|
|
38
|
+
- [x] Repeatable initialization that preserves project files
|
|
39
|
+
- [x] Unit and acceptance tests
|
|
40
|
+
- [x] Ruff verification passes
|
|
41
|
+
- [x] Full pytest suite passes (30 tests, 91.46% branch-aware coverage)
|
|
42
|
+
- [x] Wheel build and two-run CLI/module smoke checks pass
|
|
43
|
+
|
|
44
|
+
Phase 2 deliberately creates the directory and configuration foundation without creating
|
|
45
|
+
placeholder SQLite state, workflow state, canonical agent definitions, or IDE adapter files.
|
|
46
|
+
Those remain owned by Phases 3, 6, and 7 respectively.
|
|
47
|
+
|
|
48
|
+
## Phase 5 — Requirements management
|
|
49
|
+
|
|
50
|
+
Status: complete for the requested standalone capability (2026-11-02)
|
|
51
|
+
|
|
52
|
+
This capability was explicitly requested before Phases 3 and 4. It remains independent of the
|
|
53
|
+
future SQLite runtime and command registry.
|
|
54
|
+
|
|
55
|
+
- [x] Recursive multi-file inbox inventory
|
|
56
|
+
- [x] SHA-256 hashing and byte-for-byte source preservation
|
|
57
|
+
- [x] Atomic immutable version publication
|
|
58
|
+
- [x] Existing-version integrity validation
|
|
59
|
+
- [x] Hash-based duplicate submission detection
|
|
60
|
+
- [x] UTF-8 text extraction boundary with explicit unsupported/failed statuses
|
|
61
|
+
- [x] `REQ-NNN` parsing, conflict detection, and initial traceability records
|
|
62
|
+
- [x] Added, modified, removed, and unchanged comparison with the previous version
|
|
63
|
+
- [x] Human-readable impact report
|
|
64
|
+
- [x] Concurrent-ingestion lock and symbolic-link rejection
|
|
65
|
+
- [x] CLI entry point and actionable expected-error handling
|
|
66
|
+
- [x] Unit, integration, and acceptance tests
|
|
67
|
+
- [x] Ruff verification passes
|
|
68
|
+
- [x] Full suite passes (45 tests, 92.22% branch-aware coverage)
|
|
69
|
+
|
|
70
|
+
## Phase 3 — Runtime and persistence
|
|
71
|
+
|
|
72
|
+
Status: core acceptance scope complete (2026-11-02)
|
|
73
|
+
|
|
74
|
+
- [x] SQLite schema and idempotent initialization
|
|
75
|
+
- [x] Persistent workflow, task, approval, checkpoint, and event tables
|
|
76
|
+
- [x] Workflow, task, and execution JSON snapshots
|
|
77
|
+
- [x] JSONL event history
|
|
78
|
+
- [x] Integrity-checked pause/stop checkpoints
|
|
79
|
+
- [x] Cross-process recovery from the verified checkpoint stage
|
|
80
|
+
|
|
81
|
+
## Phase 4 — Command system
|
|
82
|
+
|
|
83
|
+
Status: lifecycle acceptance scope complete (2026-11-02)
|
|
84
|
+
|
|
85
|
+
- [x] Central command registry
|
|
86
|
+
- [x] Start, status, pause, resume, continue, stop, and help
|
|
87
|
+
- [x] Review, approve, revise, requirements, and tasks
|
|
88
|
+
- [x] Expected failures return actionable errors without tracebacks
|
|
89
|
+
|
|
90
|
+
## Phase 6 — Agent and workflow system
|
|
91
|
+
|
|
92
|
+
Status: configuration foundation complete; execution remains incomplete
|
|
93
|
+
|
|
94
|
+
- [x] Canonical configurable lifecycle with approval metadata
|
|
95
|
+
- [x] Eleven canonical agent definitions and safety fields
|
|
96
|
+
- [x] Approval-gate enforcement
|
|
97
|
+
- [ ] Task dependencies and genuine sequential specialist execution
|
|
98
|
+
|
|
99
|
+
## Phase 7 — IDE adapters
|
|
100
|
+
|
|
101
|
+
Status: Codex and Antigravity acceptance scope complete; VS Code remains incomplete
|
|
102
|
+
|
|
103
|
+
- [x] Root Codex `AGENTS.md`
|
|
104
|
+
- [x] Validated repository-local Codex command skill
|
|
105
|
+
- [x] Antigravity rules and shared skill
|
|
106
|
+
- [x] Explicit documentation of unsupported/undocumented custom-agent discovery
|
|
107
|
+
- [ ] VS Code agent-environment generation and validation
|
|
108
|
+
|
|
109
|
+
## Release acceptance review
|
|
110
|
+
|
|
111
|
+
Status: PyPI 0.1.0 release gates passed (2026-11-02)
|
|
112
|
+
|
|
113
|
+
- [x] Clean wheel- and source-distribution-installed new and Django + React projects
|
|
114
|
+
- [x] Idempotent actual initialization command
|
|
115
|
+
- [x] Existing-file conflict preservation and proposal generation
|
|
116
|
+
- [x] Codex and Antigravity configuration validation
|
|
117
|
+
- [x] Requirements version and impact-report workflow
|
|
118
|
+
- [x] State database, commands, approval gates, and cross-process recovery
|
|
119
|
+
- [x] Wheel runtime resource and source-distribution content inspection
|
|
120
|
+
- [x] Twine metadata and README validation
|
|
121
|
+
- [x] Full source and installed-wheel suites pass (58 tests, 90.65% branch-aware coverage)
|
|
122
|
+
- [x] Python 3.11, 3.12, and 3.13 CI matrix configured
|
|
123
|
+
- [x] Tag-only PyPI OIDC Trusted Publishing configured
|
|
124
|
+
- [x] Detailed evidence recorded in `docs/ACCEPTANCE_REPORT.md`
|
|
125
|
+
|
|
126
|
+
## Remaining phases
|
|
127
|
+
|
|
128
|
+
Phase 8, Phase 9, the VS Code portion of Phase 7, and the execution portion of Phase 6 remain on
|
|
129
|
+
the broader framework roadmap. They are not represented as implemented in the 0.1.0 alpha release;
|
|
130
|
+
their scope and dependencies are documented in `docs/IMPLEMENTATION_PLAN.md`.
|
|
131
|
+
|