agentproof-sim 0.1.1__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.
- agentproof_sim-0.1.1/.github/ISSUE_TEMPLATE/bug_report.yml +54 -0
- agentproof_sim-0.1.1/.github/ISSUE_TEMPLATE/config.yml +5 -0
- agentproof_sim-0.1.1/.github/ISSUE_TEMPLATE/feature_request.yml +31 -0
- agentproof_sim-0.1.1/.github/dependabot.yml +10 -0
- agentproof_sim-0.1.1/.github/pull_request_template.md +27 -0
- agentproof_sim-0.1.1/.github/workflows/ci.yml +39 -0
- agentproof_sim-0.1.1/.github/workflows/release.yml +48 -0
- agentproof_sim-0.1.1/.gitignore +11 -0
- agentproof_sim-0.1.1/AGENTPROOF_CODEX_BUILD_SPEC.md +2447 -0
- agentproof_sim-0.1.1/CHANGELOG.md +23 -0
- agentproof_sim-0.1.1/CODE_OF_CONDUCT.md +4 -0
- agentproof_sim-0.1.1/CONTRIBUTING.md +15 -0
- agentproof_sim-0.1.1/IMPLEMENTATION_PLAN.md +26 -0
- agentproof_sim-0.1.1/LICENSE +18 -0
- agentproof_sim-0.1.1/PKG-INFO +407 -0
- agentproof_sim-0.1.1/README.md +360 -0
- agentproof_sim-0.1.1/RELEASE_VALIDATION.md +199 -0
- agentproof_sim-0.1.1/SECURITY.md +70 -0
- agentproof_sim-0.1.1/docs/adapters.md +10 -0
- agentproof_sim-0.1.1/docs/architecture.md +8 -0
- agentproof_sim-0.1.1/docs/concepts.md +9 -0
- agentproof_sim-0.1.1/docs/implementation-notes.md +12 -0
- agentproof_sim-0.1.1/docs/mutations.md +8 -0
- agentproof_sim-0.1.1/docs/production-readiness.md +120 -0
- agentproof_sim-0.1.1/docs/publishing.md +49 -0
- agentproof_sim-0.1.1/docs/real-project-evidence.md +80 -0
- agentproof_sim-0.1.1/docs/releases/v0.1.0.md +59 -0
- agentproof_sim-0.1.1/docs/releases/v0.1.1.md +42 -0
- agentproof_sim-0.1.1/docs/use-cases.md +119 -0
- agentproof_sim-0.1.1/examples/calendar_native/suite.py +73 -0
- agentproof_sim-0.1.1/examples/refund_langchain/suite.py +20 -0
- agentproof_sim-0.1.1/examples/refund_native/quickstart.py +17 -0
- agentproof_sim-0.1.1/examples/refund_native/suite.py +149 -0
- agentproof_sim-0.1.1/examples/refund_openai_agents/suite.py +43 -0
- agentproof_sim-0.1.1/pyproject.toml +84 -0
- agentproof_sim-0.1.1/real-project-matrix-results.json +326 -0
- agentproof_sim-0.1.1/real-project-validation-results.json +82 -0
- agentproof_sim-0.1.1/release-hardening-results.json +100 -0
- agentproof_sim-0.1.1/scripts/real_project_booking_smoke.py +278 -0
- agentproof_sim-0.1.1/scripts/real_project_matrix.py +908 -0
- agentproof_sim-0.1.1/scripts/release_hardening.py +517 -0
- agentproof_sim-0.1.1/src/agentproof/__init__.py +41 -0
- agentproof_sim-0.1.1/src/agentproof/adapters/__init__.py +14 -0
- agentproof_sim-0.1.1/src/agentproof/adapters/base.py +19 -0
- agentproof_sim-0.1.1/src/agentproof/adapters/langchain.py +95 -0
- agentproof_sim-0.1.1/src/agentproof/adapters/native.py +23 -0
- agentproof_sim-0.1.1/src/agentproof/adapters/openai_agents.py +62 -0
- agentproof_sim-0.1.1/src/agentproof/api.py +99 -0
- agentproof_sim-0.1.1/src/agentproof/cli.py +172 -0
- agentproof_sim-0.1.1/src/agentproof/core/clock.py +18 -0
- agentproof_sim-0.1.1/src/agentproof/core/effects.py +109 -0
- agentproof_sim-0.1.1/src/agentproof/core/events.py +63 -0
- agentproof_sim-0.1.1/src/agentproof/core/faults.py +294 -0
- agentproof_sim-0.1.1/src/agentproof/core/invariant.py +109 -0
- agentproof_sim-0.1.1/src/agentproof/core/redaction.py +32 -0
- agentproof_sim-0.1.1/src/agentproof/core/result.py +109 -0
- agentproof_sim-0.1.1/src/agentproof/core/runner.py +216 -0
- agentproof_sim-0.1.1/src/agentproof/core/scenario.py +13 -0
- agentproof_sim-0.1.1/src/agentproof/core/trace.py +58 -0
- agentproof_sim-0.1.1/src/agentproof/core/world.py +126 -0
- agentproof_sim-0.1.1/src/agentproof/invariants/__init__.py +21 -0
- agentproof_sim-0.1.1/src/agentproof/invariants/builtin.py +96 -0
- agentproof_sim-0.1.1/src/agentproof/invariants/temporal.py +5 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/__init__.py +61 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/base.py +57 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/duplication.py +15 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/ordering.py +10 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/state.py +15 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/timing.py +9 -0
- agentproof_sim-0.1.1/src/agentproof/mutations/tool_faults.py +58 -0
- agentproof_sim-0.1.1/src/agentproof/py.typed +1 -0
- agentproof_sim-0.1.1/src/agentproof/pytest_plugin.py +40 -0
- agentproof_sim-0.1.1/src/agentproof/replay/player.py +74 -0
- agentproof_sim-0.1.1/src/agentproof/replay/recorder.py +29 -0
- agentproof_sim-0.1.1/src/agentproof/replay/schema.py +24 -0
- agentproof_sim-0.1.1/src/agentproof/reporting/__init__.py +7 -0
- agentproof_sim-0.1.1/src/agentproof/reporting/console.py +34 -0
- agentproof_sim-0.1.1/src/agentproof/reporting/json_report.py +47 -0
- agentproof_sim-0.1.1/src/agentproof/reporting/junit.py +66 -0
- agentproof_sim-0.1.1/src/agentproof/tools/definition.py +26 -0
- agentproof_sim-0.1.1/src/agentproof/tools/invocation.py +11 -0
- agentproof_sim-0.1.1/src/agentproof/tools/registry.py +154 -0
- agentproof_sim-0.1.1/tests/conftest.py +34 -0
- agentproof_sim-0.1.1/tests/e2e/test_live_opt_in.py +18 -0
- agentproof_sim-0.1.1/tests/integration/test_adapters.py +109 -0
- agentproof_sim-0.1.1/tests/integration/test_cli.py +77 -0
- agentproof_sim-0.1.1/tests/integration/test_cli_inprocess.py +63 -0
- agentproof_sim-0.1.1/tests/integration/test_pytest_plugin.py +8 -0
- agentproof_sim-0.1.1/tests/integration/test_readme_examples.py +38 -0
- agentproof_sim-0.1.1/tests/integration/test_refund_acceptance.py +76 -0
- agentproof_sim-0.1.1/tests/integration/test_replay_and_reports.py +68 -0
- agentproof_sim-0.1.1/tests/unit/test_effects_world_invariants.py +153 -0
- agentproof_sim-0.1.1/tests/unit/test_misc_coverage.py +145 -0
- agentproof_sim-0.1.1/tests/unit/test_package_metadata.py +26 -0
- agentproof_sim-0.1.1/tests/unit/test_real_project_matrix_script.py +87 -0
- agentproof_sim-0.1.1/tests/unit/test_redaction.py +34 -0
- agentproof_sim-0.1.1/tests/unit/test_release_hardening_script.py +89 -0
- agentproof_sim-0.1.1/tests/unit/test_tool_faults.py +184 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
name: Bug Report
|
|
2
|
+
description: Report incorrect AgentProof behavior or a failing scenario.
|
|
3
|
+
title: "[Bug]: "
|
|
4
|
+
labels: ["bug"]
|
|
5
|
+
body:
|
|
6
|
+
- type: markdown
|
|
7
|
+
attributes:
|
|
8
|
+
value: |
|
|
9
|
+
Thanks for helping improve AgentProof.
|
|
10
|
+
|
|
11
|
+
Before attaching traces, replay files, JSON reports, or JUnit reports, remove secrets and sensitive business data.
|
|
12
|
+
- type: input
|
|
13
|
+
id: version
|
|
14
|
+
attributes:
|
|
15
|
+
label: AgentProof version or commit
|
|
16
|
+
placeholder: "0.1.1 or git SHA"
|
|
17
|
+
validations:
|
|
18
|
+
required: true
|
|
19
|
+
- type: textarea
|
|
20
|
+
id: problem
|
|
21
|
+
attributes:
|
|
22
|
+
label: What happened?
|
|
23
|
+
description: Describe the incorrect behavior, including the scenario and mutation if relevant.
|
|
24
|
+
validations:
|
|
25
|
+
required: true
|
|
26
|
+
- type: textarea
|
|
27
|
+
id: expected
|
|
28
|
+
attributes:
|
|
29
|
+
label: What did you expect?
|
|
30
|
+
validations:
|
|
31
|
+
required: true
|
|
32
|
+
- type: textarea
|
|
33
|
+
id: reproduce
|
|
34
|
+
attributes:
|
|
35
|
+
label: Minimal reproduction
|
|
36
|
+
description: Include commands, a small scenario, or a redacted replay artifact path.
|
|
37
|
+
render: shell
|
|
38
|
+
validations:
|
|
39
|
+
required: true
|
|
40
|
+
- type: textarea
|
|
41
|
+
id: validation
|
|
42
|
+
attributes:
|
|
43
|
+
label: Validation already run
|
|
44
|
+
description: Paste relevant output from pytest, agentproof CLI, or release-hardening checks.
|
|
45
|
+
render: shell
|
|
46
|
+
- type: checkboxes
|
|
47
|
+
id: safety
|
|
48
|
+
attributes:
|
|
49
|
+
label: Safety check
|
|
50
|
+
options:
|
|
51
|
+
- label: I have removed API keys, tokens, customer data, and sensitive production payloads from this report.
|
|
52
|
+
required: true
|
|
53
|
+
- label: This report does not require maintainers to call a real destructive external service.
|
|
54
|
+
required: true
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
name: Feature Request
|
|
2
|
+
description: Suggest a mutation, adapter, report format, or workflow improvement.
|
|
3
|
+
title: "[Feature]: "
|
|
4
|
+
labels: ["enhancement"]
|
|
5
|
+
body:
|
|
6
|
+
- type: textarea
|
|
7
|
+
id: use_case
|
|
8
|
+
attributes:
|
|
9
|
+
label: Real-world use case
|
|
10
|
+
description: What agent behavior or failure mode should AgentProof help test?
|
|
11
|
+
placeholder: "Example: prevent duplicate appointment bookings when a booking API times out after committing."
|
|
12
|
+
validations:
|
|
13
|
+
required: true
|
|
14
|
+
- type: textarea
|
|
15
|
+
id: proposed
|
|
16
|
+
attributes:
|
|
17
|
+
label: Proposed behavior
|
|
18
|
+
description: Describe the mutation, adapter, invariant helper, CLI option, or docs improvement.
|
|
19
|
+
validations:
|
|
20
|
+
required: true
|
|
21
|
+
- type: textarea
|
|
22
|
+
id: alternatives
|
|
23
|
+
attributes:
|
|
24
|
+
label: Alternatives considered
|
|
25
|
+
- type: checkboxes
|
|
26
|
+
id: implementation_truth
|
|
27
|
+
attributes:
|
|
28
|
+
label: Implementation expectations
|
|
29
|
+
options:
|
|
30
|
+
- label: If this is documented as supported, it should include real implementation coverage and tests.
|
|
31
|
+
required: true
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
## Summary
|
|
2
|
+
|
|
3
|
+
Describe what changed and why.
|
|
4
|
+
|
|
5
|
+
## Risk
|
|
6
|
+
|
|
7
|
+
Describe the behavior that could break, including any mutation, replay, report, or adapter boundary affected.
|
|
8
|
+
|
|
9
|
+
## Validation
|
|
10
|
+
|
|
11
|
+
- [ ] `ruff format --check .`
|
|
12
|
+
- [ ] `ruff check .`
|
|
13
|
+
- [ ] `mypy src/agentproof`
|
|
14
|
+
- [ ] `pytest -q`
|
|
15
|
+
- [ ] `python -m build`
|
|
16
|
+
- [ ] `twine check dist/*`
|
|
17
|
+
|
|
18
|
+
## Safety
|
|
19
|
+
|
|
20
|
+
- [ ] No API keys, tokens, customer data, or production payloads are committed.
|
|
21
|
+
- [ ] Tests do not call real destructive external services.
|
|
22
|
+
- [ ] New public claims are backed by implementation and tests.
|
|
23
|
+
- [ ] Live-provider behavior remains opt-in and is not required for deterministic CI.
|
|
24
|
+
|
|
25
|
+
## Notes
|
|
26
|
+
|
|
27
|
+
Add links to issues, replay artifacts, reports, or release validation notes when useful.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
pull_request:
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
test:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
strategy:
|
|
12
|
+
matrix:
|
|
13
|
+
python-version: ["3.11", "3.12", "3.13"]
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@v7
|
|
16
|
+
- uses: actions/setup-python@v7
|
|
17
|
+
with:
|
|
18
|
+
python-version: ${{ matrix.python-version }}
|
|
19
|
+
- name: Install
|
|
20
|
+
run: python -m pip install -e ".[dev]"
|
|
21
|
+
- name: Ruff format
|
|
22
|
+
run: ruff format --check .
|
|
23
|
+
- name: Ruff lint
|
|
24
|
+
run: ruff check .
|
|
25
|
+
- name: Type check
|
|
26
|
+
run: mypy src/agentproof
|
|
27
|
+
- name: Tests
|
|
28
|
+
run: pytest -q -m "not live"
|
|
29
|
+
- name: Build and check
|
|
30
|
+
if: matrix.python-version == '3.12'
|
|
31
|
+
run: |
|
|
32
|
+
python -m build
|
|
33
|
+
twine check dist/*
|
|
34
|
+
- name: Wheel smoke test
|
|
35
|
+
if: matrix.python-version == '3.12'
|
|
36
|
+
run: |
|
|
37
|
+
python -m venv /tmp/agentproof-wheel-smoke
|
|
38
|
+
/tmp/agentproof-wheel-smoke/bin/python -m pip install dist/*.whl
|
|
39
|
+
/tmp/agentproof-wheel-smoke/bin/agentproof mutations
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
inputs:
|
|
8
|
+
publish_to_pypi:
|
|
9
|
+
description: "Publish the built distribution to PyPI through Trusted Publishing"
|
|
10
|
+
required: true
|
|
11
|
+
type: boolean
|
|
12
|
+
default: false
|
|
13
|
+
|
|
14
|
+
permissions:
|
|
15
|
+
contents: read
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
build:
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@v7
|
|
22
|
+
- uses: actions/setup-python@v7
|
|
23
|
+
with:
|
|
24
|
+
python-version: "3.12"
|
|
25
|
+
- name: Build
|
|
26
|
+
run: |
|
|
27
|
+
python -m pip install build twine
|
|
28
|
+
python -m build
|
|
29
|
+
twine check dist/*
|
|
30
|
+
- uses: actions/upload-artifact@v7
|
|
31
|
+
with:
|
|
32
|
+
name: dist
|
|
33
|
+
path: dist/*
|
|
34
|
+
|
|
35
|
+
publish:
|
|
36
|
+
if: github.event_name == 'workflow_dispatch' && inputs.publish_to_pypi
|
|
37
|
+
needs: build
|
|
38
|
+
runs-on: ubuntu-latest
|
|
39
|
+
environment: pypi
|
|
40
|
+
permissions:
|
|
41
|
+
id-token: write
|
|
42
|
+
contents: read
|
|
43
|
+
steps:
|
|
44
|
+
- uses: actions/download-artifact@v8
|
|
45
|
+
with:
|
|
46
|
+
name: dist
|
|
47
|
+
path: dist
|
|
48
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|