What went wrong
In ronny-learns-ai, the orchestrator created duplicate task issues in both Milestone 2 and Milestone 3 — 10 issues for 5 tasks each time. A prompt-level hard rule ("search before creating") was added after Milestone 2 but failed to prevent recurrence in Milestone 3.
Root cause
The orchestrator's duplicate search uses title keywords, but the title format changes between runs (e.g., "Task: Your first issue guided lesson" vs "Task: Your first issue lesson page (milestone:3)"). Fuzzy title-based search is unreliable for this guard.
What this project did
Added a deterministic issues.sh check-duplicate command that:
- Strips common prefixes ("Task: ") and milestone suffixes
- Searches by core topic words
- Exits 1 if any matching issues are found
The orchestrator prompt now references this command explicitly.
Proposed framework fix
The genesis issues.sh template (if it exists) should include a check-duplicate subcommand. The seeded orchestrator prompt should reference issues.sh check-duplicate rather than raw gh issue list for pre-creation checks. This makes duplicate prevention deterministic rather than relying on the LLM to craft good search queries.
Affected project: Sayfan-AI/ronny-learns-ai
What went wrong
In ronny-learns-ai, the orchestrator created duplicate task issues in both Milestone 2 and Milestone 3 — 10 issues for 5 tasks each time. A prompt-level hard rule ("search before creating") was added after Milestone 2 but failed to prevent recurrence in Milestone 3.
Root cause
The orchestrator's duplicate search uses title keywords, but the title format changes between runs (e.g., "Task: Your first issue guided lesson" vs "Task: Your first issue lesson page (milestone:3)"). Fuzzy title-based search is unreliable for this guard.
What this project did
Added a deterministic
issues.sh check-duplicatecommand that:The orchestrator prompt now references this command explicitly.
Proposed framework fix
The genesis
issues.shtemplate (if it exists) should include acheck-duplicatesubcommand. The seeded orchestrator prompt should referenceissues.sh check-duplicaterather than rawgh issue listfor pre-creation checks. This makes duplicate prevention deterministic rather than relying on the LLM to craft good search queries.Affected project: Sayfan-AI/ronny-learns-ai