old4ever
735350a4d1
chore: create .chrome directory
...
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev >
2026-04-07 17:06:19 -04:00
old4ever
685241c92f
chore: update skills
...
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev >
2026-04-07 17:06:08 -04:00
old4ever
7ffcb4dc43
chore: add dokploy mcp
...
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev >
2026-04-07 16:12:28 -04:00
old4ever
be70a4579f
Merge pull request 'feat: multimodal AI event creation with image support' ( #1 ) from image-parse into main
2026-04-07 15:21:27 -04:00
old4ever
f38b0188df
🚨 fix: resolve all linter and typecheck warnings across codebase
2026-04-07 14:42:24 -04:00
old4ever
54ca910609
🔧 chore: add biome config for Tailwind CSS and CSS module declarations
2026-04-07 14:42:17 -04:00
old4ever
fab0d2ff47
refactor(components): derive ImagePicker variant types from buttonVariants
...
Replace manually duplicated variant/size type literals with
VariantProps<typeof buttonVariants> for type safety and
consistency with the Button component.
2026-04-07 13:11:42 -04:00
old4ever
a7716d87df
fix(components): add unoptimized image prop, overflow containment, and accessibility
...
Add unoptimized prop to image preview to support blob URLs, contain
overflow on preview container, replace div with semantic section
element in DragDropContainer with aria-label, and import shared
image constants.
2026-04-07 13:11:35 -04:00
old4ever
096f548ec3
refactor(page): extract AI handler helpers and add client-side image validation
...
Break down the monolithic handleAiCreate into focused helpers
(sendAiRequest, persistAiEvents, populateEventForm), add client-side
image file validation before upload, and use toast.promise finally
callback for loading state cleanup.
2026-04-07 13:11:26 -04:00
old4ever
79f98ebfd3
refactor(api): simplify AI event route with extracted utilities and env-based model
...
Replace inline JSON extraction with the shared json-utils module,
extract chat response content parsing into a dedicated helper, make
the AI model configurable via AI_MODEL env var, and improve error
messages for production safety.
2026-04-07 13:11:15 -04:00
old4ever
7bb4f2be9d
refactor(types): strengthen Zod schemas with regex validation and derive CalendarEvent
...
Add regex-based data URL validation for images, compute binary size
from base64 for accurate 10MB limit, enforce datetime strings with
offset for start/end fields, and derive CalendarEvent from the AI
response item type to eliminate field duplication.
2026-04-07 13:11:05 -04:00
old4ever
dc4204a740
refactor(lib): extract shared image constants and JSON parsing utilities
...
Move image extensions, MIME types, and size limit into a dedicated
constants module. Extract JSON-from-text parsing into a pure utility
function for reuse across the codebase.
2026-04-07 13:10:59 -04:00
old4ever
a0a7e021a8
style: standardize import ordering, type imports, and formatting in source files
...
Sort imports alphabetically, convert value imports to type-only where
appropriate, normalize indentation to tabs, and sort exports
alphabetically across UI components, pages, and lib modules.
2026-04-07 13:10:49 -04:00
old4ever
cbae9fa1c9
style: standardize formatting in opencode tooling files
...
Reformat JSON configs and TypeScript scripts to use consistent
tab indentation, semicolons, and double quotes.
2026-04-07 13:10:35 -04:00
old4ever
4e09059a3d
chore(deps): add @typescript/native-preview, biome lint integration, and typecheck script
...
Add @typescript/native-preview for tsgo typechecking, integrate biome
check into the lint script, and add a dedicated typecheck script.
2026-04-07 13:10:16 -04:00
old4ever
95de6ae46a
feat(page): wire image upload state, base64 conversion, and API integration into home page
2026-04-07 11:58:10 -04:00
old4ever
5e888ce7ae
feat(components): add image preview, picker, and clear controls to AIToolbar
2026-04-07 11:58:01 -04:00
old4ever
94de1dde0e
feat(components): add image drag-drop support to DragDropContainer
2026-04-07 11:57:47 -04:00
old4ever
c02c6ece5d
feat(components): add ImagePicker file upload component
2026-04-07 11:57:32 -04:00
old4ever
8d1b04f646
feat(api): refactor AI event route with Zod validation, multimodal image support, and JSON extraction
2026-04-07 11:57:22 -04:00
old4ever
3d6999312c
feat(lib): add AI event Zod schemas for request validation and response parsing
2026-04-07 11:57:11 -04:00
old4ever
6944215578
chore(deps): add zod dependency
2026-04-07 11:57:01 -04:00
old4ever
f8213883df
chore: zod skill
...
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev >
2026-04-07 11:31:34 -04:00
old4ever
c2263602c4
chore: install openagent opencode
...
Signed-off-by: Dmytro Stanchiev <git@dmytros.dev >
2026-04-07 11:31:26 -04:00
old4ever
b4c03ff25e
style(ui): standardize UI component file formatting
2026-04-07 08:10:13 -04:00
old4ever
fd5716f39e
style(components): standardize main component file formatting
2026-04-07 08:10:05 -04:00
old4ever
954e73c007
style(app): standardize app page file formatting
2026-04-07 08:09:56 -04:00
old4ever
48ef4f60df
style(api): standardize API route file formatting
2026-04-07 08:09:49 -04:00
old4ever
e39ba6be97
style(lib): standardize utils file formatting
2026-04-07 08:09:43 -04:00
old4ever
3b7c246a47
style(lib): standardize rfc5545-types file formatting
2026-04-07 08:09:40 -04:00
old4ever
5be55cec7c
style(lib): standardize events-db file formatting
2026-04-07 08:09:36 -04:00
old4ever
dab77befc2
style(auth): standardize auth file formatting
2026-04-07 08:09:32 -04:00
old4ever
076cf8acd0
style(db): standardize database source file formatting
2026-04-07 08:09:26 -04:00
old4ever
ae8d547486
style(public): standardize manifest.json formatting
2026-04-07 08:09:19 -04:00
old4ever
3d9e2452c4
style(db): standardize database migration file formatting
2026-04-07 08:09:15 -04:00
old4ever
db9d6399dd
style(config): standardize configuration file formatting
2026-04-07 08:09:09 -04:00
old4ever
a897e8ead1
feat(lib): add OpenRouter client implementation
2026-04-07 08:08:58 -04:00
old4ever
c3e3018018
feat(deps): add @openrouter/sdk dependency
2026-04-07 08:08:51 -04:00
old4ever
be389c6cfa
style(skills): standardize utility-types.ts formatting
2026-04-07 08:08:44 -04:00
old4ever
ada8e03a04
chore(config): add OpenRouterTeam to skill selector repos
2026-04-07 08:08:36 -04:00
old4ever
956de68591
style(skills): standardize skill metadata JSON formatting
2026-04-07 08:08:28 -04:00
old4ever
e25f917b9a
chore(skills): add create-agent and typescript-sdk skills
2026-04-07 08:08:01 -04:00
old4ever
3fec791f28
Merge branch 'betterauth-migration'
2026-04-06 23:38:56 -04:00
old4ever
5922a835cb
style: fix unused variable warnings
...
Prefix unused error variables with underscore to indicate
intentionally unused catch parameters.
2026-04-06 23:27:32 -04:00
old4ever
bd861e56c0
chore: remove stale FIXME.md
...
Remove outdated FIXME file about minimatch types from 2025.
2026-04-06 23:26:26 -04:00
old4ever
403f41f078
fix(auth): sanitize error messages in error page
...
Add basic XSS sanitization by removing angle brackets from error
URL parameters before rendering.
2026-04-06 23:26:09 -04:00
old4ever
4e7c56eec9
fix(ui): add error handling and loading state to sign-in
...
Add try/catch with toast notification and loading state for sign-in
button to improve UX and error visibility.
2026-04-06 23:25:40 -04:00
old4ever
8d9329050d
fix(ui): add error handling to sign-out
...
Add try/catch with toast notification for sign-out failures.
2026-04-06 23:24:40 -04:00
old4ever
e1fd7dc5a3
feat(api): add input validation to AI endpoints
...
Add prompt validation to ai-event (non-empty string, max 2000 chars)
and events array length validation to ai-summary (max 100 items)
to prevent abuse and injection attacks.
2026-04-06 23:24:15 -04:00
old4ever
a4656520f8
fix(db): ensure pgcrypto extension for UUID generation
...
Add CREATE EXTENSION IF NOT EXISTS pgcrypto to migration for
compatibility with older PostgreSQL versions.
2026-04-06 23:23:26 -04:00