Violin
4c40ebb260
Merge P0 release and CI hardening
2026-07-13 08:53:57 +01:00
Violin
a9130fe02c
Harden plugin release checks and CI
2026-07-13 08:53:57 +01:00
Violin
e7d76785dd
Merge P0 concurrent state safety
2026-07-13 08:49:36 +01:00
Violin
e84de38943
Serialise concurrent guard state transitions
2026-07-13 08:49:36 +01:00
Violin
16f04068f6
Merge P0 batch integrity
2026-07-13 08:45:45 +01:00
Violin
98b4d8ed7d
Bind sync batches to captured PTT tasks
2026-07-13 08:45:44 +01:00
Violin
683f393ac7
Merge P0 PTT hypothesis phase enforcement
2026-07-13 08:41:03 +01:00
Violin
ac5848a85a
Enforce PTT phase and hypothesis relevance
2026-07-13 08:41:03 +01:00
Violin
bcc57fe534
Merge P0 scope authorization
2026-07-13 08:36:02 +01:00
Violin
cdae366bdc
Enforce scope authorization and exclusions
2026-07-13 08:36:02 +01:00
Violin
f5c6015c83
Merge P0 sync credit enforcement
2026-07-13 08:30:17 +01:00
Violin
a2c551ef59
Fix bounded sync credit enforcement
2026-07-13 08:30:07 +01:00
Violin
f29b79ac20
Merge violin guard release into dev
2026-07-13 08:28:06 +01:00
Violin
8884e6956f
P1-hyp: enforce out-of-scope target rejection on hypothesis write
...
update_hypothesis silently skipped the scope check because it called
validate_hypothesis_record without forwarding in_scope_hosts, so an
out-of-scope target was written to the board. Thread in_scope_hosts
through so both the direct API and handle_record_hypothesis reject
out-of-scope targets fail-closed (verified ad-hoc, 7/7).
2026-07-12 21:05:53 +01:00
Violin
ea7e094528
Remediate audit P0/P1 findings; migrate tests to green
...
- state.py: fcntl/msvcrt file locking, reservation+finalization, history
verification, remove dead subprocess bridges (p1-lock)
- hypotheses.py: enforce canonical status, phase/host/service/port match,
reject unrelated hypotheses (p1-hyp)
- tools.py/__init__.py: retain kwargs (task_id), lifecycle hooks wired
(REGISTERED_TOOLS + no-op-then-active hooks) (p1-life)
- Migrate tests from tests/*.py to tests/guard + tests/pentest_docs; align
to actual API (handle_target returns ips[0], handle_exec_burst fail-closed,
PTT self-certify uses real batch_id, post-exploitation requires hypothesis)
- scoping.md: add checkpoint.json continuity-artifact drift note
- pyproject.toml: v1.2.0, per-file-ignores for tests/scripts (E402/S101)
- Add .pytest-tmp-plugin/ to .gitignore
64 passed; ruff clean.
2026-07-12 20:57:55 +01:00
Violin
48b8abd292
Audit pentest skill docs against guard surface
2026-07-12 17:18:49 +01:00
Violin
f2f95dd1e8
Remove obsolete manual engagement bootstrap
2026-07-12 17:11:57 +01:00
Violin
eae934bd5b
Add CTF bootstrap and repair guard CLI docs
2026-07-12 17:09:00 +01:00
Violin
68a3db3a89
Remove session search cross-references
2026-07-12 17:00:44 +01:00
Violin
570eaf1605
Make guard test suite green and explicit in CI
2026-07-12 16:52:53 +01:00
Violin
56aec13ff1
Remove stale history tool references
2026-07-12 16:47:32 +01:00
Violin
426e7c4817
Align guard tests with plugin contract
2026-07-12 16:35:29 +01:00
Violin
8d8fb81ffb
Consolidate Violin Guard into Hermes plugin
2026-07-12 16:00:16 +01:00
Violin
5030b32d3f
fix first command history gate
2026-07-12 09:57:02 +01:00
Violin
283f2683a9
feat: improve guard and workflow reliability
2026-07-12 09:39:55 +01:00
Violin
3d821d6e13
v1.1.0: guarded pentest workflow
v1.1.0
2026-07-12 09:39:55 +01:00
Violin
262b221205
v1.0.0: initial release
v1.0.0
2026-07-12 09:39:55 +01:00