Commit Graph

12 Commits

Author SHA1 Message Date
saravanakumardb1
3260b7ea0a feat(smart-actions): F1-F4 inline editor AI, F15-F19 mobile capture modes, F25-F27 scheduler/webhooks/approval
F1-F4: Inline editor AI
- Backend: expand CopilotAction with fix-rewrite, change-tone, continue, explain
- Backend: add tone parameter to copilot route for change-tone action
- Web: copilot-client adds CopilotTone type and tone parameter
- Web: NoteEditor toolbar gains AI row with Fix & Rewrite, Change Tone dropdown,
  Continue Writing (appends at cursor), Explain (inline popover)

F15-F19: Mobile capture enhancements
- Backend: POST /note-prompts/url-extract endpoint (fetch, strip HTML, LLM summarize)
- Mobile API: extractFromUrl() and copilotTransform() client functions
- Mobile: capture tab rewritten with 6 capture modes grid (text, photo, voice,
  URL, scan, paste) — URL extract + clipboard paste fully wired, camera/voice/scan
  surface native permission prompts (require expo-av/expo-image-picker)
- expo-clipboard added as dependency

F25-F27: Scheduled actions, webhook triggers, approval-gated actions
- New scheduler.ts module with PromptScheduleDoc + PromptWebhookDoc types
- Schedule CRUD: GET/POST/PATCH/DELETE /prompt-schedules
- Webhook CRUD: GET/POST/PATCH/DELETE /prompt-webhooks
- POST /prompt-webhooks/:id/trigger — execute template against note
- Scheduler loop (60s tick) with cron next-run calculation
- Diagnostics endpoint: GET /prompt-schedules/diagnostics
- Cosmos containers: note_prompt_schedules, note_prompt_webhooks
- PromptTemplateDoc gains requiresApproval field (F27)
- Runner produces approvalState: proposed|applied based on template flag
- Create/Update schemas accept requiresApproval boolean
2026-04-06 10:25:34 -07:00
370e96fa45 test(mobile): settings smoke test; docs: capture points to blob-upload
- settings.test.tsx mirrors auth/home import smoke pattern
- Capture screen comment: future uploads via api/blob-upload

Made-with: Cursor
2026-03-31 01:51:07 -07:00
saravanakumardb1
83f4953870 fix(mobile): add missing accessibilityLabels across all screens
- settings.tsx: labels on sign-out, feedback type chips, submit button
- capture.tsx: labels on workspace selection chips
- index.tsx: labels on workspace filter chips, note card pressables
- search.tsx: labels on search input, result row pressables
- note/[id].tsx: labels on edit, save, cancel buttons
2026-03-31 00:55:05 -07:00
saravanakumardb1
e4683ad695 fix(mobile): complete block G metadata and accessibility 2026-03-31 00:23:57 -07:00
saravanakumardb1
5d8216066a feat(mobile): wire offline queue enqueue and flush 2026-03-31 00:17:41 -07:00
saravanakumardb1
7d23793728 feat(notes): support mobile all-workspace view 2026-03-10 17:09:16 -07:00
saravanakumardb1
8e577993c0 feat(notes): add mobile workspace selection 2026-03-10 16:54:17 -07:00
saravanakumardb1
5995b6c725 feat(notes): wire backend-backed note workspace slice 2026-03-10 15:53:57 -07:00
saravanakumardb1
f5f141ddb7 fix(mobile): verify scaffold and tighten tooling 2026-03-10 10:14:22 -07:00
saravanakumardb1
a10709f33a feat(mobile): surface offline queue readiness 2026-03-10 09:22:20 -07:00
saravanakumardb1
90558a5537 feat(mobile): add workspace-scoped utility flows 2026-03-10 09:09:14 -07:00
saravanakumardb1
4fb859c81c feat(notes): scaffold product surfaces and backend MCP slices 2026-03-10 08:53:07 -07:00