pactkit-codex 4.1.0__tar.gz → 4.2.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.
- {pactkit_codex-4.1.0/src/pactkit_codex.egg-info → pactkit_codex-4.2.0}/PKG-INFO +2 -2
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/pyproject.toml +6 -2
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex/deployer.py +22 -9
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0/src/pactkit_codex.egg-info}/PKG-INFO +2 -2
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex.egg-info/requires.txt +1 -1
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/LICENSE +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/README.md +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/setup.cfg +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex/__init__.py +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex/declarations.py +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex/enforcement.py +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex.egg-info/SOURCES.txt +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex.egg-info/dependency_links.txt +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex.egg-info/entry_points.txt +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/src/pactkit_codex.egg-info/top_level.txt +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/tests/test_capability_contract.py +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/tests/test_host_body_snapshot.py +0 -0
- {pactkit_codex-4.1.0 → pactkit_codex-4.2.0}/tests/test_profile_contract.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pactkit-codex
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.2.0
|
|
4
4
|
Summary: PactKit adapter for OpenAI Codex CLI
|
|
5
5
|
Author: Slim
|
|
6
6
|
License: MIT
|
|
@@ -21,7 +21,7 @@ Classifier: Topic :: Software Development :: Quality Assurance
|
|
|
21
21
|
Requires-Python: >=3.10
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE
|
|
24
|
-
Requires-Dist: pactkit<4.
|
|
24
|
+
Requires-Dist: pactkit<4.3.0,>=4.2.0
|
|
25
25
|
Requires-Dist: tomli>=1.1.0; python_version < "3.11"
|
|
26
26
|
Dynamic: license-file
|
|
27
27
|
|
|
@@ -4,13 +4,17 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "pactkit-codex"
|
|
7
|
-
version = "4.
|
|
7
|
+
version = "4.2.0"
|
|
8
8
|
description = "PactKit adapter for OpenAI Codex CLI"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = {text = "MIT"}
|
|
11
11
|
requires-python = ">=3.10"
|
|
12
12
|
dependencies = [
|
|
13
|
-
|
|
13
|
+
# 2026-10-14: the project-level AGENTS.md write goes through
|
|
14
|
+
# `pactkit.managed_docs.upsert_managed_block`, which first ships in
|
|
15
|
+
# core 4.1.3. The previous floor (>=4.1.0) allowed a released-core
|
|
16
|
+
# combination whose deploy raises ImportError.
|
|
17
|
+
"pactkit>=4.2.0,<4.3.0",
|
|
14
18
|
"tomli>=1.1.0; python_version < '3.11'",
|
|
15
19
|
]
|
|
16
20
|
|
|
@@ -1016,7 +1016,14 @@ class CodexDeployer(DeployerBase):
|
|
|
1016
1016
|
|
|
1017
1017
|
@staticmethod
|
|
1018
1018
|
def generate_codex_project_files(project_root):
|
|
1019
|
-
"""Generate project-level AGENTS.md, .codex/AGENTS.local.md, and .codex/pactkit.yaml.
|
|
1019
|
+
"""Generate project-level AGENTS.md, .codex/AGENTS.local.md, and .codex/pactkit.yaml.
|
|
1020
|
+
|
|
1021
|
+
``AGENTS.md`` is merge-semantics (2026-10-14, STORY-010 AC1/AC4
|
|
1022
|
+
re-adjudicated): it carries the project's own rules, so only PactKit's
|
|
1023
|
+
marked region is ours. The whole-file rewrite and the title-based
|
|
1024
|
+
"migration" into ``AGENTS.local.md`` are gone — a matching title was
|
|
1025
|
+
never ownership proof, and both destroyed project rules.
|
|
1026
|
+
"""
|
|
1020
1027
|
if project_root.resolve() == Path.home().resolve():
|
|
1021
1028
|
return
|
|
1022
1029
|
|
|
@@ -1028,19 +1035,18 @@ class CodexDeployer(DeployerBase):
|
|
|
1028
1035
|
agents_md_path = project_root / "AGENTS.md"
|
|
1029
1036
|
local_md_path = codex_dir / "AGENTS.local.md"
|
|
1030
1037
|
|
|
1031
|
-
if agents_md_path.exists() and not local_md_path.exists():
|
|
1032
|
-
existing = agents_md_path.read_text()
|
|
1033
|
-
expected_first_line = f"# {project_name}"
|
|
1034
|
-
first_line = existing.split("\n", 1)[0].strip()
|
|
1035
|
-
if first_line != expected_first_line:
|
|
1036
|
-
atomic_write(local_md_path, existing)
|
|
1037
|
-
|
|
1038
1038
|
dev_commands = _STACK_DEV_COMMANDS.get(stack, _STACK_DEV_COMMANDS["unknown"])
|
|
1039
1039
|
content = _CODEX_PROJECT_AGENTS_MD.format(
|
|
1040
1040
|
project_name=project_name,
|
|
1041
1041
|
dev_commands=dev_commands,
|
|
1042
|
+
).rstrip("\n")
|
|
1043
|
+
|
|
1044
|
+
from pactkit.managed_docs import upsert_managed_block
|
|
1045
|
+
|
|
1046
|
+
upsert_managed_block(
|
|
1047
|
+
agents_md_path, content,
|
|
1048
|
+
ownership=(project_root, "AGENTS.md"), backup_root=codex_dir,
|
|
1042
1049
|
)
|
|
1043
|
-
atomic_write(agents_md_path, content)
|
|
1044
1050
|
|
|
1045
1051
|
if not local_md_path.exists():
|
|
1046
1052
|
atomic_write(local_md_path, _CODEX_LOCAL_AGENTS_MD)
|
|
@@ -1243,6 +1249,13 @@ Stop at the failing stage and report the evidence needed to resume in this
|
|
|
1243
1249
|
same session. Checkpoints are optional handover context; they never block a
|
|
1244
1250
|
later command or require a run ID.
|
|
1245
1251
|
|
|
1252
|
+
Handover notes are optional. When they help, retain the current objective and
|
|
1253
|
+
confirmed corrections, target worktree/branch/revision, completed work with
|
|
1254
|
+
evidence references, remaining gaps, and the next useful action. Omit unknowns,
|
|
1255
|
+
credentials, and chat transcripts. Authorization does not carry forward;
|
|
1256
|
+
re-check the current user's instruction. A missing handover never blocks work
|
|
1257
|
+
in this session.
|
|
1258
|
+
|
|
1246
1259
|
## Backlog mode
|
|
1247
1260
|
|
|
1248
1261
|
With empty `$ARGUMENTS`, inspect the board and run eligible Stories one at a
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pactkit-codex
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.2.0
|
|
4
4
|
Summary: PactKit adapter for OpenAI Codex CLI
|
|
5
5
|
Author: Slim
|
|
6
6
|
License: MIT
|
|
@@ -21,7 +21,7 @@ Classifier: Topic :: Software Development :: Quality Assurance
|
|
|
21
21
|
Requires-Python: >=3.10
|
|
22
22
|
Description-Content-Type: text/markdown
|
|
23
23
|
License-File: LICENSE
|
|
24
|
-
Requires-Dist: pactkit<4.
|
|
24
|
+
Requires-Dist: pactkit<4.3.0,>=4.2.0
|
|
25
25
|
Requires-Dist: tomli>=1.1.0; python_version < "3.11"
|
|
26
26
|
Dynamic: license-file
|
|
27
27
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|