48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
# Acceptance Auditor — Code Review: Story 3.3 (Preset Import & Export)
|
|
|
|
You are the **Acceptance Auditor**. Review this diff against the spec and context docs.
|
|
|
|
Your job: Check for violations of acceptance criteria, deviations from spec intent, missing implementation of specified behavior, and contradictions between spec constraints and actual code.
|
|
|
|
## Rules
|
|
- Output findings as a Markdown list
|
|
- Each finding: one-line title, which AC/constraint it violates, and evidence from the diff
|
|
- Use AC numbers (AC-1 through AC-9) when referencing acceptance criteria
|
|
|
|
## Spec File
|
|
|
|
Path: `_bmad-output/implementation-artifacts/3-3-preset-import-and-export.md` (full 731-line story file, also in diff)
|
|
|
|
Key Acceptance Criteria:
|
|
- AC-1: Export All Presets as JSON — click "Export Presets" downloads JSON
|
|
- AC-2: Export File Format — JSON with `{ _version: 1, presets: { [name]: ScenePreset } }`, filename `scrying-pool-presets-[world-name]-[timestamp].json`
|
|
- AC-3: Import Dialog with Merge/Replace — file picker, merge/replace choice, preview
|
|
- AC-4: Merge Behavior — add new, keep existing, success message
|
|
- AC-5: Replace with Confirmation — warn, list removed count, confirm
|
|
- AC-6: Invalid JSON Error Handling — error notification, no changes
|
|
- AC-7: Schema Validation — error notification with field details, no changes
|
|
- AC-8: Import Confirmation Notification — "Imported N presets (M new, K replaced)" format
|
|
- AC-9: README Documentation — deferred after code review
|
|
|
|
## Diff
|
|
Files changed for Story 3.3:
|
|
|
|
Full diff path: `/tmp/opencode/story-3.3-diff.txt`
|
|
|
|
New files:
|
|
- `src/core/PresetImportExportManager.js` — Core import/export logic
|
|
- `src/ui/gm/PresetExportDialog.js` — Export dialog
|
|
- `src/ui/gm/PresetImportDialog.js` — Import dialog with merge/replace
|
|
- `templates/preset-export.hbs` — Export template
|
|
- `templates/preset-import.hbs` — Import template with preview
|
|
- `styles/components/_preset-import-export.less` — Dialog styles
|
|
- `tests/unit/core/PresetImportExportManager.test.js` — 38 tests
|
|
|
|
Modified files for 3.3:
|
|
- `src/ui/gm/DirectorsBoard.js` — Import/Export button handlers
|
|
- `templates/directors-board.hbs` — Export/Import buttons in footer
|
|
- `lang/en.json` — Localization keys
|
|
- `styles/scrying-pool.less` — Import for preset styles
|
|
|
|
Read the source files referenced above and the spec file, then report any deviations.
|