opencode-codeops 2.4.0 → 2.6.0

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.
Files changed (48) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +49 -2
  3. package/_shared/discovery.md +2 -1
  4. package/_shared/spec-first-ordering.md +6 -2
  5. package/_shared/test-selection.md +130 -0
  6. package/bin/codeops-test.mjs +855 -0
  7. package/bin/lib/test-branch-policy.d.mts +51 -0
  8. package/bin/lib/test-branch-policy.mjs +185 -0
  9. package/bin/lib/test-map-validate.d.mts +42 -0
  10. package/bin/lib/test-map-validate.mjs +618 -0
  11. package/bin/lib/test-map.d.mts +114 -0
  12. package/bin/lib/test-map.mjs +384 -0
  13. package/bin/lib/test-provenance.d.mts +73 -0
  14. package/bin/lib/test-provenance.mjs +188 -0
  15. package/bin/lib/test-runner.d.mts +72 -0
  16. package/bin/lib/test-runner.mjs +350 -0
  17. package/bin/lib/test-selection-changes.d.mts +76 -0
  18. package/bin/lib/test-selection-changes.mjs +272 -0
  19. package/bin/lib/test-selection-explain.mjs +75 -0
  20. package/bin/lib/test-selection-glob.d.mts +32 -0
  21. package/bin/lib/test-selection-glob.mjs +206 -0
  22. package/bin/lib/test-selection.d.mts +80 -0
  23. package/bin/lib/test-selection.mjs +418 -0
  24. package/package.json +4 -2
  25. package/schemas/test-map.schema.json +164 -0
  26. package/scripts/__pycache__/codeops_plan.cpython-314.pyc +0 -0
  27. package/scripts/__pycache__/install_agents.cpython-314.pyc +0 -0
  28. package/scripts/discovery-toggle.mjs +236 -0
  29. package/skills/analyze-project/SKILL.md +9 -2
  30. package/skills/exec-plan/SKILL.md +16 -8
  31. package/skills/exec-plan/execution-protocol.md +15 -2
  32. package/skills/git-commit/SKILL.md +1 -1
  33. package/skills/make-plan/SKILL.md +10 -3
  34. package/skills/make-plan/quality-checklist.md +4 -0
  35. package/skills/make-plan/templates.md +19 -1
  36. package/skills/organize-tests/SKILL.md +169 -0
  37. package/skills/organize-tests/references/agents-testing-block.md +80 -0
  38. package/skills/organize-tests/references/analysis-protocol.md +94 -0
  39. package/skills/organize-tests/references/ci-github-actions.md +178 -0
  40. package/skills/organize-tests/references/language-adapters.md +54 -0
  41. package/skills/organize-tests/references/map-health.md +47 -0
  42. package/skills/organize-tests/references/project-wrapper.md +72 -0
  43. package/skills/organize-tests/references/shadow-mode.md +60 -0
  44. package/skills/setup-codeops/SKILL.md +30 -3
  45. package/standards/coding-standards-full.md +28 -0
  46. package/standards/coding-standards.md +29 -0
  47. package/scripts/__pycache__/codeops_plan.cpython-312.pyc +0 -0
  48. package/scripts/__pycache__/install_agents.cpython-312.pyc +0 -0
@@ -30,6 +30,35 @@ Do not duplicate these standards in `~/.config/opencode/AGENTS.md` — the plugi
30
30
  containers.
31
31
 
32
32
  # Testing standards
33
+
34
+ ## Prime directives for verification
35
+
36
+ 1. **Test-first is unchanged.** Specification tests are written before implementation and run
37
+ red, then green. Selection never changes this.
38
+ 2. **The inner loop runs the smallest safe verification slice.** With a valid map, a task runs the
39
+ selected feature-slice `task` groups plus fast static checks. Without a map, a plan's
40
+ `**Task verify**` command may provide the same scoped behavior; otherwise the full verify runs
41
+ as today.
42
+ 3. **The outer gate is always full.** The full verify runs at phase/plan completion, before
43
+ push/release, at acceptance, and in CI. A green slice is not a release signal.
44
+ 4. **Selection fails closed.** Unknown paths, shared infrastructure, manifests/lockfiles,
45
+ test-runner/config changes, CI changes, stale/invalid maps, and selector errors select the
46
+ full suite. No silent skips.
47
+ 5. **Spec tests are never skipped.** The feature's spec test file always runs, even if the map
48
+ would not select its group. The executor passes the plan's declared spec file(s) with
49
+ `--include`; the selector adds the owning group, or falls back to full if the spec file is
50
+ unowned.
51
+ 6. **Evidence is explicit.** Verification names the groups or scoped command used, what was
52
+ deferred, and the baseline. CI remains authoritative.
53
+
54
+ **Conditional wording.** Run the project's full verify command before completing any task or
55
+ committing, unless the project has a valid `codeops/test-map.json` or `codeops/test-map/`
56
+ directory, or the plan records a validated `**Task verify**` scoped command. With either opt-in,
57
+ the task-level verify may run the selected groups or the scoped command; the full verify still
58
+ runs at phase/plan completion, before push/merge, at acceptance, and in CI. Any selection error,
59
+ unknown path, shared change, or stale map falls back to the full verify. The canonical detail is
60
+ `_shared/test-selection.md`.
61
+
33
62
  - **Run the project's verify command before completing any task or committing**; full verify
34
63
  before declaring done. No code is "done" while any test fails.
35
64
  - Granular coverage (happy path, edges, errors, integration); E2E where feasible; real objects