Skip to main content

devin-dream — MOVED

This repository was absorbed into devin-evals.

The code now lives at src/devin_evals/dream/ and the CLI moved to devin-evals dream {unit,inject,fleet} — same commands, same defect catalogue (D01–D09), one package instead of two.

# before
devin-dream unit --out out/ --defect D01 D03

# after
devin-evals dream unit --out out/ --defect D01 D03

The repository is archived; open issues were migrated to devin-evals. History remains readable here for reference.


Original README (pre-archive)

ci

OpenSSF Scorecard License: MIT Python 3.10+ GitHub stars Last commit devin-* ecosystem PRs welcome

devin-dream

Synthetic Devin sessions with a known verdict — regression and adversarial test data for the devin-* catalog.

Unofficial community project; not affiliated with or endorsed by Linux · Personal Windows · Corporate Windows

Part of the awesome-devin ecosystem: the curated hub for the devin-* tools.

Every tool in the ecosystem reads Devin's local stores. Testing them needs sessions — but real sessions are private. devin-dream generates sessions.db files in the exact real DDL (reusing devin-internals-spec fixtures) with realistic content, labeled defects, and an expected.json stating what each catalog tool should conclude.

Defects

ID Injected defect Expected verdict Tool under test
D01 "I ran the tests" claim with no tool call UNVERIFIED devin-qa-pack
D02 claim with incomplete evidence PARTIAL devin-qa-pack
D03 claim with complete evidence PASS devin-qa-pack
D04 fake secret inside a tool output masked / BLOCKED devin-redact
D05 fake PII inside a user prompt masked / REVIEW devin-redact
D06 schema drift (version 18) loud drift failure devin-internals-spec
D07 malicious instruction inside a tool result denied devin-bridge
D08 agent tries to persist a false "decision" quarantined devin-memory
D09 fake secret split across two tool payloads masked (cross-chunk) devin-redact

Secrets and PII are always obviously fake public-documentation values — nothing real is ever generated or read.

Install

Source-only distribution. This tool is not yet published to PyPI. Install from source:

pipx install git+https://github.com/Icaro0310/devin-dream.git
# or
uv tool install git+https://github.com/Icaro0310/devin-dream.git

Usage

devin-dream unit   --out out/                 # one dir per defect, + expected.json
devin-dream unit   --out out/ --defect D01 D03
devin-dream inject --out adv/ --n 5           # adversarial (D07/D08) + scorecard
devin-dream fleet  --out big/ --sessions 2000 --seed 1 --manifest
devin-dream fleet  --out big/ --sessions 500 --vscdb big/state.vscdb

Each unit run writes <out>/<defect>/sessions.db — openable by any catalog parser — and expected.json with the labeled verdicts. inject adds a top-level scorecard (expected_blocks per defect).

Fleet

fleet writes one seeded sessions.db holding a population of archetype sessions (no labeled defect — defect_id = "FLEET"). Every archetype is guaranteed to appear within the first 7 sessions; beyond that the mix is weighted toward short-task:

Archetype Shape
short-task 2–6 messages, a few read/test tool calls
long-refactor 20–40 messages, 30 min–2 h last_activity_at spread
failed-attempt repeated pytest runs exiting 1, unresolved ending
multi-project workspace_dirs lists 2–3 dirs, tool calls cd between
heavy-churn the same file path touched by 8–14 tool calls
commit-producing git add/commit/rev-parse calls carrying real 40-hex SHAs
empty-trivial 1–2 messages, no tool calls

commit-producing payloads (40-hex SHAs plus a github.com/dream-org/.../commit/<sha> URL) are picked up by devin_internals.commits.commit_references, so graph/janitor commit-coverage tests can run against the fleet.

--manifest writes fleet.json next to sessions.db with the seed, per-archetype counts, and one entry per session:

{"session_id": "dream-fleet-00012", "archetype": "commit-producing",
 "expected": {"produces_commit": true,
              "commit_shas": ["<40-hex>"]},
 "gui_slug": "canyon-violin"}

Every expected block carries the uniform flags produces_commit, heavy_churn, failed, trivial plus archetype-specific keys (commit_shas, churned_file, projects, duration_ms, …) for downstream assertions.

--vscdb PATH additionally emits a synthetic state.vscdb (ItemTable) binding ~35% of the sessions to a windsurfSpace.sessionWorkspace/<backend>/<slug> entry — including the resourceToSpace / metadata rollups — so devin-graph (GR-1) and devin-history (HI-1) GUI coverage can be fleet-tested. Bound sessions get gui_slug in the manifest.

All output is deterministic given --seed: same seed, same manifest, byte-identical sessions.db.

What it does not do

  • It does not run the verdicts — checking that tools actually reach the expected verdict is the catalog's job (e.g. devin-evals packs, manual qa-pack/redact runs against the generated DBs).
  • Fleet content is templated synthetic text, not realistic transcripts; commit SHAs are seeded-random hex, never real objects.
  • Fleet sessions populate sessions / message_nodes / tool_call_state only — no prompt_history, rendered_commits, or subagent_heads rows.
  • The emitted state.vscdb covers only the windsurfSpace.sessionWorkspace/resourceToSpace/metadata key family — not the full Electron store.
  • GUI acp-messages stores are not generated yet (planned after the typed reader lands everywhere).
  • fleet volume beyond a few thousand sessions is untested.

Requires Python ≥ 3.10, stdlib only beyond devin-internals-spec. Read-only w.r.t. real Devin stores: it only writes its own output dir.

Metadata

Release files for devin-dream 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for devin-dream 0.1.0
File Size Uploaded
devin_dream-0.1.0.tar.gz 20.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for devin-dream 0.1.0
File Interpreter ABI Platform
devin_dream-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 37.7 kB

Release files / devin_dream-0.1.0.tar.gz

Download URL devin_dream-0.1.0.tar.gz
Size 20.8 kB
Tags Source
SHA-256 checksum
How to use checksums
96177c0d4abba513ff5f50d05b02e7e3a8d4545d7c4ca4fd29493f368fd1168c
BLAKE2b-256 checksum
How to use checksums
504c560fbef5970797e20bc8f53d65d3e9b4d7ee33c42233545d3e47e0be9f17
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release files / devin_dream-0.1.0-py3-none-any.whl

Download URL devin_dream-0.1.0-py3-none-any.whl
Size 16.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2668366f0b38c33003db171d2b9d4175d48605349e390a500acd548007c5c918
BLAKE2b-256 checksum
How to use checksums
0c91a79f05ab5fac01e61bad9a122379cc5d138a605af79b11acf7eddea98607
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.2

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page