Cadence

A stack-agnostic, self-improving AI development framework as a Claude Code plugin.

View the Project on GitHub nik190799/cadence

Case study — Flutter sandbox

Cadence was prototyped on a Flutter + Firebase project and validated through two iterations before being extracted as a stack-agnostic plugin. The sandbox shows what a real Cadence-aligned project looks like.

The sandbox

A small Flutter app (counter, todo list, settings) mirroring the architecture of a production Flutter app called The Atelier (a real-world consumer app the author maintains).

What Cadence produced on this project

After two team runs and two retrospectives, the sandbox accumulated:

The retrospective loop in action

Bundle A (first team run — todos feature)

The team produced a correct, working todos feature. The retrospective found:

  1. Pattern inconsistency — Counter used optimistic update; Todos used write-then-reread. Fix: ADR-0001 made optimistic the standard.
  2. No error handling — Todos controller methods had no try/catch. Fix: ADR-0003 codified the three-level error surface.
  3. Fire-and-forget callbacks — Four widget callbacks discarded futures. Fix: ADR-0005 mandated unawaited() wrapper.
  4. Model location — Team placed Todo in lib/data/models/ without a rule to follow. Fix: ADR-0002 made lib/domain/models/ canonical; tool/check_imports.dart mechanically rejects data/models/ references.
  5. Missing edge-case test — Trim semantics on non-empty input. Fix: ADR-0006 codified minimum coverage.

Bundle D (second team run — settings toggle)

A “Big numbers” settings toggle was added. The retrospective found:

  1. Cross-feature dependency — Counter needed to read Settings; no rule existed for cross-feature state sharing. Fix: ADR-0007 said shared state lives in lib/app/state/; import boundary rule added; providers.dart exemption documented as a deferred migration.
  2. Tearoff fire-and-forget — ADR-0005 forbade arrow-form discard but was silent on tearoff form. Fix: ADR-0005 tightened to cover both.

What this validates

Sandbox repository

The full sandbox lives at github.com/nik190799/agent_teams_sandbox (separate repository — Cadence itself ships zero Flutter code).