Commit Graph

452 Commits

Author SHA1 Message Date
869098af1e feat(codebase): auto-expand top-level directories in file tree 2026-06-14 12:34:53 -07:00
691fc73ed1 fix(overview): add missing StatusDot import 2026-06-14 12:25:47 -07:00
ebc84dbdc5 fix(overview): restore missing useAnatomy import 2026-06-13 11:39:56 -07:00
f19155ed44 fix(dashboard): add missing dashboard-ui component kit 2026-06-13 11:31:44 -07:00
8f5853e684 fix(dashboard): apply PageHeaders to correspond with new sidebar names 2026-06-13 11:30:30 -07:00
8a4aad3707 fix(dashboard): rename AI Blueprint to Plan Docs 2026-06-13 11:18:52 -07:00
0bc9e288f1 feat(dashboard): reword and reorder sidebar for non-technical founders
Rewords dev-jargon into approachable business concepts and reorders them by priority (Product > Data/Infra > Ops).
- Plan & Specs -> AI Blueprint
- Code -> Codebase
- Auth / Users -> Users
- Data -> Databases
- Storage -> File Storage
- Services -> Live Servers
- Domains -> Custom Domains
- Logs -> Server Logs
2026-06-13 11:17:36 -07:00
9092b9e549 fix(dashboard): remove Analytics, Marketing, Security, Integrations + fix build
- Deleted unused/stub routes: Security, Analytics, Marketing (+SEO/Social), Integrations
- Removed these routes from the Dashboard Sidebar menu
- Fixed Next.js build errors caused by duplicate component declarations (SectionHeader, KvRow) in overview, hosting, services, and infrastructure by relying fully on the unified dashboard-ui kit.
2026-06-13 11:13:37 -07:00
eb198e2d4d ship: project dashboard pages + sidebar/chat overhaul + log tooling
Ships accumulated WIP that was sitting uncommitted:
- New (home) dashboard route pages: overview, code, data/tables, hosting,
  infrastructure, services, domains, integrations, agents, analytics, api,
  automations, billing, logs, market, marketing(+seo/social), product, security,
  storage, users, settings(app/auth).
- dashboard-sidebar, project-icon-rail, chat-panel updates; mcp + anatomy route
  changes; package.json/lock dependency bumps.
- Coolify log tooling (scripts/fetch-app-logs.mjs + fetch-app-logs-ssh.mjs) and
  ai-new-thread.md "Fetching Production Logs" section.

Excludes throwaway debug scripts and telemetry audit dumps (the latter contain
live credentials and must not be committed).
2026-06-12 18:09:09 -07:00
0f212c750b fix(preview): stop refresh-flicker false-restarts + harden dev container & agent
- isDevServerListening: key off curl EXIT CODE not response time. The 2s
  max-time treated a busy/compiling-but-listening dev server as DEAD, so ensure
  restarted a healthy server on every refresh -> cold compile -> the
  502/no-CSS/broken-images/perfect flicker. Now dead only when BOTH localhost
  and 0.0.0.0 refuse the connection (curl exit 7).
- ensure route: liveness probe is fail-safe (try/catch) -> never 500s or
  needlessly restarts on a probe error; trusts the DB flag instead.
- dev container: reconcile dead orphan containers before resume/start so a
  leftover name no longer triggers 'container name already in use' -> Traefik
  gateway timeout.
- dev container: inject AUTH_SECRET / NEXTAUTH_SECRET / AUTH_TRUST_HOST so
  scaffolded NextAuth apps stop throwing [auth][error] MissingSecret in preview.
- chat prompt: don't bounce a healthy dev server; only claim actions a tool
  actually performed (no hallucinated DB deletes); NextAuth previews pre-wired.
- intent budgets: route 'not appearing/showing/missing' to diagnose; bump
  status_check 12->16, diagnose 15->22 so investigations don't hit the cap.
2026-06-12 18:05:16 -07:00
514f11e80d fix(preview): self-healing dev server so the preview always loads cleanly
The dominant production failure was a dead dev-server process behind a
'running' DB flag (idle-stop / OOM / crash / host restart), which the UI
trusted and embedded -> permanent 502 until a manual restart.

- dev-container.ts: add isDevServerListening() fast liveness probe; stop the
  container entrypoint from auto-running 'npx next dev --webpack' (it competed
  with the managed server, forced the wrong bundler/cwd, and doubled memory);
  drop the fake state='running' seed row; bump dev container memory 1g -> 2g.
- ensure route: verify a 'running' row is ACTUALLY listening and resurrect it
  if dead, instead of trusting the flag; never bounce a healthy server.
- preview page: call ensure on every mount and on refresh (verify + heal),
  force an immediate anatomy refetch on (re)start so a dead frame swaps to
  'warming up' without the 5s lag.

Backstopped by the partial unique index + startDevServer idempotency, so heals
can never duplicate or thrash a server.
2026-06-12 17:30:27 -07:00
0f90ef6f5c Fix preview pipeline: dedup duplicate previews, race-safe dev server start, honest readiness
- Add partial unique index on (project_id, port) for active dev servers so the
  SELECT-then-INSERT race can no longer create duplicate 'Port 3000' rows.
- Make startDevServer race-safe: on unique violation, adopt the winning row
  instead of duplicating.
- ensure route no longer marks a server 'running' before it binds the port;
  the readiness probe flips starting->running only after the port answers.
  Kills the '502 -> broken CSS -> works' refresh loop.
