Item layout, sprint planning, attachments and access
Item layout, sprint planning, attachments and access. 130 PRs from 2026-09-23 to 2026-09-30.
Item layout, sprint planning, attachments and access
130 pull requests merged 2026-09-23 to 2026-09-30.
Highlights
A new layout for every item: an entity bar, a document column with tabs, and a properties rail with the Golden Thread, in page, modal and dock
Sprint planning: the Plan view with one-click moves, inline edits and hours per person, and a sprint board that opens on the sprints around now
Attachments: screenshots inline in descriptions and specifications, an Attachments tab on Work and Feedback, a viewer, and MCP tools
Access by function: per-area access for members and invitations, enforced in the app, the API, the connector and the database, with a sidebar, landing page and dashboard per function
Signals bar on every list page, with Focus and a compact state
Live refresh: open pages update on changes from MCP, the API, other tabs and teammates
A key for every control: hold Ctrl to see them
Activity page, the audit log out of beta, and every write recorded on the server
Notifications: every toggle delivers, Microsoft Teams, and 11 new kinds
GitHub: pull requests link back to their Work, commits link to Work, and the crawl reads every repository's full history
What's new dialog and product update email
The new productos.ca: home, pricing, agents, compare, method, switch and security pages, and Markdown for agents
Bookmarkable views on every list page, links to item tabs, and one date format
Feature flags with a staff dashboard
Every change
feat(legal): publish the privacy policy and terms behind the signup links (#221)
chore(claude): sync work in this repo to the ProductOS workspace over MCP (#227)
fix(github-app): confirm the installer can see an installation before connecting it (#228)
feat(mcp): record past sessions with their real start and end times (#229)
feat(api): make objectives.initiative_ids writable through the v1 API and the MCP catalog (#230)
fix(entity-detail): load every detail in one step, with no flicker in page, dock or modal (#231)
feat(mcp): search finds words in any order, sequence ids and typos (#232)
fix(copilot): apply bulk, link and status proposals from the chat (#233)
fix(entity-detail): give page, dock and modal footers the sidebar footer's height (#234)
feat(sidebar): open a flyout of every page when hovering a group on the collapsed rail (#235)
feat(entity-detail): expand long-form fields to fill the modal, dock or page (#236)
fix(knowledge): store workspace identity per workspace, not per user (#237)
fix(mcp): search #229 as the pull request it names, not as row 229 (#238)
fix(entity-detail): leaving page mode for dock or modal no longer crashes the app (#239)
fix(oauth): line up the consent screen's permission descriptions with the other rows (#240)
fix(mcp): start_session hands back the feature's open session instead of duplicating it (#241)
fix(command-palette): feedback rows name their linked accounts, so an account name finds its feedback (#242)
feat(mcp): search_documents pages, filters GitHub and says when GitHub cannot answer (#243)
feat(features): link a feature to a GitHub commit, not only a pull request (#244)
feat(mcp): links carry a junction's extra fields (kind, confidence, role, allocation_pct) (#245)
feat(entity-detail): show linked Work as the release scope table on every detail page (#246)
fix(mcp): external links read back, detach, update and attach once (#247)
feat(github): link pull requests back to the ProductOS Work they implement (#248)
feat(mcp): tell people when their Claude connector needs a reconnect, in the app and by email (#249)
fix(github): crawl every repo, pull request, issue and commit an installation can see (#250)
feat(product-updates): What's new dialog and announcement email (#252)
fix(entity-detail): linked-entity pickers read Create new <entity> once (#253)
fix(github): answer webhooks inside GitHub's 10 seconds and re-crawl every connection daily (#254)
feat(audit): record every committed entity write server-side (#255)
feat(audit): record every admin, workspace, webhook and public write, and read the trail by entity (#256)
fix(work): board cards and Work notifications print the workspace's sequence id (#257)
fix(team): accepting an invite links the existing roster entry by name when it has no email (#258)
fix(work): board cards open on click and drag above the board (#259)
fix(mutations): error toasts name the status instead of printing an HTML error page (#260)
fix(work): space Work board cards 8px apart (#261)
feat(mcp): export_workspace returns the Settings Excel export as a signed link (#262)
test(e2e): view-mode switch counts only its own crash, not hydration mismatches (#263)
fix(ui): list pagination bar sits flush at the window bottom, level with the sidebar footer (#264)
Add ProductOS Claude Code workflow (#265)
fix(audit): activity log reads as plain sentences (#266)
fix(claude-code): close dispatched sessions when their run ends, and check setup before dispatch (#267)
feat(team): link a team member while sending an invite (#268)
feat(claude-code): pick the model for a Send to Claude Code cloud run (#269)
feat(notifications): every toggle delivers, Teams replaces Slack, and 11 new notification types (#270)
feat(claude-code): cloud runs follow the repo's CLAUDE.md or AGENTS.md for PR titles and descriptions (#271)
fix(ui): responsiveness audit: Code page, dashboard and list toolbars fit phones and tablets (#272)
ci(migrations): fail a PR whose migration reuses a version prefix main has (#273)
fix(pwa): installed app shows the ProductOS mark instead of the Vercel logo (#274)
fix(notifications): trim the app URL so email links stay clickable (#275)
feat(activity): full-page activity log with filters, opened from the dashboard (#276)
feat(audit): take the audit log out of beta: admin-only reads, kept actor names, two-sided links (#277)
fix(notifications): show status changes as pills and dates as readable dates (#278)
fix(layout): pipeline strips as short as the Golden Thread's on list pages and the dashboard, less space above the filters row (#279)
fix(work): sprint board headers keep the sprint name, pills pick the columns, earlier sprints come back (#280)
fix(audit): run the activity_log read policy's helpers once per statement (#281)
feat(features): show type column in feature tables as 2nd column (#282)
feat(layout): collapse the sidebar with Ctrl+B, its edge or a button under Settings (#283)
feat(features): bookmark My Work, sprint pills, status and board view in the URL (#284)
test(team): seed a single-word name so the Team list assertion is deterministic (#287)
fix(security): stop users rewriting their own role and workspace (#288)
feat(flags): feature flags with a staff dashboard, per-environment defaults, overrides, rollouts and beta opt-in (#289)
feat(views): bookmark every list page's view in the URL through one hook (#290)
feat(entities): v2 entity layout for every entity type behind the entity-layout-v2 flag (#291)
fix(features): keep the search, filter and add bar on the Work board (#292)
fix(security): stop anon calling match_session_outcomes and auth_user_exists_by_email (#294)
perf(layout): sidebar collapse and expand no longer stall the page (#295)
feat(marketing): redesigned marketing site behind the marketing-v2 flag (#297)
feat(marketing): compare pages for five alternatives teams switch from (#298)
feat(attachments): screenshots inline in Work description and specifications, file attachments, and MCP tools (#299)
feat(marketing): method, switch and security pages, and markdown for agents (#300)
feat(entities): v2 entity pages use wide screens and load without jumping (#301)
fix(ai): a saved Anthropic key now wins over the hosted key (#302)
fix(security): cron routes refuse calls when CRON_SECRET is unset (#303)
fix(marketing): render the home page and marketing pages per request so marketing-v2 takes effect (#304)
docs(legal): match the Fees section to published pricing, and finalise both documents (#306)
feat(metrics): daily usage email with active users, most active people, MCP use and new signups (#307)
feat(attachments): paste files onto the Attachments tab with Ctrl+V (#308)
feat(feedback): Attachments tab on Feedback for screenshots, recordings and files (#309)
fix(product-updates): say every list page keeps its view in the link (#310)
feat(admin): usage dashboard with active people, MCP use and signups over any period (#311)
feat(attachments): tile view with large thumbnails, and a viewer that steps through files with the arrow keys (#312)
fix(admin): admin pages scroll again, and the daily usage email links to the dashboard (#313)
feat(views): keep the active saved view in the URL so a refresh or bookmark applies it (#314)
feat(data-table): collapse all and expand all for grouped tables (#315)
fix(live-refresh): open pages refresh on changes from MCP, the API, other tabs and teammates (#316)
feat(attachments): double-click a screenshot in the description or specifications to open it in the viewer (#317)
feat(entities): entity tabs have links and stay open across reloads (#318)
fix(github): symbols index again; the crawl strips NUL and lone surrogates before writing (#319)
fix(entities): Links and Attachments tabs show their counts before they are opened (#321)
feat(ai): one name and one icon per AI surface, ProductSense drafts and Copilot chats (#322)
feat(features): Releases column on the Work table, with filter, sort and group by (#323)
feat(shortcuts): a key for every control, hold Ctrl to see them, one tooltip style (#324)
feat(seo): canonical URLs, noindex on auth pages, ProductOS changelog in the sitemap (#325)
feat(outcomes): link Work items to outcomes directly, with + Add under Outcomes (#326)
refactor(access): areas on every entity type and page, one navigation registry, tokens capped at their holder's role (#327)
fix(changelog): render release notes as markdown on the public changelog (#328)
fix(cron): embed-outcomes accepts a to-one session_outcomes embed (#329)
fix(ui): detail rail, Golden Thread + Add, list toolbar and sprint board polish (#330)
chore(brand): retire the old logo from the branding kit, auth emails and public/ (#331)
feat(access): functions with per-area access, assigned to members and invitations and enforced on the REST API (#332)
fix(ui): skeletons on the roadmap, the Work board and the other loading states that were text or a spinner (#334)
feat(access): the connector, Copilot, attachments, sessions and the activity log respect a function's areas (#335)
feat(work): sprint board opens on the previous sprint, the current one and the next two (#336)
feat(work): sprint board opens on the previous, current and next sprint plus Backlog (#337)
feat(access): row-level security per area, so a function's limits hold for browser sessions (#339)
feat(work): board cards show each item's size and hours top right (#340)
feat(work): Plan view for sprint planning with one-click moves, inline edits and hours per person (#343)
feat(access): the app follows a function's areas: navigation, 404s, read only, restricted links (#344)
feat(team): only admins and the owner change the team roster; members still assign people to Work (#345)
feat(access): Settings, Functions and access: the area matrix, starters, and a function on members and invitations (#346)
feat(access): each function's sidebar and landing page, and a person's own sidebar with reset (#347)
feat(access): a dashboard per function: a widget registry, eight new widgets, and reset to the function's default (#348)
feat(lists): signals bar on Work and Feedback, with Focus and a compact state (#349)
fix(sidebar): collapsed single-page icons no longer log a Base UI nativeButton error (#350)
feat(lists): signals bar on every other list page (#351)
feat(ui): one date format, 2026-Sep-30, and a shared DateLabel across the app (#352)
fix(public): leave trashed Work and releases off the public roadmap, embed and changelog (#353)
fix(sales): Battle cards toolbar fits a phone screen (#354)
fix(code): Sessions view polls on its interval instead of after every response (#355)
feat(dashboard): a default layout per function, customizable within what each person can view (#356)
feat(product-updates): bring the first update to September 30 with sprint planning, attachments and the signals bar (#357)
feat(access): the owner picks their own view, a function for their layout with full access kept (#360)
feat(access): a Support starter function for customer support teams (#361)
fix(lists): signals bar keeps its rows on touch screens (#362)
feat(access): the owner previews the app as any function, at every layer, until they exit (#363)
ci(e2e): run on request, one at a time, never against the production database (#364)
fix(product-updates): keep the broadcast name within Resend's 70-character limit (#365)
fix(product-updates): center a screenshot narrower than its column (#366)
fix(dashboard): every tile fits its content, nothing scrolls inside, and the columns end level (#368)
·Accepting an invite links the existing roster entry instead of creating a new team member
·Activity log reads as plain sentences instead of raw field names and on/off values
·Activity log rows are written server-side after each committed mutation
·Activity page: the full activity log with filters, opened from the dashboard
·Add the ability to link a team member while sending an invite
·Admin pages scroll again, and the daily usage email links to the dashboard
·Admin usage dashboard: active users, most active people, MCP use and signups over any period
·Anyone can call match_session_outcomes across workspaces and auth_user_exists_by_email without signing in
·Assignment, status and target-date notifications never reach anyone
·Attachments tab on Feedback: drop, paste or upload screenshots and files
·Attachments: tile view with large thumbnails, and a viewer that steps through files with the arrow keys
·Audit log gaps left after the server-side rebuild
·Audit log records workspace, admin, webhook and public writes, and reads back by entity
·Audit-log reads time out: the activity_log read policy ran its helpers on every row
·Battle cards toolbar overflows a phone screen
·Board cards show F- ids instead of the workspace's Work prefix
·Bookmark every list page's view: status chips, Roadmap modes and filters, tabs and filters live in the URL
·Bookmark the Work page's view: My Work, sprint pills, status, board view and grouping live in the URL
·Check for duplicates before creating, and search that tolerates a missing word
·CI blocks a migration whose version prefix main already uses
·Clicking a Work board card does not open it
·Cloud runs follow the repo's own PR title and description conventions
·Collapse all and expand all for grouped tables
·Collapse the sidebar with Ctrl+B, its edge or a button under Settings
·Collapsed sidebar shows each group's pages in a hover flyout
·Collapsing or expanding the sidebar freezes the app for seconds
·Collapsing the sidebar logs a Base UI nativeButton error for each single-page icon
·Command palette feedback rows show and search their linked accounts
·Copilot chat applies bulk, link and status proposals instead of failing with Invalid input
·Cron routes accept unauthenticated requests in production
·Daily usage email: active users, most active people, what they use (MCP included) and new signups
·Dashboard by function: a default layout per job, customizable within what each person can view
·Dashboard widgets scroll inside and leave empty space
·Detail rail, Golden Thread + Add, list toolbar and sprint board polish
·Dispatched Claude Code sessions stay queued forever when the GitHub run fails
·Dragging a Work board card scrolls its column sideways and disappears outside it
·E2E runs in CI stop loading production: one run at a time, never against the prod database
·embed-outcomes cron returns 500 when a session already has an outcome row
·Entity detail loading: one-step skeleton to content in page, dock and modal
·Entity footers in page, dock and modal mode share the sidebar Settings footer height
·Entity pages scroll sideways on phones, tablets and narrow desktop windows in the v2 layout
·Entity pages use wide screens and load without jumping in the v2 layout
·Entity pages: a document column and a properties rail in page, modal and dock, behind the entity-layout-v2 flag
·Entity tabs have links and stay open across reloads
·Expand long-form fields to fill the modal, side panel or page
·External links on a Work item can be read back, removed and attached idempotently over MCP
·Feature flags: staff dashboard, per-environment defaults, workspace and user overrides, percentage rollouts and beta opt-in
·Functions: per-area access, sidebar and dashboard for devs, PMs, execs and sales and marketing
·GitHub App connections re-sync on a daily schedule
·GitHub App install confirms the installer can see the installation
·GitHub crawl indexes every repo and pull request an installation can see
·GitHub crawl stores no symbols: a NUL character fails the whole insert
·GitHub pull requests link back to the ProductOS Work they implement
·GitHub sync reports real failures instead of swallowing them
·Installed PWA on Windows shows the Vercel logo instead of the ProductOS mark
·Keep the search, filter and add bar on the Work board
·Keyboard shortcuts across the platform, with one hint style
·Link Work items to outcomes directly, with + Add under Outcomes on the Work Golden Thread
·Linked Work shows as the release scope table on every detail page
·Linked-entity pickers read Create new New initiative
·Links and Attachments tab counts stay hidden until the tab is opened
·List pagination bar sits flush at the window bottom, level with the sidebar Settings footer
·Loading skeletons on the roadmap, the Work board and the other surfaces that showed text, a spinner or an empty state while loading
·Mark the current sprint clearly on the Work page
·Marketing site redesign: positioning, homepage and public pages
·Marketing site: compare pages
·Marketing site: method, switch and security pages, markdown for agents
·match_session_outcomes stops trusting a caller-supplied workspace
·MCP export_workspace tool returns the Settings Excel export
·MCP search reads a PR number like #229 as a sequence id and puts an unrelated row first
·MCP search: words in any order, typo tolerance and sequence ids
·Merge a duplicate Work item into another, keeping every link
·New marketing site stays hidden after turning marketing-v2 on in production
·Notification email buttons render as plain text in Outlook
·Notification settings deliver what they show, Microsoft Teams replaces Slack, and eleven new notification types
·Notifications show status changes as pills and dates as readable dates
·Objectives can be linked to initiatives through the v1 API, MCP and import
·One date format and one date component across the app: 2026-Sep-30
·One name and one icon for AI: ProductSense drafts, Copilot chats
·Open pages refresh when a change comes from MCP, the API, another tab or a teammate
·Open screenshots in the description and specifications in the file viewer
·Owner's own view and preview as any function
·Past coding sessions can be recorded over MCP with their real start and end times
·Paste files onto the Attachments tab with Ctrl+V
·Pick the model for a Send to Claude Code cloud run
·Pipeline strips as short as the Golden Thread's on list pages and the dashboard, less space above the filters row
·Prod GitHub App receives pull_request, push and issues webhooks
·Product updates: in-app What's new modal and announcement email
·Public changelog hides trashed releases
·Public changelog renders release notes as markdown
·Public roadmap lists trashed Work
·Pull requests link to Work automatically from WRK ids and session branches
·Rebinding the command palette shortcut has no effect
·Releases column on the Work table, with filter, sort and group by
·Responsiveness audit: Code page, dashboard activity log and every page that clips on phones and tablets
·Retire the old logo: branding kit, auth emails and public files use the current mark
·Save error toasts print a whole HTML error page
·Saved views stay applied after a refresh and can be bookmarked
·Screenshots inline in description and specifications, file attachments, and both through MCP
·Search indexing: canonical URLs, noindex on sign-in pages, changelog in the sitemap
·search_documents pages, filters, and names GitHub as unavailable when it is
·Selectors hide offboarded, archived and retired records
·Sidebar shows G-key shortcuts that do not match the real bindings
·Signals bar breaks on touch screens
·Signals bar on every list page
·Signals bar: the top card on list pages shows what needs attention, by focus
·Sprint board opens on four columns: the previous sprint, the current one, the next one and Backlog
·Sprint board: headers keep the sprint name, sprint pills pick the columns, earlier sprints come back
·Sprint planner: close out the current sprint and plan the next one in one view
·start_session returns the feature's open session instead of duplicating it
·Support starter function for customer support teams
·Switching an entity from page mode to dock mode crashes with This page couldn't load
·Tasks on Work items: a checklist of steps under each feature
·Team e2e assertions pass on a fresh database
·Team member pickers show emails, and roster badges no longer flash while loading
·Tell people when the ProductOS connector needs a reconnect, in the app and by email
·Users can rewrite their own profiles.role and workspace_id, escalating to owner or joining another workspace
·View-mode switch e2e test fails on hydration mismatches it does not test
·Work board cards show each item's size and hours top right
·Work board cards touch with no space between them
·Work in the ProductOS repo syncs to the ProductOS workspace over MCP
·Work pills and linked Work tables show each item's type
·Workspace identity on the Knowledge page is stored per user, so other members see it blank
·Your own Anthropic key is ignored whenever the hosted key is set
v0.10.0
Feedback API, MCP connector v2
Feedback API, MCP connector v2. 46 PRs from 2026-09-17 to 2026-09-23; 32 tracked work items.
Feedback API, MCP connector v2
46 pull requests merged 2026-09-17 to 2026-09-23.
Highlights
Public Feedback API: secret keys, account linking, status read-back
MCP reads: list_entities paging, count_entities, assignee and Lead filters, golden thread from any row, bulk reads, workspace search, app-visible reads
MCP ids and links: links on every result, sequence ids accepted, junction rejection
MCP write safety: role checks on every write tool, deletes behind their own tool, titles and safety hints
MCP identity: whoami, instructions, title, description, website and icons on initialize
MCP coding sessions from any client, with the PM's answer reaching the run
MCP actions for the public changelog, portal and roadmap toggles, and for re-syncing a GitHub App connection
Documentation portal verified page by page and made publish-ready
·log_session_event says how much of a logged event it keeps
·MCP accepts JSON-encoded string arguments on every tool
·MCP action turns the public changelog, portal and roadmap on or off
·MCP coding sessions from any client, with the PM's answer reaching the run
·MCP coding-session tools match their documented contract
·MCP identity: whoami, instructions, title, description, website and icons on initialize
·MCP ids and links: links on every result, sequence ids accepted, junction rejection
·MCP reads: list_entities paging, count_entities, assignee and Lead filters, golden thread from any row, bulk reads, workspace search, app-visible reads
·MCP result sizing and structured output on catalog reads
·MCP sync_repo_connection re-syncs a GitHub App connection from any client
·MCP write safety: role checks on every write tool, deletes behind their own tool, titles and safety hints
·Privacy policy and terms published, Connectors Directory blockers cleared
·Public Feedback API: secret keys, account linking, status read-back
·Tenancy scoping: workspace_id on knowledge and entity-context loaders
v0.9.0
Polish sprint, MFA recovery, MCP OAuth
Polish sprint, MFA recovery, MCP OAuth. 30 PRs from 2026-09-15 to 2026-09-17; 15 tracked work items.
Polish sprint, MFA recovery, MCP OAuth
30 pull requests merged 2026-09-15 to 2026-09-17.
Highlights
MFA recovery codes
MCP OAuth sign-in for claude.ai, Claude Desktop and Claude Code
·Landing page rewrite for the AI-native pivot (ICP toggle, ProductSense)
·Multi-Period Kanban Views
·Password policy: 12 characters, 3 of 4 character classes
·Persistent Timezone Preference Storage
·ProductSense rebrand of Magic Fix, plus the /knowledge page
·Roadmap Top Row Filtering by Period
v0.1.0
Polish + Public-launch ready
Cutover follow-up plus team multi-select polish plus autosave row-id fix plus dev-local env parser repair. The platform is shippable.
Final pre-launch polish. Cutover hardening (search_path, port guard, runbook). Team multi-select hierarchical search. Autosave preserves row id post-first-save.
·Cutover follow-up: search_path + port guard + runbook
Fresh Supabase project, MFA enrolment, security headers, Resend email infra, import/export full coverage, error boundaries, rate limits, test suite seed.
Production-grade auth defaults. Fresh Supabase cutover with TOTP MFA. HSTS plus CSP plus Permissions-Policy headers. Resend SMTP for transactional email. Import/export covers all 30 sheets. Vitest plus Playwright seeded.
·Canonical site URL + onboarding gate
·Cron schedule to daily (Vercel hobby)
·Fresh Supabase cutover + MFA enrollment + local safety net
·Surface AI errors + AI-draft description on create-and-link
·Three parallel golden threads in onboarding
v0.1.0-beta.3
Roadmap Gantt + Onboarding + Design Overhaul
Feature-centric roadmap with Gantt and dependencies. Eight-step AI onboarding wizard. Platform-wide design overhaul. Mobile responsive.
Roadmap rewritten around features with Gantt and dependency overlay. AI-assisted onboarding generates a workspace from a paragraph. Design polish everywhere; mobile readable.
·Platform-wide design overhaul + AI overlay rewrite
·Suspense wrap for feedback/trash prerender
·v1 platform buildout
·Versioned per-entity AI insights
v0.1.0-beta.2
Sequence IDs + Drafts + M2M
FDBK-000001 IDs across all entities. Draft-first lifecycle. Author-scoped RLS. Persona M2M junction refactor.
Per-workspace sequence IDs. Draft rows with autosave. Author-scoped row-level security. Personas now M2M with feedback, features, themes, products, modules.
·50+ placeholder titles per entity
·Author-scoped RLS + is_draft + created_by
·Draft-first lifecycle across 27 entity dialogs
·Per-workspace counter table for sequence IDs
·Per-workspace sequence IDs (FDBK-000001)
·Persona many-to-many junction refactor
·Unified YYYY-MM-DD dates in tables
v0.1.0-beta.1
Local Dev + Magic Fix + Strategic Surfaces
Local Supabase via Docker. AI Magic Fix plus context-menu copilot. Strategy/Intelligence/GTM/Sales/Design System sections.
Local-first dev parity. AI Magic Fix bulk cleanup. Right-click copilot chat. 15 new entity types across Strategy, Intelligence, GTM, Sales, Design System. Pills standardised platform-wide.
·AI Magic Fix + Context Menu Copilot Chat + Team Assignment Suggestions
·Categorized integrations catalogue (14 sections)
·Local Supabase via Docker containers
·Standardized entity pills + tooltips
·Strategy/Intelligence/GTM/Sales/Design System surfaces
Every dialog shares a header/body/footer shape. SVG logo with light/dark variants. Right-click everywhere. DataTable with multi-select bulk actions.
·Apply brand guidelines + SVG logo + forgot password
·Auto-populate + sync feedback status on feature-from-feedback
·Clickable entities + product backlog viz + AI search fix
·DataTable with bulk actions + features-on-feedback
·Global EntityDialogProvider consolidation
·In-page entity detail modals
·Right-click context menus across entity pages
·Unified 12 entity modals with shared components
v0.1.0-alpha.2
Real Data + AI Polish
Demo data ripped out. Real Supabase end-to-end. Auto-provision workspaces. AI insights overhaul plus team multi-select.
Workspaces auto-provision on first API call. Real Supabase data fetch. Persistent activity log. Markdown rendering. AI insights component refactor.
·AI insights overhaul + team multi-select
·Auto-provision workspace on first API call
·Fetch real Supabase data for non-demo accounts
·Initial security hardening + AI summaries
·Markdown rendering and stat cards
·Real import persistence + dynamic teams
·Remove demo data system + persistent activity log
v0.1.0-alpha.1
Foundation
Initial scaffold through Phase 4. Auth, 12 entity pages, AI Layer, Golden Thread, Roadmap, Settings.
First buildable version. Twelve entity surfaces wired to Supabase. ⌘K palette. AI chat copilot. Golden Thread navigation graph. Roadmap with quarter columns.