You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Devil's Advocate Prioritization Memo
|
|
|
|
## Position
|
|
Do not start with "clean architecture" refactors yet. First, remove business-risk mismatches that can produce incorrect behavior despite clean code.
|
|
|
|
## What Should Be Prioritized in This Conversation
|
|
1. Decide the product contracts that are currently ambiguous.
|
|
- Theme creation rules
|
|
- Schedule GET semantics
|
|
- Canonical defaults
|
|
- Theme scoping for import/export/preferred
|
|
2. Approve a short "correctness-first" implementation batch.
|
|
- Theme-scoped source import/export/preferred fixes
|
|
- Theme creation contract alignment
|
|
- Theme ownership validation on source writes
|
|
3. Lock a test gating policy before refactoring.
|
|
- Add deterministic tests for scheduler and SSE progress first
|
|
- Avoid relying on live external-provider E2E for CI confidence
|
|
|
|
## What To Defer (For Now)
|
|
1. Large structural decomposition of `synthesis.rs` and major frontend pages.
|
|
2. Broad style/lint cleanups.
|
|
3. Performance tuning beyond obvious correctness-adjacent fixes.
|
|
|
|
## Why This Order Is Safer
|
|
1. It prevents regressions in core multi-theme behavior before code motion.
|
|
2. It creates a stable contract baseline for any future refactor team.
|
|
3. It avoids spending effort simplifying code that may be simplified in the wrong direction if contracts change.
|
|
|
|
## Concrete Next Decision Request
|
|
Please confirm these five items so implementation teams can proceed without churn:
|
|
1. Draft theme creation allowed or not
|
|
2. Schedule GET absent behavior (`404` vs `200 null`)
|
|
3. Defaults (`4/3` vs `5/2`)
|
|
4. Theme-scoped import/export/preferred policy (yes/no)
|
|
5. Fallback label and source-link extraction mode policy
|