The problem
As a suite grows, the risk of generation is duplication, it drafts a login test you already have, three times, in three features. The memory layer fixes that, it looks at your existing cases and reuses or skips what is already covered, so a new generation adds to your suite instead of cloning it.
The idea
Generate with awareness of what exists. The memory layer reuses relevant existing cases and reduces duplicates, so each generation extends your coverage rather than repeating it.
What memory does
- Reuses relevant existing test cases instead of redrafting them
- Reduces duplicate coverage as the suite grows
- Keeps a new generation additive, not repetitive
How it works
Add --memory to a generation and Kane CLI consults your existing cases to dedupe and reuse, the same memory layer the interactive Generate mode uses.
Run it now
Add --memory so generation builds on what you already have.
kane-cli generate "password reset and account lockout" --memoryWhat prints
Example run. Your numbers will vary by site, build and run. The PASS / FAIL and the zeros are the stable result, the raw timings and counts are illustrative.
✓ Generated 2 scenarios · 6 cases (request 23784) ▸ TS1 User can successfully reset their password via email link [H] 3 cases ▸ TS2 Account is temporarily locked after multiple failed login attempts [H] 3 cases /view inspect · /save save as runnable tests · /run # with an existing suite, memory also prints what it reused: reused 2 existing cases, skipped 1 duplicate
Combine with limits
# memory plus size limits for a clean, additive run
kane-cli generate "<feature>" --memory --scenario-limit 3 --per-scenario-limit 5Why it works
The memory layer matches a new request against your existing cases, so overlapping coverage is reused or skipped rather than regenerated. It is most useful once you have a suite worth not duplicating.
What it unlocks
Generation scales with your suite instead of bloating it. Each new feature adds the cases it needs and leans on the ones you already have.