agentmandate 0.3.1__tar.gz → 0.3.2__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.
- {agentmandate-0.3.1 → agentmandate-0.3.2}/CHANGELOG.md +11 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/PKG-INFO +7 -3
- {agentmandate-0.3.1 → agentmandate-0.3.2}/README.md +6 -2
- {agentmandate-0.3.1 → agentmandate-0.3.2}/ROADMAP.md +36 -2
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/__init__.py +1 -1
- {agentmandate-0.3.1 → agentmandate-0.3.2}/pyproject.toml +1 -1
- {agentmandate-0.3.1 → agentmandate-0.3.2}/.github/workflows/ci.yml +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/.github/workflows/release.yml +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/.gitignore +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/CONTRIBUTING.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/DESIGN.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/LICENSE +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/RELEASING.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/SECURITY.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/STABILITY.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/cli.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/diff.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/lint.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/manifest.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/obligations.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/py.typed +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/reach.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/scan.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/agentmandate/verify.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/docs/assets/authority-path.svg +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/docs/manifest.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/docs/test-obligations.md +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/dispute-resolver-sod.yaml +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/dispute-resolver-v2.yaml +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/dispute-resolver.yaml +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/mcp-tools.json +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/observed-calls.jsonl +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/examples/reviewed-obligations.json +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_cli.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_diff.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_lint.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_manifest.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_obligations.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_reach.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_scan.py +0 -0
- {agentmandate-0.3.1 → agentmandate-0.3.2}/tests/test_verify.py +0 -0
|
@@ -6,6 +6,17 @@ All notable changes to this project are documented here. The format follows
|
|
|
6
6
|
|
|
7
7
|
## Unreleased
|
|
8
8
|
|
|
9
|
+
## 0.3.2 - 2026-07-28
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- The README scopes every finding to permitted reachability under the reviewed
|
|
14
|
+
manifest and bounded abstraction, rather than observed model behaviour or
|
|
15
|
+
undeclared downstream enforcement.
|
|
16
|
+
- The roadmap makes external tool-graph validation a prerequisite for model
|
|
17
|
+
growth, then ranks bounded cardinality, reviewed resource relationships, and
|
|
18
|
+
non-monetary effect budgets as evidence-dependent candidates.
|
|
19
|
+
|
|
9
20
|
## 0.3.1 - 2026-07-28
|
|
10
21
|
|
|
11
22
|
### Changed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentmandate
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Compound-path and cross-release analysis of what an AI agent is permitted to do
|
|
5
5
|
Project-URL: Homepage, https://github.com/mrwersa/agentmandate
|
|
6
6
|
Project-URL: Repository, https://github.com/mrwersa/agentmandate
|
|
@@ -64,7 +64,7 @@ whole run is capped at 500 GBP. Release 2 adds one read-only tool:
|
|
|
64
64
|
|
|
65
65
|
That tool spends nothing. It does, however, let the agent get hold of more
|
|
66
66
|
cases, and the 500 GBP cap is measured *per case*. Two separately valid refunds
|
|
67
|
-
become
|
|
67
|
+
become reachable under the manifest, so reachable extraction doubles to 1,000 GBP
|
|
68
68
|
while every individual call still looks permitted.
|
|
69
69
|
|
|
70
70
|

|
|
@@ -269,6 +269,10 @@ The `lint` command deliberately overlaps the scanners above. A tool that reporte
|
|
|
269
269
|
|
|
270
270
|
## Scope
|
|
271
271
|
|
|
272
|
+
Read every finding as **permitted by the reviewed manifest within this bounded
|
|
273
|
+
abstraction**. It is not proof that the model will choose the path or that an
|
|
274
|
+
undeclared downstream invariant will accept it.
|
|
275
|
+
|
|
272
276
|
What this does not do, on purpose:
|
|
273
277
|
|
|
274
278
|
- **No enforcement.** No proxy, no runtime interception, no blocking.
|
|
@@ -300,7 +304,7 @@ ruff check .
|
|
|
300
304
|
|
|
301
305
|
## Status
|
|
302
306
|
|
|
303
|
-
Alpha, version 0.3.
|
|
307
|
+
Alpha, version 0.3.2. The authority model is the part most likely to change,
|
|
304
308
|
because it has not yet been pointed at enough real tool graphs to know where it
|
|
305
309
|
is too coarse. Issues describing a graph it models badly are the most useful
|
|
306
310
|
thing you can file.
|
|
@@ -30,7 +30,7 @@ whole run is capped at 500 GBP. Release 2 adds one read-only tool:
|
|
|
30
30
|
|
|
31
31
|
That tool spends nothing. It does, however, let the agent get hold of more
|
|
32
32
|
cases, and the 500 GBP cap is measured *per case*. Two separately valid refunds
|
|
33
|
-
become
|
|
33
|
+
become reachable under the manifest, so reachable extraction doubles to 1,000 GBP
|
|
34
34
|
while every individual call still looks permitted.
|
|
35
35
|
|
|
36
36
|

