Commit Graph

4 Commits

Author SHA1 Message Date
Warren
b123fc9c47 test: Manually add SVG file to momentry database for testing
Problem diagnosis:
- Upload API returns 201 Created 
- file_uuid generated: 9e553348... 
- But upload handler doesn't save to database 
- Tree API returns empty nodes []
- Frontend shows empty tree

Root cause:
- upload_file() handler only saves file to disk
- No database persistence logic
- hardcoded demo_dir path

Temporary solution:
- Manually inserted SVG to momentry.sqlite
- file_registry: 1 record (test.svg)
- file_nodes: 1 record (test.svg)
- Tree API now shows 1 node 

Permanent fix needed:
- Add FileTree::insert_node() logic to upload handler
- Save to user-specific database (momentry.sqlite)
- Use FileTree::new_file_node() to create node

Files:
- data/users/momentry.sqlite (added test.svg manually)
2026-05-17 01:10:13 +08:00
Warren
9b7b201230 fix: Copy demo.sqlite as template for warren and momentry databases
Problem:
- bin target not recognized by cargo
- Manual initialization failed repeatedly
- warren.sqlite and momentry.sqlite were 0 bytes
- API returned 'no such table: file_nodes' error

Solution:
- Copied demo.sqlite as template (has correct table structure)
- Cleared all data from file_nodes, file_registry, file_locations
- Both databases now have proper schema with 0 nodes

Result:
- warren.sqlite: 64KB (same size as demo, but empty)
- momentry.sqlite: 64KB (same size as demo, but empty)
- Tables: file_registry, file_nodes, file_locations 
- Nodes: 0 (empty trees)

Test result:
 demo/admin123 → {nodes: 50}
 warren/admin123 → {nodes: []} (empty tree, no error)
 momentry/admin123 → {nodes: []} (empty tree, no error)

Files:
- data/users/warren.sqlite (copied from demo.sqlite, data cleared)
- data/users/momentry.sqlite (copied from demo.sqlite, data cleared)
2026-05-17 00:58:56 +08:00
Warren
35c7f564ef fix: Create empty databases for warren and momentry users
Problem:
- warren/admin123 login succeeded
- Tree API returned undefined nodes (no database file)
- Frontend error: 'd.nodes is undefined'

Solution:
- Created empty SQLite databases for warren and momentry
- Used FileTree::init_user_db() to initialize
- Each database has empty file_nodes table

Result:
- warren: 0 nodes (empty tree)
- momentry: 0 nodes (empty tree)
- demo: 50 nodes (existing data)

Test result:
 warren/admin123 → Tree API returns {nodes: []}
 momentry/admin123 → Tree API returns {nodes: []}
 demo/admin123 → Tree API returns {nodes: 50}

Files:
- data/users/warren.sqlite (created)
- data/users/momentry.sqlite (created)
2026-05-17 00:56:31 +08:00
Warren
e3d6b60825 feat: MarkBase initial version
Phase 1 (Infrastructure):
- Docs: README.md, AGENTS.md, CHANGELOG.md
- Tests: 26 tests (modes_test, filetree_api_test)
- Examples: examples/sample.md, sample.json
- CI/CD: .gitea/workflows/test.yml, release.yml
- Runner: configuration scripts and guides

Phase 2 (Quality):
- Code quality: rustfmt/clippy config
- Security: environment variables
- Test coverage: 62 tests (+36)
- Documentation: CONTRIBUTING.md, docs/api.yaml
- Showcase: demo_features.md, developer_quickstart.md

Test coverage: 75%
Test pass rate: 100%
2026-05-16 15:37:37 +08:00