Commit Graph

59 Commits

Author SHA1 Message Date
uberwald d175f92806 Complete Story 3.3: Preset Import & Export
Implements FR-19: Preset import/export as JSON

New Files:
- src/core/PresetImportExportManager.js - Core logic for export/import with merge/replace
- src/ui/gm/PresetExportDialog.js - Export dialog with file download
- src/ui/gm/PresetImportDialog.js - Import dialog with file picker, preview, merge/replace
- templates/preset-export.hbs - Export dialog template
- templates/preset-import.hbs - Import dialog template
- styles/components/_preset-import-export.less - Dialog styles
- tests/unit/core/PresetImportExportManager.test.js - 38 unit tests
- _bmad-output/implementation-artifacts/3-3-preset-import-and-export.md - Story file

Modified Files:
- src/ui/gm/DirectorsBoard.js - Added export/import button handlers
- templates/directors-board.hbs - Added Export/Import buttons to footer
- styles/scrying-pool.less - Added stylesheet import
- lang/en.json - Added localization strings for new UI
- _bmad-output/implementation-artifacts/sprint-status.yaml - Story status: review

Features:
- Export all presets from current scene as JSON file
- Import presets with merge (add new, skip duplicates) or replace (overwrite all) modes
- Preview of presets before import with validation status
- Confirmation dialog for replace mode to prevent data loss
- Comprehensive error handling and validation
- All ACs satisfied (AC-9 deferred for README docs)

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 16:28:53 +02:00
uberwald e31badf865 Create Story 3.3: Preset Import & Export
- Add comprehensive story file for preset import/export functionality
- Update sprint status: 3-3-preset-import-and-export → ready-for-dev
- Story covers FR-19: Preset import/export as JSON
- Includes 9 acceptance criteria, tasks, and developer context

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 15:57:44 +02:00
uberwald dc63148b80 Create Story 3.2: Scene Auto-Apply & ConfirmationBar
- Created comprehensive story file for Scene Auto-Apply & ConfirmationBar
- Added detailed acceptance criteria covering FR-17 and FR-18
- Included exhaustive developer context with previous story intelligence
- Specified architecture compliance, file structure, and testing requirements
- Updated sprint-status.yaml to mark 3-2 as ready-for-dev

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 15:10:55 +02:00
uberwald 25b98ce64a Mark Story 2.3 code review as done
- Update deferred-work.md: mark ParticipantCard.js issue as resolved
- Update sprint-status.yaml: add code review completion date

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 11:43:05 +02:00
uberwald cc5b04d902 Update sprint status: Story 2.3 code review completed and merged
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 11:37:16 +02:00
uberwald 7918792f4e Fix Story 2.3 code review findings: remove duplicate ParticipantCard.js, fix lint in ScryingPoolStrip.js
- Delete src/ui/shared/ParticipantCard.js (duplicate of boardUtils.js with conflicting implementations)
- Delete tests/unit/ui/shared/ParticipantCard.test.js (tests for deleted file)
- Add directorsBoard to global declarations in ScryingPoolStrip.js to fix lint errors

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-23 11:31:01 +02:00
uberwald d001659e27 Update sprint status: Story 1.3 → done
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-22 13:24:06 +02:00
uberwald 5ba7717ecd Fix Story 1.3: StateStore spec compliance and minor cleanup
Critical Fix:
- StateStore now uses global Hooks.callAll directly (per spec)
- Removed hooks parameter from StateStore constructor
- Updated module.js to pass only adapter.settings
- Updated tests to stub globalThis.Hooks

Minor Cleanup:
- Fixed misleading warning in SocketHandler.registerPendingOp
- Added clarifying comment for setMatrix _revision behavior

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-05-22 11:38:45 +02:00
uberwald 110b295a7b CLose story 1.2 2026-05-21 23:08:34 +02:00