|
|
@@ -235,6 +235,10 @@ The `lint` command deliberately overlaps the scanners above. A tool that reporte
|
|
|
235
235
|
|
|
236
236
|
## Scope
|
|
237
237
|
|
|
238
|
+
Read every finding as **permitted by the reviewed manifest within this bounded
|
|
239
|
+
abstraction**. It is not proof that the model will choose the path or that an
|
|
240
|
+
undeclared downstream invariant will accept it.
|
|
241
|
+
|
|
238
242
|
What this does not do, on purpose:
|
|
239
243
|
|
|
240
244
|
- **No enforcement.** No proxy, no runtime interception, no blocking.
|
|
@@ -266,7 +270,7 @@ ruff check .
|
|
|
266
270
|
|
|
267
271
|
## Status
|
|
268
272
|
|
|
269
|
-
Alpha, version 0.3.
|
|
273
|
+
Alpha, version 0.3.2. The authority model is the part most likely to change,
|
|
270
274
|
because it has not yet been pointed at enough real tool graphs to know where it
|
|
271
275
|
is too coarse. Issues describing a graph it models badly are the most useful
|
|
272
276
|
thing you can file.
|
|
@@ -7,15 +7,16 @@ runtime proxy or general agent-security scanner.
|
|
|
7
7
|
|
|
8
8
|
This is direction, not a release promise.
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## Current foundation: trustworthy authority analysis
|
|
11
11
|
|
|
12
|
-
Version 0.2 makes the existing gate dependable:
|
|
12
|
+
Version 0.3.2 makes the existing gate dependable:
|
|
13
13
|
|
|
14
14
|
- fail-closed replay when control evidence is missing
|
|
15
15
|
- tool-contract and run-limit comparison across releases
|
|
16
16
|
- one search depth on both sides of a diff
|
|
17
17
|
- safe ingestion of untrusted MCP catalogues
|
|
18
18
|
- explicit handling of incomparable currencies and different agents
|
|
19
|
+
- reviewed test obligations reconciled against current reachable authority
|
|
19
20
|
|
|
20
21
|
## Next: easier adoption
|
|
21
22
|
|
|
@@ -35,6 +36,39 @@ new value remains the authority graph and its counterexamples.
|
|
|
35
36
|
|
|
36
37
|
## Then: widen the model where evidence demands it
|
|
37
38
|
|
|
39
|
+
Do not implement every candidate below in parallel. First collect tool graphs
|
|
40
|
+
from independent users and identify which abstraction forces them to distort a
|
|
41
|
+
real control. Expressiveness increases the search state and the annotation
|
|
42
|
+
burden, so a feature needs a concrete graph and counterexample before it earns
|
|
43
|
+
that cost.
|
|
44
|
+
|
|
45
|
+
### Bounded scope cardinality
|
|
46
|
+
|
|
47
|
+
The current `unbounded` flag distinguishes one binding from an unlimited
|
|
48
|
+
source. Real tools often expose a finite collection, such as at most ten cases
|
|
49
|
+
or one refund per transaction. A reviewed `max_bindings` bound is the first
|
|
50
|
+
candidate extension because it sharpens the existing scope model without
|
|
51
|
+
turning the manifest into a full application specification.
|
|
52
|
+
|
|
53
|
+
Per-customer or relational limits come later. They require resource identity
|
|
54
|
+
and relationships, not another integer placed beside the current type count.
|
|
55
|
+
|
|
56
|
+
### Resource relationships
|
|
57
|
+
|
|
58
|
+
Scope counts deliberately forget which customer owns a case or whether two
|
|
59
|
+
bindings refer to the same object. If real graphs show that this creates false
|
|
60
|
+
or missed paths, add a small reviewed relation vocabulary and preserve binding
|
|
61
|
+
provenance through tool transitions. Do not jump directly to arbitrary
|
|
62
|
+
preconditions and postconditions.
|
|
63
|
+
|
|
64
|
+
### Non-monetary effect budgets
|
|
65
|
+
|
|
66
|
+
Some authority limits count irreversible actions rather than currency, such as
|
|
67
|
+
accounts closed, credentials rotated, or external messages sent. Generalise
|
|
68
|
+
the current cumulative-value mechanism only when those limits share a clear,
|
|
69
|
+
reviewable accumulation rule. Confidentiality and data flow remain a separate
|
|
70
|
+
model rather than being disguised as a numeric budget.
|
|
71
|
+
|
|
38
72
|
### Data-flow reachability
|
|
39
73
|
|
|
40
74
|
Add reviewed source, transform, and sink labels so the analyser can detect a
|
|
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
|
|
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
|
|
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
|