- 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.
- Replaced all instances of the `spacedrive_job` macro with the simplified `job` macro across documentation and code files.
- Updated related documentation to reflect the new macro name, enhancing clarity for developers.
- Ensured all examples and usage instructions are aligned with the updated macro terminology.
- Implemented a complete WASM extension framework, enabling secure, sandboxed plugins.
- Added core components including `PluginManager`, `host_functions`, and `permissions` for managing the lifecycle and security of extensions.
- Integrated Wasmer runtime for executing WASM modules, enhancing the platform's extensibility.
- Developed a demo extension showcasing the new API, significantly reducing boilerplate code and improving developer experience.
- Updated documentation to reflect the new architecture and provide guidance for extension development.
- Prepared for testing and validation of the extension system, marking a significant step towards a robust plugin ecosystem.
- Finalized the core synchronization infrastructure, enabling device-independent writes without leader checks.
- Implemented critical components including `TransactionManager`, `SyncProtocolHandler`, and `PeerSync` with enhanced broadcast capabilities.
- Achieved full message routing for state and shared changes, ensuring robust error handling and logging.
- Registered new models in the async-safe registry, facilitating state-based and log-based synchronization.
- Documented implementation progress and architecture changes, highlighting the transition to a leaderless model.
- Prepared for integration testing with remaining tasks outlined for backfill and retry queue implementation.
- Added `apply_state_change` method to the `location` model for idempotent state-based replication, allowing device-owned data to be synchronized without conflicts.
- Introduced `apply_shared_change` method in the `tag` model to handle shared resources with union merge conflict resolution, preserving tags with the same name in different contexts.
- Enhanced documentation to clarify the synchronization strategies for device-owned and shared models, including error handling and usage examples.
- Updated tests to validate the new functionality and ensure correct behavior during synchronization processes.