You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: campaign workflow, pattern packs, provenance, and readiness gates
Ship the Unreleased v0.10 foundation without bumping the published version:
- Campaign.v1 with omv first/campaign init|list|show|seed (candidate-only seed)
- SourceRef.v1 and report provenance manifests for artifact integrity
- 14 PatternPack manifests, R/Lua registries, and omv eval runner
- Preflight hygiene: private .omv/ gitignore, clean npm pack, dashboard renderer
- Shared report-readiness helpers (isReportReady) used by doctor/review
- Maintainer docs aligned; keep local research state and OpenSpec scaffolding out of git
Copy file name to clipboardExpand all lines: CHANGELOG.md
+9-1Lines changed: 9 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,15 @@
2
2
3
3
## Unreleased
4
4
5
-
- Richer ThreatMap.v1 rendering: `omv findings show` now displays the full `source → transforms → sink` dataflow per path with per-path confidence, bypassable guards, and a summary line. Previously the renderer collapsed each path to a single `[source] -> [sink]` line, discarding transforms, confidence, and the summary block that the producer now writes.
5
+
### Planned for v0.10.0 — Campaign + evidence graph (draft)
6
+
7
+
Ship when release notes and `registry.yaml` / `package.json` versions are bumped together.
8
+
9
+
-**Campaign.v1 first-mile planning** — `omv campaign init|list|show|seed` and the `omv first` alias. Seeding creates conservative candidate Evidence only and never overwrites existing findings or creates proof artifacts.
10
+
-**SourceRef.v1 + report provenance** — `omv sources init|show|validate` and `omv report provenance` manifests that hash Evidence, reports, and available local dependencies. Missing manifests warn; stale confirmed manifests fail artifact checks.
-**ThreatMap rich render** — `omv findings show` prints full `source → transforms → sink` paths with confidence, bypassable guards, and summary (no longer collapses to a single source→sink line).
13
+
-**Readiness policy helpers** — `isReportReady` / `isSubmissionScoreReady` / `resolveDoctorNextAction` in `workflow.ts` as the shared report-readiness gate used by doctor and review; maintainer docs (`AGENTS.md`, `CLAUDE.md`, `SPEC.md` banner) aligned with the current tree.
6
14
7
15
## v0.9.0 - CLI command split and local findings dedup
Copy file name to clipboardExpand all lines: DEVELOPMENT.md
+44-3Lines changed: 44 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -190,21 +190,62 @@ Tradeoff:
190
190
191
191
The ledger is intentionally lightweight YAML, not a database or platform. That keeps the project easy to install and review, but it means deeper validation and rendering still need future deterministic helpers.
192
192
193
+
### Current iteration - Manifest-driven PatternPacks and evals
194
+
195
+
What changed:
196
+
197
+
- Added one PatternPack.v1 JSON manifest for every supported ecosystem, including R and Lua.
198
+
- Made manifests drive skill-local pattern distribution and release-time methodology checks.
199
+
- Added one stable eval manifest plus a human/JSON/JUnit Python runner and `omv eval` CLI adapter.
200
+
201
+
Core idea:
202
+
203
+
Repeated asset and eval lists are contracts disguised as source code. Moving membership into validated JSON keeps progressive disclosure, package self-containment, local CI, and release checks aligned without rewriting skill-specific assertions.
204
+
205
+
Tradeoff:
206
+
207
+
The unified runner still starts one Python process per checker. The suite is small, and preserving each Skill's domain-specific checker is more valuable than premature shared assertion abstractions.
208
+
193
209
## Current Weaknesses
194
210
195
211
- The Evidence.v1 contract is copied into runtime skill directories; drift is checked by `scripts/sync_skill_assets.py --check`, but the duplication still adds release-surface noise.
196
212
-`omv-find` can guide Evidence.v1 handoff creation, but candidate discovery quality still depends on model discipline, source inspection, and available metadata.
197
213
-`omv-report` consumes validation guidance, but advisory rendering is still primarily model-written rather than deterministic.
198
214
- Examples are partly synthetic.
199
-
- Package archives are tracked but not independently diffable.
200
-
- The README is user-facing; keep maintainer workflow details in `CONTRIBUTING.md`, `RELEASE.md`, and this file.
215
+
- Subagent orchestration is documented and installable, but still optional prose-driven rather than a forced fan-out runtime (see `docs/architecture/agent-team-upgrade.md`).
216
+
- Active skills (`omv-radar`, `omv-dedup`, `omv-disclose`, `omv-critic`) have thinner golden coverage than find/audit/repro/report.
217
+
-`src/cli/findings.ts` remains a large domain module (validate + score + doctor + archive).
218
+
- Historical `SPEC.md` listed skills that never shipped; treat OpenSpec + `registry.yaml` as truth.
0 commit comments