Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClaimScope

A bounty can say “open” and still be a poor place to spend a weekend.

ClaimScope sends three independent Mozaik agents to inspect funding claims, contribution rules and competing pull requests. A fourth agent reviews evidence as it arrives, without waiting for a fixed pipeline. If slower evidence invalidates an early review, that review is discarded and regenerated against the latest shared revision.

Built during the 5–6 September 2026 Mozaik hackathon. Development was AI-assisted using Codex. Runtime analysis uses a local Qwen3 model.

Real execution trace

Watch the 25-second demo · Recorded report

The 38.248-second live audit made five model calls, with three overlapping collectors and four overlapping model requests. The first review used revision 1 and was discarded; the accepted review used revision 3. The video replays the actual timestamps at 2× speed. Overlapping requests do not imply simultaneous token generation inside the model server.

Run it

Requirements: Node.js 22+, Python 3.12 and an Apple Silicon Mac for the supplied MLX model-server recipe. The TypeScript client also accepts a compatible localhost chat completion server on other platforms. No paid API key is needed.

npm ci
python3.12 -m venv .venv
.venv/bin/pip install mlx-lm==0.31.3
.venv/bin/mlx_lm.server \
  --model mlx-community/Qwen3-4B-Instruct-2507-4bit \
  --host 127.0.0.1 --port 9878

In another terminal:

npm run audit -- https://github.com/Lilly-Protocol/lily-contracts/issues/324

The first model run downloads approximately 2.3 GB of public model weights. GitHub reads are anonymous by default. If rate-limited, set GITHUB_TOKEN; it is sent only to api.github.com. CLAIMSCOPE_MODEL_URL and CLAIMSCOPE_MODEL can select another localhost OpenAI-compatible chat-completion server/model. Remote model URLs are rejected in this build, so an accidental configuration change cannot introduce paid inference.

Outputs: report.md, audit.json, and a timestamped trace.jsonl in output/.

npm test
npm run typecheck

Tests use an explicitly labelled deterministic model substitute. The recorded demo uses real local-model inference and live GitHub reads; those are different execution modes.

Why concurrency matters here

  1. One audit.started semantic event reaches three createAgent participants.
  2. Their situation processors begin separate network work without awaiting each other.
  3. The first returning source publishes audit.evidence, starting the reviewer's runLoop while other collectors and inference loops are still active.
  4. Every new evidence result increments shared RuntimeState.revision.
  5. An answer based on an old revision is logged as review.discarded; the reviewer starts again with the new evidence. A busy reviewer coalesces intermediate revisions.
  6. Completion requires all three workers and a review of the current revision.

The concurrency is observable, not an animation trick: the trace records source intervals, Mozaik inference events, review versions and discarded answers. A barrier-based test would deadlock if collectors were started sequentially. Another test forces evidence to arrive during review and asserts that the stale answer never becomes the final review.

What the tool can establish

Check Evidence Limit
Reward claims Issue and fully paginated comments; mentioned dollar amounts A textual amount does not establish currency, escrow or payment availability
Basic status and rules Issue state, archive flag, README and CONTRIBUTING Not legal advice or proof of individual eligibility
Existing work Cross-referenced PRs from a paginated issue timeline A linked PR may be irrelevant; unlinked/private submissions remain invisible
Final assessment Deterministic facts plus separately labelled model commentary This version cannot certify a task as payable

The factual status is calculated in code. Model prose cannot turn an advertised reward into confirmed payment, mark an unknown bounty funded, or authorize a submission. Source errors remain incomplete evidence. All source excerpts are treated as untrusted input. This is a read-only research tool, with no wallet, payment, posting or account tools.

Structure

  • src/team.ts: Mozaik participants, semantic events, shared revisions, completion gate.
  • src/github.ts: public issue parsing, bounded pagination, request sharing, evidence collectors.
  • src/local-model.ts: localhost inference adapter and concurrency counters.
  • src/types.ts: evidence types and deterministic assessment.
  • src/cli.ts: CLI, event stream and reports.
  • test/team.test.ts: concurrency, stale-review, source-failure, URL and pagination checks.
  • demo/: recorded execution evidence, a 2× replay, and still images.
  • scripts/render_demo.py: reproducible trace visualization using Pillow and ffmpeg.

The public trace omits issue bodies and source excerpts; event timing, facts and model answers are unchanged. Individual model notes are preserved even where they are weak: the competition note focuses on one PR despite three open PRs in the facts, and the eligibility note makes an unsupported inference about compliance. Neither controls the factual assessment. The final report leads with the structured evidence.

To regenerate the demo on macOS, install Pillow and ffmpeg and run:

python3 scripts/render_demo.py output/demo-live

Limitations

This prototype supports public GitHub issues only. It does not verify smart-contract escrow or promise earnings. Models can still produce incorrect commentary; check the structured facts and linked sources. At most ten pages per GitHub list are scanned; a cap hit is explicit. A whole audit has a three-minute limit and individual source calls have shorter limits. The MLX server is for local development and should stay on loopback.

Mozaik, its providers, and the model retain their own licenses. ClaimScope source is MIT.

About

Concurrent Mozaik agents audit public GitHub bounty evidence, with revision-aware reviews and a real execution trace.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors