Agentic framework for integration, end2end, multiuserinteraction, security testing based on usecases.
Two decisions taken with the operator: stdlib HTML driver instead of Playwright (F-0004), and a deterministic discovery runtime instead of a live model. Both sit behind interfaces so the alternatives drop in later. - html.py: stdlib DOM parse and query - agentic.py: DiscoveryRuntime (agentic arm, ignores data-td by construction) and RecordedSelectorRuntime (control arm, uses the strongest identifier the page offers) - browser.py: per-actor sessions over real HTTP, constructed per call so no actor inherits another's connection state - cost/nondeterminism metrics recorded from the first run F-0005 (CONCEPT_DRIFT): the H-001 result is a narrowing. Where test ids are preserved, discovery 9/9 and recorded selectors 9/9 - the semantic action buys nothing. Where they are dropped, discovery 2/3 and recorded 0/3. The concept model presents semantic actions as generally superior; the evidence says conditionally superior. M21 and M22 added mid-task: the deciding side of the axis was N=1. M22 (field names renamed) defeats the heuristic and is the first concrete evidence that a live model would add capability, not just cost. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Assistant: claude-code Assistant-Model: opus Assistant-Process: 1629012@bnt-lap001 Assistant-Session: 78d4fb13-8a1e-474b-87a3-9b9261c49a39 |
||
|---|---|---|
| docs | ||
| history | ||
| lab | ||
| research | ||
| scenarios | ||
| src/testdriver | ||
| tests | ||
| workplans | ||
| .custodian-brief.md | ||
| .gitignore | ||
| .repo-classification.yaml | ||
| AGENTS.md | ||
| INTENT.md | ||
| pyproject.toml | ||
| README.md | ||
| SCOPE.md | ||
| WORK-RECORDS.md | ||
test-driver
Agentic framework for integration, end-to-end, multi-user interaction and security testing, driven by use cases.
Tests mature alongside the software they protect: fluid and agentic while
behaviour is changing, deterministic once it settles. See INTENT.md for the
thesis and SCOPE.md for boundaries.
Status: research prototype. The deterministic kernel runs; agentic
realization, adaptation classification and crystallization are not built yet.
Current work: workplans/TD-WP-0002-vertical-spike-crystallization.md.
Run
python3 -m pytest -q # the whole suite
python3 -m pytest -q tests/test_reference_scenario.py
No third-party dependencies. Python ≥ 3.11, pytest for the suite.
Layout
src/testdriver/ the kernel — intent, world, actions, drivers,
observers, oracles, evidence, runner
lab/ the system under test
scenarios/ reference scenarios
research/ hypotheses, experiments, findings, fitness map
docs/ concept model, improvement loop, milestones, design notes
history/ assessments and completed-work write-ups
Reading order
INTENT.md— the thesisdocs/TestDriverConceptModel.md— canonical concept setdocs/TestDriverClassificationDesign.md— why adaptation cannot normalize a defect, and where model judgment is and is not permitteddocs/TestDriverInitialMilestones.md— canonical milestones M0–M10