feat: migrate project storage from data.json to vault files#2324
feat: migrate project storage from data.json to vault files#2324
Conversation
1419138 to
d8e0d55
Compare
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d8e0d55fe6
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@codex review |
Migrate project definitions and metadata from data.json to individual markdown files in the vault's projects directory. - Project file manager with YAML frontmatter parsing and persistence - Migration logic from legacy data.json format with unsupported/ backup - Project UI components (AddProjectModal, ProjectList, ProgressCard) - Chat history integration for the new storage model - Status sorting, cache-first ordering, and URL removal in processing - Atomic cache operations to prevent transient disappearance on rename - Awaited context cache cleanup on all delete/rename/folder-switch paths - Raw-content-first frontmatter parsing to avoid stale metadataCache - BOM/CRLF support in frontmatter read and write helpers - Accessibility: aria-labels on all icon-only buttons
d8e0d55 to
ddbe5bf
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d8e0d55fe6
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 159d74f0da
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 159d74f0da
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@codex review |
- Defer vault listener registration from constructor to initialize() to avoid premature cache mutations and frontmatter writes during initial vault load (before onLayoutReady). - Coerce numeric YAML project IDs to strings so bare numeric values like `copilot-project-id: 123` are not silently dropped.
159d74f to
7c3f04f
Compare
|
Codex Review: Didn't find any major issues. Can't wait for the next one! ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback". |
Summary
data.json(settings.projectList) to individual markdown files in the vault's projects directoryProjectFileManagerfor CRUD operations with YAML frontmatter parsing/persistenceProjectRegisterfor vault-event reconciliation (create/rename/delete/modify)unsupported/backup for failed entriesAddProjectModal,ProjectList,ProgressCard,ProcessingStatusreplaceCachedProjectRecordByFilePath) to prevent transient disappearance on renamereadFrontmatterViaAdapterandpatchFrontmatteraria-labelto all icon-only buttons for accessibilityTest plan
data.jsonprojects migrate to vault files correctlyunsupported/folderActual Effect
2026-03-22.00.20.26.mp4