- Deduplicate previews per-port in sortDevPreviewsFrontendFirst as a defensive
  backstop for the dropdown.
- Revert iframe _refresh query-param hack (was forcing cold recompiles).
2026-06-12 16:57:06 -07:00
87acebfab3 fix(preview): resolve ReferenceError on refreshKey initialization order 2026-06-12 16:50:34 -07:00
aa780492fd fix(preview): add 60-second grace period before marking freshly booted servers as zombies to prevent aggressive 502 teardowns 2026-06-12 16:49:31 -07:00
95253c7707 fix(preview): resolve ReferenceError on isForceStarting initialization order 2026-06-12 16:46:35 -07:00
de950b1fb0 Make dev_server_start idempotent to prevent HMR breakage and 502s 2026-06-12 16:42:26 -07:00
76c0241bd1 Save frontend state (layout, sidebar, chat panel, preview refresh fix) before rollback 2026-06-12 16:35:45 -07:00
c3fdc170d1 fix(preview): sync fs_dev_servers state with container suspension to properly handle idle wakeup 2026-06-12 16:08:03 -07:00
68c8d398e3 fix(preview): permanently restore resilient zombie-killer ping to auto-restart suspended containers 2026-06-12 16:03:00 -07:00
191fb10b4b fix(preview): remove zombie killer ping to allow container auto-wake via Traefik 2026-06-12 16:00:47 -07:00
28441e75f2 fix(overview): restore lost Dev Previews and Live endpoints lists that were accidentally overwritten during Dashboard migration 2026-06-12 15:57:14 -07:00
9b56cf362b fix(preview): remove brittle dev server readiness probes; trust that the server will eventually boot 2026-06-12 15:36:35 -07:00
c565a9f6ed fix(preview): properly restore zombie-killer ping with graceful fallback logic 2026-06-12 15:33:30 -07:00
4375fbcb22 fix(preview): resolve 'command not found' by prefixing next dev fallback and prompt recipes with npx 2026-06-12 15:29:01 -07:00
b2bb1bc1e9 fix(preview): remove zombie killer ping to allow container auto-wake via Traefik 2026-06-12 15:24:59 -07:00
07fb3377ad fix(preview): restore resilient zombie-killer logic to auto-restart suspended previews 2026-06-12 15:18:34 -07:00
c5454347f9 fix(preview): remove zombie killer ping to allow container auto-wake via Traefik 2026-06-12 15:12:14 -07:00
27a1f308d0 fix(preview): add 60-second grace period before zombie killer murders booting dev servers throwing 504s 2026-06-12 15:05:24 -07:00
5a7e1abcc7 design(preview): restore path input box with datalist dropdown for free-text navigation 2026-06-12 15:03:16 -07:00
960232e525 design(preview): match toggle button sizes to device toggles 2026-06-12 15:00:40 -07:00
6687b79bfd design(chat): replace internal expand button with floating edge toggle; add ChevronLeft 2026-06-12 13:01:36 -07:00
2b569bd55f fix(dashboard): re-add missing Users icon import for sidebar 2026-06-12 12:55:54 -07:00
9abc957260 design(dashboard): reorder sidebar navigation items per requested priority 2026-06-12 12:54:39 -07:00
f6f7867d77 design(chat): fix z-index stacking to ensure collapse button floats above dashboard pane 2026-06-12 12:51:47 -07:00
5b26dbf80d design(chat): fix clipping of collapse button by adjusting overflow on structural chat container 2026-06-12 12:47:43 -07:00
81994d4b6c design(dashboard): remove unused routes, rename existing routes to match Base44 menu structure 2026-06-12 12:42:19 -07:00
1532cb6111 design(dashboard): rebuild sidebar to match Base44 navigation hierarchy and aesthetic 2026-06-12 12:34:39 -07:00
69e8086018 fix(preview): resolve ReferenceError by hoisting isForceStarting state declaration 2026-06-12 12:28:22 -07:00
2a2962a098 design(preview): replace path input with strict dropdown menu 2026-06-12 12:22:50 -07:00
cd26dd807f feat(preview): add server/port dropdown to address bar 2026-06-12 12:20:48 -07:00
5ed10c4077 feat(preview): make address bar interactive for routing inside iframe 2026-06-12 11:57:36 -07:00
c1a43d18a6 feat(preview): add tablet device mode with scaled frame styling 2026-06-12 11:54:47 -07:00
2e8d9ddecc design(preview): organize address bar tools, move refresh button to far left 2026-06-12 11:50:54 -07:00
a52557f35b design(preview): consolidate desktop/mobile toggles inside the URL bar for a cleaner layout 2026-06-12 11:48:33 -07:00
f510848173 design(preview): move refresh button inside the address bar for a cleaner layout 2026-06-12 11:46:14 -07:00
308d7cd5e1 design(preview): remove text labels from device toggles to match reference 2026-06-12 11:45:09 -07:00
c337655dde design(preview): match header layout order to Base44 reference (URL bar on left, device toggles on right) 2026-06-12 11:43:25 -07:00
730154c2f9 fix(hosting): restore missing CSS properties for hosting tab layout 2026-06-12 11:39:49 -07:00
3833ba5dd2 fix(preview): do not murder dev servers that take longer than 2 seconds to compile webpack 2026-06-12 11:36:34 -07:00
2e66ea087b fix(preview): resolve SQL column error on dev server force-start 2026-06-12 11:31:15 -07:00