markitect-main/markitect/spaces
tegwick 535b83996b feat(spaces): implement Phase 5 Directory Sync Mode
Implements directory synchronization for Information Spaces:

- SpaceDirectoryExporter: Export space to directory structure
  - Multiple variants: flat, hierarchical, by_path
  - Manifest generation for reimport
  - Incremental export (skip unchanged files)
  - Metadata file export
  - IncrementalExporter for change detection

- DirectorySpaceImporter: Import directory content into space
  - Recursive directory scanning
  - Multiple file pattern support
  - Conflict detection with strategies (skip/overwrite/rename)
  - Manifest-based import for intelligent reimport
  - Structure preservation in space paths

- BidirectionalSyncCoordinator: Two-way sync with conflict detection
  - Sync directions: space-to-directory, directory-to-space, bidirectional
  - Conflict resolution strategies: space_wins, directory_wins, newer_wins, manual, skip
  - Dry-run mode for preview
  - Orphan cleanup option
  - Event emission for progress tracking

45 unit tests covering all sync components.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-08 12:11:37 +01:00
..
events feat(spaces): implement Phase 2 Event System 2026-02-08 07:41:47 +01:00
history feat(spaces): implement Phase 0-1 of Information Space Service 2026-02-08 02:02:46 +01:00
rendering feat(spaces): implement Phase 4 HTML Rendering Mode 2026-02-08 08:42:27 +01:00
repositories feat(spaces): implement Phase 0-1 of Information Space Service 2026-02-08 02:02:46 +01:00
services feat(spaces): implement Phase 2 Event System 2026-02-08 07:41:47 +01:00
sync feat(spaces): implement Phase 5 Directory Sync Mode 2026-02-08 12:11:37 +01:00
transclusion feat(spaces): implement Phase 3 Persistent Transclusion Context 2026-02-08 08:36:50 +01:00
__init__.py feat(spaces): implement Phase 2 Event System 2026-02-08 07:41:47 +01:00
models.py feat(spaces): implement Phase 0-1 of Information Space Service 2026-02-08 02:02:46 +01:00