-
-
Notifications
You must be signed in to change notification settings - Fork 0
Release: audit, design system, UX, and product improvements #206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Changes from all commits
Commits
Show all changes
183 commits
Select commit
Hold shift + click to select a range
9a48ab2
feat(api): add notebookSyncLog table to Drizzle schema
tomymaritano 3d49703
feat(storage): add notebook sync tracking migration with triggers
tomymaritano b6c0d96
feat(desktop): add notebook sync methods to ApiClient
tomymaritano 403642e
test(sync-core): add tree validation unit tests for notebook sync
tomymaritano 628b16b
feat(api): add notebook sync pull/push endpoints with tree validation
tomymaritano a9fde10
feat(storage): add sync methods to SQLiteNotebookRepository
tomymaritano 26401e3
feat(desktop): integrate notebook sync into SyncService
tomymaritano db02671
fix(desktop): fix Timestamp type casts and use static createNotebook …
tomymaritano 535d53c
refactor(sync-core): extract shared tree validation to sync-core package
tomymaritano 4055595
chore: format notebook sync code and fix unused variable
tomymaritano 305bcb5
test(sync-core): add SyncQueue unit tests
tomymaritano fcd26b9
test(sync-core): add SyncEngine unit tests
tomymaritano a88f19d
style: format sync-core test files
tomymaritano 488359e
feat: surface sync conflicts in status indicator
tomymaritano f34ab5e
feat(storage): add tag sync tracking migration (UUID + triggers)
tomymaritano 4d2c4ac
feat(api): add tagSyncLog table to server schema
tomymaritano fff8cd8
feat(api): add tag sync pull/push endpoints
tomymaritano 0782ea8
feat(storage): add tag sync repository methods
tomymaritano 1375fcd
fix(storage): remove double-invocation on transaction calls
tomymaritano 51e8112
feat(desktop): add tag sync API client methods
tomymaritano 2e60230
feat(desktop): add IPC bridge for tag sync
tomymaritano 26f2757
feat(desktop): integrate tag sync into sync cycle
tomymaritano 043148c
fix: address PR review feedback for notebook sync
tomymaritano e8250b8
Merge pull request #117 from tomymaritano/feature/notebook-sync
tomymaritano c913465
Merge pull request #118 from tomymaritano/feature/sync-tests
tomymaritano 26bccb5
Merge pull request #119 from tomymaritano/feature/conflict-ui-polish
tomymaritano 31a880e
Merge remote-tracking branch 'origin/develop' into feature/tag-sync
tomymaritano 63610e4
Merge pull request #120 from tomymaritano/feature/tag-sync
tomymaritano 73f9938
chore: add CodeRabbit configuration
tomymaritano cd01862
feat(plugin-api): add PluginHookOptions type for remark/rehype regist…
tomymaritano e1eb092
feat: add safePluginWrapper for graceful plugin failure handling
tomymaritano cb9a82e
feat: pass metadata through plugin registration in PluginRegistry
tomymaritano aa2bbf6
feat(desktop): add CSS for plugin error block boundaries in preview
tomymaritano 46ae6de
feat: hot-reload preview when toggling plugins on/off
tomymaritano fbb5448
feat(plugin-api): upgrade remark/rehype stores with metadata, priorit…
tomymaritano 4a087e7
test(plugin-api): update tests for new metadata and safePluginWrapper
tomymaritano 3902345
docs: add remark/rehype hooks enhancement design plan
tomymaritano 47fec79
docs: add theme system enhancement design
tomymaritano 614b26f
docs: add theme system implementation plan
tomymaritano 06a147d
feat(plugin-api): add theme types with token whitelist and ThemeRegis…
tomymaritano f5f8f25
feat(plugin-api): add useThemeOverrides hook and registerTheme contex…
tomymaritano 5fe153e
feat: add nativeTheme IPC sync between main, preload, and renderer
tomymaritano 56ba2a5
feat: add theme settings schema, UI selector, and startup restore
tomymaritano 1f61ed7
test: add theme token validation and ThemeRegistry store tests
tomymaritano bf58f4a
docs: add Data Access API design document
tomymaritano 7bda4c1
docs: add Data Access API implementation plan
tomymaritano b44fc75
feat(plugin-api): add DataAPI types, query options, and DataAccessError
tomymaritano 9e16eec
feat(plugin-api): add DataAPI interface, bridge, and createDataAPI fa…
tomymaritano 78a20cd
test(plugin-api): add comprehensive tests for createDataAPI
tomymaritano 3d16297
feat(plugin-api): wire DataAPI into PluginRegistry and PluginHost
tomymaritano d8f8ca6
feat(plugin-api): export DataAPI types and factory from barrel
tomymaritano 589fe17
feat: wire DataAPI bridge to IPC in App.tsx and fire data events
tomymaritano 9f6f229
feat(api): add device list and rename endpoints
tomymaritano 48195ab
feat(api): add device revoke and revoke-others endpoints
tomymaritano 8ea9877
fix(api): reject token refresh for revoked devices
tomymaritano 016a524
feat(desktop): add device management IPC handlers
tomymaritano 0cd1214
feat(desktop): expose devices IPC bridge in preload
tomymaritano 308c229
feat(desktop): add device management UI in settings
tomymaritano d1c3cb7
test(api): scaffold test infrastructure with vitest and helpers
tomymaritano 2cb58bd
test(api): add note sync pull endpoint tests
tomymaritano fcc9d96
test(api): add note sync push and conflict detection tests
tomymaritano 9f137d3
test(api): add notebook sync and tree validation tests
tomymaritano 36e1a5b
test(api): add tag sync and sync status endpoint tests
tomymaritano d104dd1
test: add encryption round-trip tests for AES-256-GCM
tomymaritano a6b3558
docs: add sync hardening design and implementation plan
tomymaritano 0e435e2
feat(storage): add sync_history migration for sync cycle metrics
tomymaritano 080cb68
feat(storage): add sync history repository methods
tomymaritano 3646cb2
feat(api-client): add bandwidth tracking to request method
tomymaritano 57d4303
feat(sync): record sync history with per-cycle metrics and bandwidth
tomymaritano 8153c78
feat(ipc): expose sync history via IPC and preload bridge
tomymaritano fc9ab96
feat(sync): auto-resume sync on network reconnect with debounce
tomymaritano 99b3f56
feat(ui): add sync history section to Settings with bandwidth display
tomymaritano f4e904c
style: fix Prettier formatting across theme system and sync files
tomymaritano 1e1a44c
docs: add Phase 2 completion design (2.4 + 2.6)
tomymaritano 5af6419
docs: add Phase 2 completion implementation plan (2.4 + 2.6)
tomymaritano 71bf473
fix(plugins): add enum and range to pluginScanner config schema type
tomymaritano 249a2ad
feat(plugin-api): add validateConfigValue for config schema enforcement
tomymaritano 801a738
feat(plugins): validate config values before persisting
tomymaritano 17c9ff2
feat(plugins): track load timing per plugin in runtime store
tomymaritano 3dabece
feat(plugins): add dev-mode Plugin Inspector with load timings and er…
tomymaritano 38a5170
fix: address CodeRabbit review comments on remark/rehype hooks
tomymaritano c099dbd
fix: address CodeRabbit review comments on theme system
tomymaritano b8a4e81
docs: add theme system implementation plan
tomymaritano e013638
feat(plugin-api): add theme types with token whitelist and ThemeRegis…
tomymaritano c87de4e
feat(plugin-api): add useThemeOverrides hook and registerTheme contex…
tomymaritano 2c753b3
feat: add nativeTheme IPC sync between main, preload, and renderer
tomymaritano 6948a26
feat: add theme settings schema, UI selector, and startup restore
tomymaritano ff0e19b
test: add theme token validation and ThemeRegistry store tests
tomymaritano 35c346e
style: fix Prettier formatting across theme system and sync files
tomymaritano 35f3804
docs: complete documentation update for v0.8
tomymaritano 09cf396
feat: add docs links, bug reporting, and contributor onboarding
tomymaritano d773955
Merge pull request #122 from tomymaritano/feature/theme-system
tomymaritano bc424cb
style: fix prettier formatting
tomymaritano c8d8833
style: fix prettier formatting
tomymaritano d8846d9
style: fix prettier formatting
tomymaritano 188c7d8
style: fix prettier formatting
tomymaritano d86c2ec
style: fix prettier formatting
tomymaritano d096658
style: fix prettier formatting
tomymaritano 65abbd6
style: fix prettier formatting
tomymaritano d6783af
fix: address CodeRabbit review comments on PR #127
tomymaritano df64ff5
fix: address CodeRabbit review comments on PR #123
tomymaritano f9766d3
style: fix prettier formatting in docs
tomymaritano 452f3bd
Merge pull request #128 from tomymaritano/feature/docs-update
tomymaritano 3f7b49d
Merge remote-tracking branch 'origin/develop' into feature/remark-reh…
tomymaritano 5d112ff
style: fix formatting after merge
tomymaritano 3d41f25
Merge pull request #121 from tomymaritano/feature/remark-rehype-hooks…
tomymaritano 5e3af25
Merge remote-tracking branch 'origin/develop' into feature/phase2-com…
tomymaritano 4b08f07
Merge pull request #127 from tomymaritano/feature/phase2-completion
tomymaritano 7344281
Merge branch 'develop' into feature/data-access-api
tomymaritano b429ab3
Merge pull request #123 from tomymaritano/feature/data-access-api
tomymaritano 3ed08b4
Merge branch 'develop' into feature/device-management
tomymaritano cdd2db0
Merge pull request #124 from tomymaritano/feature/device-management
tomymaritano 177091d
Merge remote-tracking branch 'origin/develop' into feature/sync-tests
tomymaritano 9f2ba75
Merge pull request #125 from tomymaritano/feature/sync-tests
tomymaritano cbe39c8
Merge remote-tracking branch 'origin/develop' into feature/sync-harde…
tomymaritano 38b8128
Merge pull request #126 from tomymaritano/feature/sync-hardening
tomymaritano 592d889
fix: resolve CodeRabbit review issues across merged PRs
tomymaritano 09ac09a
chore: add Husky pre-commit hooks and auto-merge workflow
tomymaritano 5cd5520
fix: use gh pr merge --auto for automerge workflow
tomymaritano 2ef5a9a
ci: level up CI pipeline and Husky hooks
tomymaritano a8bf258
fix: remove process.env.NODE_ENV check from browser-only plugin-api
tomymaritano 0999107
Merge pull request #129 from tomymaritano/fix/coderabbit-issues
tomymaritano 40c5216
Merge pull request #130 from tomymaritano/feature/husky-automerge
tomymaritano d65eb5c
feat: unify docs-site and marketing-site into single Next.js app (#132)
tomymaritano 8dc7079
feat: plugin auto-disable + CLI commands (Phase 2.5 & 3.1) (#131)
tomymaritano 024e46c
fix: wrangler-action pnpm monorepo compatibility (#134)
tomymaritano 193bbce
fix: create Cloudflare Pages project before deploy (#136)
tomymaritano d5cd8ed
fix: use npx wrangler for Cloudflare Pages deploy (#139)
tomymaritano cfe513d
fix: enable Next.js static export for Cloudflare Pages (#141)
tomymaritano 21be0a5
feat(web): full website redesign with shadcn/ui + Magic UI (#142)
tomymaritano b959a25
feat(web,desktop,api): website redesign + auth UX rethink (#148)
tomymaritano 00e25bf
Merge remote-tracking branch 'origin/main' into develop
tomymaritano 04e4e18
feat(desktop,api): complete Phase 1-3 roadmap implementation
tomymaritano 21af479
feat(ai,plugins): complete Phase 4-5 — AI knowledge & extensibility
tomymaritano 4ccab57
feat(ai): complete Phase 4-5 — AI command execution + plugin bridge (…
tomymaritano e908280
chore: Tailwind v4 canonical classes + tsconfig cleanup (#151)
tomymaritano 8a1f5c8
feat(sync): connect auth → payment → sync flow with license gating (#…
tomymaritano a24a231
feat(ai-core): provider-agnostic AI architecture with streaming (#156)
tomymaritano 64d7010
feat(release): automated release pipeline with semantic-release (#157)
tomymaritano f686ab6
fix(web): add cleanUrls to fix /auth/verify 404 (#164)
tomymaritano 9d64ea9
feat(ai): add tool use (function calling) to AI assistant (#165)
tomymaritano a472580
feat(share): public notes API with metadata for portfolio consumption…
tomymaritano 6e05279
Merge remote-tracking branch 'origin/main' into develop
tomymaritano b2f65aa
fix(web,api): render shared notes as markdown + handle subscription.c…
tomymaritano 01b51cb
Merge branch 'main' into develop
tomymaritano f6ddcad
feat(desktop): share store + note list and editor UI improvements
tomymaritano 41c811c
feat: AI context scoping, newsletter unsubscribe page, create-note sc…
tomymaritano 078c8f4
feat(mcp): add MCP server for Claude Code integration
tomymaritano 7030149
fix(ui): modernize AI panel sidebar with cleaner chat design
tomymaritano ad325d8
feat(ai): OpenAI + Ollama providers, secure key storage, Connect flow UI
tomymaritano 1680e01
fix(ui): settings visual refresh — card layout, tighter controls, cle…
tomymaritano 31c5474
feat(admin): add dashboard with app metrics and admin API
tomymaritano 7fd0ee1
feat(dashboard): standalone layout with sidebar, improved UI, admin e…
tomymaritano 2bf9c1e
Merge remote-tracking branch 'origin/main' into develop
tomymaritano 20e101c
ci: add workflow_dispatch to build workflow
tomymaritano e80caf8
fix(mcp): add sql.js type declarations for CI build
tomymaritano e3b2ef8
fix(ci): bust corrupted electron-builder cache for Linux build
tomymaritano 1e20308
fix(ci): clean fpm cache before Linux build to fix 7zip extraction error
tomymaritano fb0dafc
feat: fix cross-device sync with E2EE key hierarchy and docs cleanup …
tomymaritano 3b01d4b
fix: address Codex review findings for sync and deep link (#178)
tomymaritano 3f0bc7f
Merge remote-tracking branch 'origin/main' into develop
tomymaritano 578ad70
fix: move deep link handlers into primary instance block
tomymaritano ab4a486
chore(deps): bump pnpm/action-setup from 4 to 5 (#182)
dependabot[bot] dc5bc73
chore(deps): bump actions/labeler from 5 to 6 (#183)
dependabot[bot] 075995d
chore(deps): bump github/codeql-action from 3 to 4 (#181)
dependabot[bot] 0e85b24
fix: comprehensive project audit — CI, security, types, and dependencies
tomymaritano 472bc4e
fix: floating promises, Electron upgrade, and renderer tests
tomymaritano 4e36788
feat: design system primitives, save indicator, toast system, and UX …
tomymaritano d2d763f
refactor: design system consistency, onboarding, and sync progress
tomymaritano 52a2bbe
feat: advanced search filters and functional plugin marketplace
tomymaritano 68c56b6
feat: high-quality table rendering and improved document export
tomymaritano 2672cdc
Merge remote-tracking branch 'origin/main' into develop
tomymaritano 4ace564
fix: address all PR review comments (security, a11y, UX, minor)
tomymaritano 9bccc62
fix: resolve remaining PR review comments (encryption, sync, CI, prel…
tomymaritano a1f8422
fix: resolve CI failures (mcp-server build, ESLint projectService)
tomymaritano ef6c615
fix: address all inline and duplicate PR review findings
tomymaritano 549339d
Merge remote-tracking branch 'origin/main' into develop
tomymaritano 19bf2ca
docs: enforce branch protection rules in CLAUDE.md (#199)
tomymaritano 920cad9
fix: Modal hook order + plugin install slug check (#200)
tomymaritano 321da87
fix: plugin install integrity check + branch rules (#201)
tomymaritano ebb4c17
fix: resolve main→develop merge conflicts (#203)
tomymaritano b0700b4
fix: address all PR #202 review findings (#204)
tomymaritano b5d2733
fix: sync main into develop for clean release (#205)
tomymaritano File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Including
note?.idin this dirty-tracking effect makes it run during note switches whileisDirtycan still be the previous note's value (the buffer reset is scheduled in a separate effect). In that caseprevDirtyRefis set from stale state, and the next clean state for the new note is misread as a successful save, causing a misleading “Saved” flash even when the user only changed selection.Useful? React with 👍 / 👎.