|
|
91a376ac0a
|
feat(refactor): dynamic agent status ticker card across all execution rounds
|
2026-05-21 17:24:12 -07:00 |
|
|
|
b3dd3714c3
|
feat(refactor): live zed-style codebase files autocomplete and context attachment
|
2026-05-21 17:20:31 -07:00 |
|
|
|
8049a7f1ab
|
feat(refactor): premium zed-style chat UI, collapsible reasoning, and comprehensive strict type sweeps
|
2026-05-21 17:05:42 -07:00 |
|
|
|
7c45fdc5cc
|
fix(ai): bump roundSinceText cutoff to 30 to prevent panic loops
|
2026-05-19 15:26:15 -07:00 |
|
|
|
63b64d5fc2
|
feat(ui): implement explicit chat modes for collaborate, delegate, and vibe coding
|
2026-05-19 15:18:30 -07:00 |
|
|
|
618f7796b2
|
feat(ai): optimize tool loops, fix deployments, and integrate new onboarding flow
|
2026-05-19 12:52:47 -07:00 |
|
|
|
331312b648
|
fix(ui): adopt SWR for useAnatomy to deduplicate requests across components and fix API flooding
|
2026-05-17 20:18:19 -07:00 |
|
|
|
6b8862ef2b
|
feat(api): comprehensive QA hardening — security gates, chat improvements, beta scaffolds
Closes checklist items F-01..F-06, D-01..D-28, S-01..S-10, C-01..C-07,
B-01..B-07, R-01..R-02, O-03.
Security (28 deletions + 10 auth gates):
- Delete 28 unauthenticated debug/cursor/firebase/test routes
- Gate ai/chat, ai/conversation, context/summarize, work-completed with withTenantProject/withAuth
- Add HMAC-SHA256 signature verification to webhooks/coolify
- Switch all admin secret comparisons to timingSafeStringEq
Foundations (lib/server/*):
- api-handler.ts: withAuth, withTenantProject, withWorkspace, withAdminSecret, withRateLimit
- logger.ts: structured request-scoped logging with turnId
- audit-log.ts: writeAuditLog helper + audit_log table
- rate-limit.ts: Postgres sliding window rate limiter
- coolify-webhook.ts: verifyCoolifySignature
- timing-safe.ts: timingSafeStringEq
Chat hardening (chat/route.ts):
- MAX_TOOL_ROUNDS 15 → 8 (C-01)
- Loop detection: hard-break at 3 identical fingerprints (was 5) (C-02)
- Add 6-consecutive-tool-call hard-break (C-02)
- Mode: respond first, act second prompt block (C-03)
- SSE heartbeat every 25s via setInterval (C-04)
- Per-tool 45s timeout via Promise.race (C-05)
- turnId per-turn UUID for log correlation (C-06)
- Recovery fires when roundsSinceText >= 4 (C-07)
- SSE plan event on plan_task_add/edit (B-05)
Beta features:
- invites table + GET/POST /api/invites (P4.8)
- invites/[token] validate + redeem (P4.8)
- fs_project_dev_servers table + lib/server/dev-server-state.ts (P6.B1)
- fs_project_secrets table + CRUD routes (P6.D2)
- lib/integrations/brief-extract.ts (P3.7)
Documentation:
- app/api/ROUTES.md: full route map with auth + tenant
|
2026-05-17 19:17:22 -07:00 |
|
|
|
8cb7a9450b
|
feat(ui): add manual reload button to preview device toggles
|
2026-05-15 16:31:31 -07:00 |
|
|
|
4adf7a7659
|
feat(ui): remove design tab from primary navigation
|
2026-05-15 15:49:01 -07:00 |
|
|
|
dc82ccc47a
|
feat(ui): move preview device toggles into the global nav rail
|
2026-05-15 15:42:49 -07:00 |
|
|
|
f3b957ace2
|
feat(ui): add showcase toggle and runtime renderer to design explorer
|
2026-05-15 14:09:27 -07:00 |
|
|
|
b4821b3eba
|
fix(ui): handle fallback UI for design systems without visual previews
|
2026-05-15 14:00:01 -07:00 |
|
|
|
f9d74205fb
|
feat(ui): implement split-pane live preview for design systems
|
2026-05-15 13:56:12 -07:00 |
|
|
|
8487acc9e0
|
fix(ui): import missing Sparkles icon in chat panel
|
2026-05-15 13:15:10 -07:00 |
|
|
|
69c89892d5
|
feat(ui): add animated thinking bubble to chat panel to indicate ai progress
|
2026-05-13 20:36:22 -07:00 |
|
|
|
432065d18f
|
feat(ui): add expandable tool details to timeline tool group components
|
2026-05-13 15:12:58 -07:00 |
|
|
|
abf9bf89c2
|
chore: convert submodules to standard directories for true monorepo structure
|
2026-05-13 14:54:23 -07:00 |
|