Skip to content

[codex] Add bounded hosted review fix loop#2

Closed
romgenie wants to merge 23 commits into
codex/headless-review-contract-v2from
codex/review-fix-loop
Closed

[codex] Add bounded hosted review fix loop#2
romgenie wants to merge 23 commits into
codex/headless-review-contract-v2from
codex/review-fix-loop

Conversation

@romgenie

@romgenie romgenie commented Jul 6, 2026

Copy link
Copy Markdown

Summary

  • Add opt-in COVEN_REVIEW_FIX_LOOPS for bounded hosted review repair cycles, clamped from 0 to 5.
  • Re-run coven-code with prior structured findings as explicit repair instructions until findings clear or the configured loop count is exhausted.
  • Persist per-cycle result artifacts and publish loop metadata in the adapter comment.
  • Fix a clippy large_enum_variant warning in the worker retry enum.

Refs #119

Validation

  • python -B -m py_compile deploy\complete-tech\coven_github_adapter.py
  • adapter helper assertions for finding extraction, repair prompt generation, and loop comment lines
  • cargo fmt --all
  • cargo check --workspace
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace
  • git diff --check (only Windows line-ending warnings)

Notes

  • Default behavior is unchanged because COVEN_REVIEW_FIX_LOOPS defaults to 0.
  • This is scoped to the CompleteTech hosted adapter dogfood path; the canonical Rust worker contract remains unchanged.

romgenie and others added 23 commits July 6, 2026 01:16
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Add a Mermaid flowchart to `ROADMAP.md` to show the build waves, issue dependencies, GTM tracks, and the critical path at a glance. Also ignore `.comux*` files so local comux artifacts do not get committed.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Connects the canonical coven-github docs to the TypeScript coven-github-webhook deployment bundle and its example policy.
Accepts degraded partial review results from coven-code while preserving complete clean-review validation. Aligns the v2 schemas and contract prose with coven-code PR #132.

Refs OpenCoven#11

Refs PR OpenCoven#31

Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Return a structured 500 for missing webhook secret configuration and clarify nullable finding fields in the v2 contract docs.

Refs PR OpenCoven#31

Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
Signed-off-by: Timothy Wayne Gregg <Timothy.Gregg@complete.tech>
* Update GitHub Sponsors username in FUNDING.yml

* chore: trim funding config

Signed-off-by: Val Alexander <bunsthedev@gmail.com>

---------

Signed-off-by: Val Alexander <bunsthedev@gmail.com>
)

* docs: add AGENTS.md + CLAUDE.md agent-contributor guidance

Canonical entry point for AI agents opening PRs against the GitHub App
adapter: the mandatory DCO sign-off (git commit -s), branch/PR workflow,
local CI gates (cargo check/clippy -D warnings/test), adapter invariants
(no App secrets, GitHub-native progress surfaces), and contributor
attribution. Notes that a commit can carry both Signed-off-by and
Co-authored-by trailers. CLAUDE.md points at AGENTS.md.

Signed-off-by: Val Alexander <bunsthedev@gmail.com>

* docs: clarify DCO signoff guidance

Signed-off-by: Val Alexander <bunsthedev@gmail.com>

---------

Signed-off-by: Val Alexander <bunsthedev@gmail.com>
romgenie pushed a commit that referenced this pull request Jul 8, 2026
…n#43)

Proposes embedded SQLite (rusqlite, WAL) behind a new crates/store crate:
persist-then-ack webhook handling keyed by X-GitHub-Delivery, a tasks table
as the queue (atomic claims, startup recovery, supersession tombstones),
task_attempts audit records, and Cave list continuity across restarts.
Phased into three separately-mergeable PRs.

Signed-off-by: Val Alexander <bunsthedev@gmail.com>
romgenie pushed a commit that referenced this pull request Jul 8, 2026
…tency (#2 phase 1) (OpenCoven#44)

New crates/store crate: embedded SQLite (rusqlite, WAL, user_version
migrations) holding webhook_deliveries, tasks, and task_attempts per
docs/durable-task-store.md. The webhook route now records every delivery —
and its routing outcome — atomically BEFORE GitHub hears success:

- X-GitHub-Delivery is required (400 without it); it is the idempotency key
- redelivered ids answer 200 {duplicate:true} and never dispatch twice
- routed tasks get a durable queued row (with superseded tombstones for
  older queued reviews of the same PR); ping/unroutable deliveries are
  recorded as ignored:<reason>
- a store failure answers 500 so GitHub retries instead of losing work

[storage] config with doctor checks; compose gains a data volume; the demo
gains an Act 1b proving redelivery dedup end to end (21 assertions); the
smoke script covers the missing-delivery-id 400.

Worker dispatch still rides the in-process channel in this phase; durable
claims, restart recovery, and retirement of the in-memory task store land
in phase 2.

Signed-off-by: Val Alexander <bunsthedev@gmail.com>
@romgenie romgenie closed this in 4a154dc Jul 8, 2026
romgenie pushed a commit that referenced this pull request Jul 8, 2026
…ommand supersession (OpenCoven#13) (OpenCoven#49)

Drive-by commenters could steer queued work: the cancel command tombstoned
queued reviews at the route (pre-gate), memory acknowledgements replied
ungated, and a command review superseded queued reviews at durable insert —
all before anyone checked the commander's write access.

Now every mutating or acknowledging command lane passes the worker's write
gate first:

- cancel rides a new adapter-only CancelReviews task; the tombstone happens
  in the worker after the gate, and below-write commanders get the decline
  body instead
- remember/forget acknowledgements carry the commander and decline below
  write; status and clarification replies stay ungated
- insert-time supersession is auto-review-only: command reviews supersede
  older queued reviews post-gate via supersede_queued_except, sparing the
  commanding task itself

Re-lands the intent of fix/issue-13-command-gates (pre-durable-store)
adapted to the SQLite queue from #2.

Signed-off-by: Val Alexander <bunsthedev@gmail.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants