- Introduce deterministic UUID generation for library defaults (spaces,
groups, and items) - Add post-backfill rebuild support in the sync
registry (with_rebuild) - Export BatchFkMapResult type via the sync API
- Track per-peer RTT latency via SyncMetricsCollector integration - Use
deterministic IDs when creating default space and related items in
LibraryManager
- Revert to the November 16 baseline for realtime sync - Use a single
state watermark and drop per-resource watermarks, counts, and hashes
from watermark messages - Revert DataAvailableNotification handling and
the updated FK filtering approach in favor of NULL-based handling - Add
registry helper get_model_type_by_table to map tables to models for FK
resolution - Update mocks and tests to reflect the baseline (linkage
stats in summary) - Fix test infrastructure: remove block_in_place usage
and minor imports - Remove obsolete test fixture file
- Introduce an Axum-based HTTP server with an embedded daemon and a
JSON-RPC proxy to the daemon via a Unix socket - Bundle web UI assets
into the server with an assets feature and a build.rs that builds the
frontend using pnpm - Add multi-stage Dockerfile, docker-compose.yml,
and a Distroless runtime image - Provide TrueNAS deployment support with
a build script and setup guide - Add a new web UI (apps/web) with a
Vite-based dev/build flow and a web platform shim for the frontend -
Implement server logic (apps/server/src/main.rs): health, auth, /rpc
proxy and data-dir/socket-path wiring - Include server-specific
Cargo.toml and a comprehensive server README - Add architecture and
memory-focused docs to guide usage and design - Minor core tweak:
simplify location/resource event emission in
core/src/location/manager.rs to align with new flow - Tauri app: adjust
menus to add an Edit submenu and remove unused items
- Added `include_descendants` option to event filters, allowing recursive path matching for resource events.
- Updated `affects_path` method to support descendant matching, improving event handling accuracy.
- Refactored subscription logic to utilize the new filtering capabilities, ensuring only relevant events are processed.
- Introduced tests for event filtering to validate exact vs. recursive matching, enhancing reliability of event-driven updates.
- Updated related components to leverage the new filtering options, improving overall performance and user experience.
- Introduced a new `unique_bytes` field in the volume model to track deduplicated content size.
- Implemented a volume refresh action to recalculate unique bytes for all volumes owned by the device, emitting a cache refresh event to invalidate frontend caches.
- Updated the storage overview component to display unique bytes and other volume statistics.
- Enhanced the event system to handle cache invalidation events, ensuring real-time updates across the application.
- Added necessary migrations and database updates to support the new volume tracking features.
- Deleted the Agent Manager Design document to streamline documentation and focus on the new extension-based agent architecture.
- Updated the whitepaper to reflect the transition to an extension-based agent architecture, detailing the capabilities of specialized AI agents implemented as WASM extensions.
- Revised sections to emphasize the event-driven processing, memory systems, and safety mechanisms of the new agent architecture.
- Enhanced clarity on the integration of agents within the VDFS and their roles in proactive file management and user assistance.
- Added a comprehensive API reference document for the Spacedrive SDK, detailing all APIs as type-checked stubs for type-checking purposes.
- Introduced new core modules including `actions`, `agent`, `ai`, `job_context`, `models`, `query`, `tasks`, and `vdfs`, each with defined structures and functionalities.
- Updated `Cargo.toml` to include new dependencies and ensure compatibility with the SDK.
- Enhanced `types.rs` to include additional error types and result types for better error handling across the SDK.
- Established a clear structure for extension development, allowing for future implementations and runtime testing.
- Expanded the SDK specification to include detailed sections on new primitives: `#[app]`, `#[model]`, and `#[agent]`.
- Introduced a comprehensive Memory Query API reference, detailing capabilities for temporal and associative memory types.
- Added custom query methods for `ChronicleMind`, enhancing functionality for retrieving related papers and summarizing recent activities.
- Removed outdated SDK_SYNTAX_FINAL.md to streamline documentation and focus on the latest design updates.
- Revised MEMO2.md to incorporate recent developments and strategic insights for the upcoming Spacedrive V2 launch.
- Clarified the integration of new extensions and their roles within the platform, emphasizing the business model focused on open-source and paid offerings.
- Enhanced projections and validation metrics to align with the November launch timeline, including user acquisition and revenue expectations.
- Streamlined descriptions to improve clarity and engagement for potential investors and stakeholders.
- Clarified the business model, emphasizing the free and open-source core with paid extensions launching in November.
- Streamlined descriptions of core VDFS primitives and their applications in various data-intensive scenarios.
- Updated projections and validation metrics for the November launch, including user acquisition targets and revenue expectations.
- Enhanced clarity on the mix of open and closed source extensions, maintaining trust through sandboxed execution and transparent permissions.
- Updated the extension lineup document to reflect new names and features for the November 2025 launch, including Chronicle (formerly Research) and Cipher (formerly Vault).
- Enhanced descriptions of each extension's capabilities, pricing, and strategic advantages, emphasizing their roles as subsystems of a data OS.
- Revised the investor memo to clarify the transition from V1 to V2, highlighting the complete VDFS architecture and the business model centered around open source and paid extensions.
- Included insights on the platform's unique value proposition and market strategy, projecting significant growth and customer acquisition plans.
- Introduced a new document outlining proposed extensions for the November 2025 launch, detailing core principles and confirmed must-have extensions.
- Included descriptions, pricing models, and market analysis for each extension: Research, CRM, Vault, and Finance.
- Provided alternative extension ideas and strategic considerations for the launch lineup.
- Recommended a final launch lineup of four extensions, emphasizing their roles as subsystems of a data OS.
- Deleted the `entries` module from the project structure to streamline operations.
- Revised the investor memo to enhance clarity and conciseness, consolidating information about Spacedrive V2's launch and its business model.
- Updated supporting materials and risk mitigation strategies to better reflect the current development and market approach.
- Revised the memo to clarify the transition from V1 to V2, emphasizing the execution failures of V1 and the improvements made in V2.
- Highlighted the development timeline and architectural refinements that enabled a production-ready launch in four months.
- Detailed the platform's unique value proposition, focusing on local-first privacy and the advantages of the Extension SDK.
- Enhanced the go-to-market strategy, including targeted customer acquisition plans and compliance certifications.
- Included validation metrics and a call to action for potential investors.
- Updated the investor memo to reflect the upcoming launch of Spacedrive V2 in November 2025, highlighting the transition from V1 to V2 and the lessons learned.
- Detailed the new architecture and features, including the introduction of three paid extensions: Finance, Notes, and CRM, along with their pricing models.
- Clarified the platform's unique value proposition, emphasizing local-first privacy and the advantages of the Extension SDK.
- Enhanced the go-to-market strategy and unit economics, projecting significant growth and outlining customer acquisition plans.
- Included supporting materials and a call to action for potential investors.
- Revised the introduction to clarify the failures of Spacedrive V1 and the responsibilities taken.
- Expanded on the Extension SDK, detailing the reduction in development complexity and providing examples of traditional vs. Spacedrive extensions.
- Updated the business model section to reflect changes in pricing and compliance certifications.
- Adjusted projections and market strategies to align with the new product offerings and compliance roadmap.
- Enhanced customer acquisition strategies and clarified the first extension launch details.
- Marked the `leader` argument in `SetupArgs` as deprecated, clarifying its usage.
- Introduced a `backfill_manager` to the `SyncService`, enabling automatic orchestration of initial sync processes.
- Enhanced the `run_sync_loop` method to manage backfill attempts and periodic maintenance tasks, improving overall sync reliability.
- Updated the `MockTransportPeer` to support request/response handling for backfill operations, ensuring seamless data retrieval during synchronization.
- Refactored the entry model to extract fields from JSON instead of direct deserialization, allowing for better error handling and validation of incoming data.
- Introduced a helper function to streamline field extraction, ensuring all required fields are present before processing.
- Updated the tag model to similarly extract fields from JSON, enhancing its robustness during synchronization.
- Improved the handling of optional fields in both models, ensuring that missing data is managed gracefully.
- Removed the obsolete ENTRY_DIRECTORY_PATH_SUMMARY.md and ENTRY_PATH_SYNC_ANALYSIS.md files, consolidating documentation for clarity.
- Added a new `foreign_key_mappings` method to the Syncable trait, allowing models to declare their foreign key relationships for automatic UUID conversion during synchronization.
- Implemented the `to_sync_json` method to utilize the new FK mappings, enabling seamless conversion of local integer IDs to UUIDs before syncing.
- Updated the entry and location models to include foreign key mappings, enhancing their synchronization capabilities.
- Enhanced the `apply_state_change` method to leverage the generic mapping logic, simplifying the implementation for models with foreign keys.
- Introduced comprehensive documentation on the new FK mapping system and its usage across models.
- Added `sync_enabled` and `last_sync_at` fields to the device model to support synchronization capabilities.
- Created a migration script to update the devices table, consolidating sync-related data.
- Updated various components to ensure sync is enabled by default for new devices.
- Removed the obsolete sync partners table, streamlining the sync architecture.
- Introduced comprehensive sync integration tests to validate the new functionality and ensure robust performance.
- Added `sync_depends_on` method to the Syncable trait, allowing models to declare their dependencies for synchronization.
- Updated device, location, entry, and tag models to specify their dependencies, facilitating automatic computation of sync order.
- Enhanced backfill process to respect model dependencies, preventing foreign key violations during synchronization.
- Improved documentation to reflect the new dependency graph and its benefits for model synchronization.