Surface · Internal Reference

Full Feature Matrix

Surface is Swift's sovereign work platform replacing Monday.com, Clockify, Fireflies, and Discord with a single owned application. Everything here is MVP-grade v1 - every Full item works end-to-end but is first-iteration quality. Roadmapped items represent the next depth layer, not distant future. This matrix is the team's shared view of where we are and what's next.

MVP framing: Full = works with real data end-to-end, v1 quality. Partial = live but scoped or incomplete. Stub = UI shell with mock data. In-flight = open branch not yet merged. Roadmapped = defined and sequenced, no code yet. Grid = infra layer outside the Surface repo. Nothing here is "done" in a final sense - we iterate forward from working software.
39
Fully functional
18
Partial / scoped
8
UI shell / stub
6
In-flight branches
56
Roadmapped
8
Grid-integrated infra
FullWorks end-to-end, real data, v1
PartialLive but incomplete or scoped
StubUI shell - mock or hardcoded data
- Not built
In flightOpen branch, not yet merged
RoadmappedDefined, sequenced, no code yet
GridInfra outside Surface repo
BlockedHas a named gate or dependency
HM · Home DashboardPersonal command center and situational awareness - the / route
IDFeatureLive UIFunctionalWhat's Next / Gate
HM-01
Eve briefing strip
AI daily briefing bar; summarizes priorities, mentions, anomalies
FullPartialIris daily brief factory not yet wired to Home - PM.2
HM-02
Quick actions bar
New item, log time, message, start call via keyboard shortcut
FullFull -
HM-03
4-up stat cards
Overdue / Due today / Messages / Time today - live from DB
FullPartialScope to logged-in user - SURFID.2
HM-04
Client health grid
Per-client status dots, hours tracked, open item counts
FullFull -
HM-05
Your week view
Day-grouped items due this week with completion bars
FullPartialScope to logged-in member - SURFID.2
HM-06
Mentions & DMs panel
Recent @mentions and unread DM count
FullPartialScope to logged-in member - SURFID.4
HM-07
Resume rail
3 most-recently-touched items for quick re-entry
FullPartialScope to logged-in member - SURFID.2
HM-08
Time today sidebar
Today’s logged time with quick-log shortcut
FullPartialScope to logged-in member - SURFID.3
WM · Work ManagementProjects, items, and multi-view work hub - replaces Monday.com
IDFeatureLive UIFunctionalWhat's Next / Gate
WM-01
Project list view
Status-grouped item list with key, owner, due date, burn bar
FullFull -
WM-02
Project board view
5-column kanban; drag-and-drop status changes
FullFull -
WM-03
Card view
Card-density item grid with priority color coding
FullFull -
WM-04
Item detail page
4 tabs: Thread (item comments + @mentions), Fields, Activity log, Time. Status picker, due date, description, sub-items, attachments, SOPs panel, agent notes sidebar.
FullFullSURFID.1Filter assignments to logged-in user
WM-05
My Work queue
Items grouped: Overdue / Today / Tomorrow / This week / Waiting / Done; j/k keyboard nav; triage panel
FullPartialShows all members’ items - SURFID.1
WM-06
Work hub multi-view
List / board / card with sort, multi-axis filter, project and priority facets
FullFull -
WM-07
Inline status management
Status picker on items in all views; status category set defines columns
FullFull -
WM-08
Burn bars & variance chips
Green <70% / amber 70-90% / red >90% of baseline_minutes; risk + over chips
FullFull -
WM-09
New item / project portals
Global creation portals via keyboard shortcut or sidebar button
FullFull -
WM-10
Project item groups
Items assignable to named sections (groups) within a project; group name shown on cards and list view
FullPartialGroup creation UI and drag-to-reorder not yet built
WM-11
SOP surfacing on items
Linked SOPs panel on item detail; agent notes propose relevant runbooks
FullPartialFull SOP authoring and linking - PM.5
WM-12
Gantt view
Timeline bars showing item duration across calendar dates
- - Roadmapped PM.5 - defined in WorkViewBar, disabled flag
WM-13
Sprint view
Sprint-scoped item queue with velocity tracking
- - Roadmapped PM.5 - defined in WorkViewBar, disabled flag
WM-14
Client portal (external-facing)
Scoped read-only workspace for client contacts
- - Roadmapped PM.5 - blocked on PM-D1 scope decision
WM-15
Monday.com data migration
Full historical board and item migration from Monday before cancellation
- - Roadmapped PM.5 - one-time extraction factory; PM-D4 depth decision
WL · Workload & CapacityTeam-level capacity visibility - replaces Monday workload view
IDFeatureLive UIFunctionalWhat's Next / Gate
WL-01
Workload matrix
Members × time buckets; item key chips per cell; ≥5 items highlights amber
FullPartialScope to team/client filter - PM.5
WL-02
Workload report
Per-engagement hours vs. budget by role class; ok / risk / over status
FullFull -
WL-03
Assignment balancing
Drag-and-drop reassignment from workload matrix to rebalance members
- - Roadmapped PM.5
WL-04
Capacity alerts
Threshold-triggered notification when a member’s queue exceeds capacity
- - Roadmapped PM.5
TM · Time TrackingManual and signal-based time capture - replaces Clockify
IDFeatureLive UIFunctionalWhat's Next / Gate
TM-01
Manual time logging
Date, duration, client / project / item selectors, billable toggle, notes
FullFullSURFID.3Default to current user; admin sees all
TM-02
Signal-aware time view
Bar chart split by provenance; percentage caught by signals; catches-waiting section
FullPartialSignal auto-feed needs PM.1
TM-03
Passive time accrual
Auto-log from meeting attendance, status transitions, file delivery, factory runs
- - Roadmapped PM.3 - blocked on PM.1 meeting pipeline
TM-04
Clockify import
One-time historical time data migration from Clockify
- - Roadmapped PM.0 - extraction factory in scope
TM-05
Timer (start/stop)
One-click running timer on any item; auto-logs on stop; ended_at set on insert, state mapping confirmed→approved live
FullFullPM.3 Clockify migration pending
RP · Reports & AnalyticsDelivery analytics, engagement economics, benchmark reporting
IDFeatureLive UIFunctionalWhat's Next / Gate
RP-01
Time reports
Date range tabs, KPI strip, daily bar chart, by-client and by-member breakdown
FullFull -
RP-02
Benchmark - budget vs actuals
Per-client hours vs. role-class budget; semimonthly period; ok / risk / over
FullFull -
RP-03
Client dashboard - KPIs
Delivery / overdue / due-this-week / hours / leads / sessions per client
FullStubData stubbed - SURFID.CONN
RP-04
Client dashboard - source connections
GHL LIVE, GA4 / Google Ads / Search Console / Meta Ads READY per client
FullPartialGHL live; remaining connections need SURFID.CONN
RP-05
Work reports hub
Workload + benchmark rolled into /work/reports
FullFull -
RP-06
Factory & signal report
Run counts, factory spend, signal extraction rate, HAG approval rate
- - Roadmapped CONSOLE.0 - requires ClickHouse telemetry
RP-07
Referral & activation metrics
Activation rate, K-factor, referral ROI, payout liability - tenant health dashboard
- - Roadmapped TENANT-0.5 - Eve / Scout / Fin own this surface
CL · ClientsPer-client workspaces with health, work, comms, and brand
IDFeatureLive UIFunctionalWhat's Next / Gate
CL-01
Client workspace - Overview
Health strip, our team, needs-attention items, links, contacts, activity spine
FullFull -
CL-02
Client workspace - Discourse tab
Ask bar, channel tabs, message feed, meetings rail, decisions logged
FullFull -
CL-03
Client workspace - Work tab
Filtered item list scoped to client
FullFull -
CL-04
Client Brief AI
On-demand AI-generated brief streamed from /api/client-brief/[id]
FullFull -
CL-05
Client workspace - Brand tab
Brand guidelines stored and surfaced per client; read/write via /api/studio/brand
FullPartialBrand editor UI is read-only display - ST
CL-06
Client workspace - Dashboard tab
KPI strip, delivery throughput, engagement economics, source connections grid
FullStubAll data mock - SURFID.CONN
CL-07
Agency grouping
Clients nested under agencies in sidebar and reports
FullFull -
CL-08
Client contacts
Our team + Theirs sections on client overview; add/edit contacts
FullFull -
CL-09
Client meetings section
Meeting list with transcript links per client workspace
- - Roadmapped PM.1 - placeholder in code
CL-10
Client vertical template
Pre-configured workspace template per vertical (pet/storage/wellness/general) seeded at tenant genesis
- - Roadmapped TENANT-1.1 - Vault Genesis handoff
DB · Dashboard EngineClickHouse + ECharts tile engine, client record redesign, and Framework ingestion
IDFeatureLive UIFunctionalWhat's Next / Gate
DB-01
Client record redesign
Overview / Strategies / Work / Analytics tabs replacing the flat client page
- - Roadmapped DASH.3
DB-02
Tile registry
Governance-gated tile registry; tiles read named versioned metric views only (DB1 doctrine)
- - Roadmapped DASH.2
DB-03
Goals and alerts
Goal object in graph, default alert rules, generated health-check drafts
- - Roadmapped DASH.4
DB-04
Portal dashboard publish
Publish client-scoped dashboards to portal as static shell with live guest tile fetches
- - Roadmapped DASH.5
DB-05
Framework version view
FrameworkVersion graph entity display; ratification status, tier hour totals, defect flags
- - Roadmapped DASH.2
AQ · AI QueueAgent-extracted action items gated by human approval - the HAG
IDFeatureLive UIFunctionalWhat's Next / Gate
AQ-01
AI-extracted item queue
Action items, decisions, commitments, questions, signals; vera_score and evidence; filter by kind
FullFullAuto-fed once PM.1 lands
AQ-02
Approve / edit / reject
Human approval gate; edit before approving; approve creates item in work graph
FullFull -
AQ-03
Queue attention strip on My Work
Count strip appears at top of My Work when queue has pending items
FullFull -
AQ-04
Extraction stats
Cards this month, approval latency, precision rate in queue header
FullPartialStats live; based on manually-seeded data until PM.1
AQ-05
Meeting pipeline - Whisper transcription
Auto-capture audio, diarization, extraction chain on ArcRigs; integrates into AQ
- - Roadmapped PM.1 - Blocked PM-D5 (Sarah: recording consent) + ArcRig route
AQ-06
Historical transcript import
Fireflies full export ingestion before cancellation
- - Roadmapped PM.IMM.1 - transcript corpus at risk, Charles initiates
AQ-07
Standing approval policies
Recurring approval rules with expiry - approve “all action items from Aria” for 7 days
- - Roadmapped PM.2 - reduces repeated HAG friction
AQ-08
ArcQA Playwright smoke tests
39 routes in smoke manifest; auth.setup, auth smoke, route smoke; authenticated tests skip without E2E_SUPABASE_TOKEN
PartialPartialAdd E2E_SUPABASE_TOKEN to CI to unlock authenticated route coverage
DC · Discourse - CommsChannels, DMs, presence, unified inbox - replaces Discord
IDFeatureLive UIFunctionalWhat's Next / Gate
DC-01
Project channels
Real-time Supabase Realtime messaging, file / image attachments, @mentions
FullFull -
DC-02
Direct messages
1-on-1 DMs, presence dot in header, DM call buttons
FullFull -
DC-03
Group DMs
Multi-participant rooms via channel_participants; leave / close removes user
FullFull -
DC-04
Two-way human ↔ agent comms
Humans message agents in DMs and channels; agents reply via webhook; TTS auto-plays
FullFull -
DC-05
GIF support
Giphy search picker inline; full rendering in feed
FullFull -
DC-06
Emoji reactions
Picker on messages; reactions grouped by emoji with counts; toggle your own
FullFull -
DC-07
Real-time presence
Online / offline rail; heartbeat every 60s; custom avatars for humans and agents
FullFull -
DC-08
Pinned messages
Pin any message; pins tab in channel header; pin count badge
FullFull -
DC-09
Channel mute & pin-to-top
Per-member mute and pin ordering persisted in Supabase
FullFull -
DC-10
Polls
Poll messages with poll_votes; vote counts per option
FullPartialPoll creation UI needs composer integration
DC-11
@mentions autocomplete
@-triggered member list; mention chip in feed
FullFull -
DC-12
File uploads in channels
Upload via /api/channels/upload; renders as attachment
FullPartialFull file browser tab planned - DC-14
DC-13
Reply threads
Thread panel on message; replies scoped to parent
- - In flight PR feat/surface-reply-threads - branch open
DC-14
Files tab in channel
Dedicated channel file browser tab
- - Roadmapped - gates on DC-12 completion
DC-15
Channel search
Full-text search within a single channel
- - Roadmapped - gates on SR-02
DC-16
Channel notes tab
Per-channel notes/docs tab
- - Roadmapped
DC-17
Voice / Video in project channels
Voice and video from non-DM channels (currently DM-only)
- - Roadmapped - buttons present, disabled ‘coming soon’ PM.4
DC-18
Unified email inbox
Multi-account sidebar, thread list with read / star / pin / important flags, compose drawer
FullStubThread data is mock - Gmail sync when SURFID.CONN activates
DC-19
Unread / notification badges
Channel-level unread dot; notification bell with count in topbar
FullPartialSURFID.4Scope to logged-in member
DC-20
Discord bridge (PM.4 exit)
Migrate team from Discord to Surface as primary comms; Discord bots remain available externally
- - Roadmapped PM.4 - requires DC-17 + calling parity + full notification coverage
CA · CallingLiveKit-powered voice and video
IDFeatureLive UIFunctionalWhat's Next / Gate
CA-01
Voice / video call overlay
Full call UI, participant tiles, mute, camera toggle; persists across navigation
FullFullInternal calls auto-feed meeting pipeline at PM.4
CA-02
DM call buttons
One-click audio / video call from any DM channel header
FullFull -
CA-03
Incoming call signal
Call initiate / respond / end API; signaling between members
FullPartialIn-app ring notification needs DC-19 scoping
CA-04
Agent participation in LiveKit calls
Iris and other agents joinable as participants in LiveKit rooms
- - In flight PR feat/surface-agent-livekit-api - branch open
CA-05
Screen share / Present
Screen share tile in call overlay
- - Roadmapped - button present in channel header, disabled ‘coming soon’
CA-06
Call to meeting pipeline feed
Surface calls auto-captured and piped into transcription + extraction chain
- - Roadmapped PM.4 - after Whisper pipeline (PM.1) lands
FL · Flows - ArcFlowWorkflow builder and factory runner embedded in Surface
IDFeatureLive UIFunctionalWhat's Next / Gate
FL-01
Workflow list
Grid of workflows: status, version, run count, last run
FullFull -
FL-02
Workflow builder
Flow editor; 10 most-recent run records inline
FullPartialVisual node DAG editor not yet built
FL-03
Create workflow
Name + description form; redirects to builder
FullFull -
FL-04
Workflow run history
Per-workflow run list with status, duration, step count
FullFull -
FL-05
HAG approval gate
Human-in-loop step surfaced from /api/arcflow/runs/[id]/approve
FullFull -
FL-06
Cancel workflow run
Stop a running workflow; sets status to cancelled
- FullAPI live; no Surface UI trigger button yet
FL-07
Trigger workflow from Surface
Trigger a run from Surface UI with input payload
- - Roadmapped - API exists, no UI
FL-08
Webhook trigger UI
Configure and display inbound webhook URL for a workflow
- - Roadmapped - API exists, no UI
FL-09
Run log viewer
Step-by-step run log with timing and output per step
- - Roadmapped - API has run detail; viewer not built
FL-10
Scheduled workflow display
Show cron schedule and next-run time per workflow
- - Roadmapped - scheduler tick exists; display not built
FL-11
ArcFlow standalone service
Extract engine from Surface into arcflow-control / arcflow-dispatch / arcflow-worker on ArcHelm; Surface Flows page calls standalone control API
- - Roadmapped ARCFLOW.1.5 - after Phase 0 skeleton (ARCFLOW.1) ships
FL-12
n8n shadow execution
Each n8n factory runs in parallel on ArcFlow; output diffs logged; 80% parity gate before cutover
- - Roadmapped ARCFLOW.2 - after FL-11
FL-13
n8n decommission
n8n container removed; all 182 active factories migrated to ArcFlow
- - Roadmapped ARCFLOW.3 - after ARCFLOW.2 parity gate
CY · ArcCycleCycle-control primitive above ArcFlow - governs whether work repeats
IDFeatureLive UIFunctionalWhat's Next / Gate
CY-01
Cycle Board
List and detail view for active Cycles, state machine display, Turn history
- - Roadmapped CYCLE.1
CY-02
Cycle Proposal
Draft + submit a Cycle Proposal; 72 h expiry countdown; approval workflow
- - Roadmapped CYCLE.1
CY-03
CycleMeter
Real-time budget display (cash + GPU-seconds) in dispatch path; burn rate and ceiling enforcement
- - Roadmapped CYCLE.1
CY-04
Cycle tree view
Program root and subtree visualisation; depth and gate rollup; settle protocol display
- - Roadmapped CYCLE.3
CY-05
Console lens - Cycles
ArcCycle widget in Console sidebar; active Cycles, budget status, last Turn result
- - Roadmapped CYCLE.2
AG · Agent InfrastructureAgent identity, TTS, routing, factories, knowledge graph, bot integrations
IDFeatureLive UIFunctionalWhat's Next / Gate
AG-01
Agent identity in Surface
Iris, Trebek, Donut as role=agent members with avatar, presence, message authorship
FullFull -
AG-02
Agent TTS auto-play
Agent messages spoken aloud via Kokoro TTS API; playback control in UI
FullFull -
AG-03
Agent avatar management
Upload avatar in Settings; mirrors to members table
FullFull -
AG-04
Agent voice & config settings
Per-agent TTS voice, JSON config, display name in Settings > Agents
FullFull -
AG-05
Agent message post API
/api/agents/post-message enables any Grid agent to post into any Surface channel
FullFull -
AG-06
LiteLLM model routing
aliases: communications (llama3.1:8b), coding (qwen2.5-coder:32b), analysis + design (qwen3-fast); 90/10 local/Anthropic target
- GridGrid infra - Surface calls LiteLLM proxy on port 4000
AG-07
ArcFlow factory runtime
182 factories authored; n8n-backed; pg-boss queue and scheduler; QA Review Loop live
- GridGrid infra - Surface reads workflow state
AG-08
ArcFlow - Surface integration
Workflow list reads live ArcFlow DB (status, version, run count, last run)
FullFullTrigger + log viewer from Surface - FL-07 FL-09
AG-09
Human Approval Gate (HAG)
Approval queue for agent-proposed items; hard-gate on removal, payments, outbound batches
FullFullStanding approval policies - AQ-07
AG-10
Neo4j knowledge graph
Roadmap tasks, entities, agent configs, relationship graph - Trebek is query broker
- GridGrid infra - Surface agents query via Trebek
AG-11
Discord bot integrations
Chucky (8003), Trebek (8004), Donut (8005), Scout (8006) - parallel channel to Surface
- GridGrid infra - DC-20 is the Surface migration gate
AG-12
Iris - voice & meeting bot
PulseAudio virtual sinks; joins calls and speaks; Google auth session
- PartialMeeting capture + transcription loop needs PM.1
AG-13
MCP tool access
mcp-local-models exposes ask_chat / ask_coder / ask_analyst / ask_designer to agent fleet
- GridGrid infra
AG-14
Agent memory & context
Per-agent persistent memory store; context injection into agent sessions
- - In flight PR feat/agent-memory - branch open
AG-15
BRAIN cognitive architecture
Seven-layer architecture: world model, identity, memory, perception, executive function, metacognition, self-learning
- - Roadmapped Phase BRAIN - BRAIN.0 owner decisions required; blueprint phase
AG-16
21-agent full fleet in Surface
All 21 rostered agents (Scout, Aria, Dax, Eve, Fin, Quill, Raye, Louis, Odo, Ghost, Argus, Guardian, Locutus, and others) accessible as Surface members
- - Roadmapped - gates on AG-15 + GV-01 governance
SR · SearchFull-text search across the work graph
IDFeatureLive UIFunctionalWhat's Next / Gate
SR-01
Item search
Search by title, key, description with ?q=; results grouped by project
FullPartialItems only - expand scope per SR-02
SR-02
Cross-entity search
Single query across projects, items, messages, time entries, members, files
- - Roadmapped - prerequisite for DC-15
CB · CalendarDue dates, meetings, content schedule
IDFeatureLive UIFunctionalWhat's Next / Gate
CB-01
Week / month calendar grid
Item due dates on real week/month grid; layer toggles for Meetings, Content, Periods, Availability
FullPartialDue date layer only live; other layers are UI stubs
CB-02
Google Calendar sync
Meetings layer from user’s Google Calendar via OAuth
- - Blocked Google Cloud OAuth creds - SURFID.CONN
CB-03
Content calendar layer
Scheduled content assets from Studio shown on calendar
- - Roadmapped - gates on ST-06 + CB-02
NT · NotificationsSystem-wide notification feed and preferences
IDFeatureLive UIFunctionalWhat's Next / Gate
NT-01
Notifications feed page
Global feed of last 50 notifications with type, channel, body, actor, read_at
FullPartialScope to logged-in member - SURFID.4
NT-02
Topbar badge count
Unread bell badge driven by /api/notifications/unread-count
FullPartialScope to logged-in member - SURFID.4
NT-03
Notification preferences
Per-type in-app and email toggles; persisted in notification_preferences
FullFullEmail delivery requires RESEND_API_KEY
NT-04
Email delivery
Outbound notification emails via Resend API
FullPartialAPI key required; template design - PM.2
NT-05
Subnav order persistence
Sidebar navigation item order saved per member
- - In flight PR feat/surface-nav-order-persistence - branch open
CN · ConsoleFleet monitoring - Grid infra health inside Surface
IDFeatureLive UIFunctionalWhat's Next / Gate
CN-01
Fleet monitoring dashboard
Network / Compute / Models / Agents / Business tabs; node status grid; event feed; query bar
FullStubAll data is static mock - CONSOLE.0
CN-02
Live ClickHouse telemetry
Real-time node health, run/step telemetry from ArcFlow, inference metrics from LiteLLM
- - Roadmapped CONSOLE.0 - ClickHouse pipeline required first
CN-03
Fleet log query
Natural-language query over live fleet logs
- - Roadmapped CONSOLE.1 - gates on CN-02
CN-04
Brain health surface
Per-layer circuit breakers, behavioral drift monitor, cognitive health dashboard (BRAIN.6)
- - Roadmapped - BRAIN.4 Scout instantiated on full BRAIN architecture
CN-05
OpenObserve alerting feed
Error rate alerts, auth failure rate, isolation boundary violation, backup run failure routed to Console
- - Roadmapped LOG.6 - gates on CN-02 live feeds
ST · StudioAgent-assisted content creation - Text, Sheet, Site, Layout, Video
IDFeatureLive UIFunctionalWhat's Next / Gate
ST-01
Asset type catalog
Template type cards; factory-ready banner; per-client artifact counts; Quill agent status
FullStubAll data static mock - agent authoring layer needed
ST-02
Recent artifacts table
Artifacts with state (approved/at_gate/draft/returned/factory); 4-up stats
FullStubStatic mock - gates on live /api/studio/artifacts
ST-03
Asset workbench / editor
Workbench shell with blame gutter; agent assumptions propose, never write directly
FullStubShell renders; live artifact loading and agent authoring not wired
ST-04
Media library / copyright ledger
Asset browser with source, license type, rights holder, expiry, used-in artifacts
FullStubAll static mock - Drive integration needed
ST-05
Brand guidelines editor
Per-client brand rules stored and editable via /api/studio/brand
FullPartialWrite API live; editor UI is display-only
ST-06
Agent-composed artifact creation
Quill agent drafts content assets; blame gutter tracks agent vs human edits
- - Roadmapped - agent authoring layer; gates on ST-03 workbench
ST-07
Publish pipeline
DNS-as-code publish for sites; approved snapshots only
- - Roadmapped - gates on ST-06
ST-08
Version history
Artifact version snapshots; restore any approved state
- - Roadmapped - gates on ST-03
ST-09
Sandbox / playground mode
Non-destructive preview editing of site assets and pages; versioned snapshots; diff vs. live shown inline; designed for non-devs to prototype without risk
- - Roadmapped STUDIO.4 - gates on ST-03 canvas primitives + CMS/page-snapshot topology decision; originated from Brandon Davis feedback 2026-07-15
ST-10
CopilotKit vs assistant-ui decision
ADR-03 spike: one-week evaluation before any canvas build
- - Roadmapped STUDIO.0 - prerequisite for ST-03 v2
ST-11
Penpot design canvas integration
Validate Penpot as design canvas; Figma as fallback; SOURCE-REGISTER-001 intake
- - Roadmapped STUDIO.2 - after ST-10 decision
PR · PersonalizationAppearance, Trim cosmetics, sounds
IDFeatureLive UIFunctionalWhat's Next / Gate
PR-01
Theme - Light / Medium / Dark
3 palettes persisted per member via localStorage
FullFull -
PR-02
Density - Cozy / Compact / Spacious
Controls spacing, font-size, component padding app-wide
FullFull -
PR-03
Font size slider
XS / S / M / L / XL adjustment in Settings > Appearance
FullFull -
PR-04
Trim cosmetics catalog & equip
Avatar frame, nameplate, banner, effect, message badge, presence dot; equip flow; preview live
FullFull -
PR-05
Trim packs
Curated cosmetic bundles; equip-all-in-one-click; pack browser
FullFull -
PR-06
Custom image uploads
Hero and banner upload to Supabase Storage; persisted across Profile and Home
FullFull -
PR-07
Avatar crop modal
Crop preview before confirming avatar upload
FullFull -
PR-08
Sounds - ringtone selection
4 built-in procedural tones + custom audio upload; Web Audio API preview
FullFull -
PR-09
Trim topbar emoji
User-selected emoji next to avatar in topbar
- - In flight PR feat/surface-topbar-emoji - branch open
SE · SettingsAll member, agent, and workspace configuration
IDFeatureLive UIFunctionalWhat's Next / Gate
SE-01
Profile
Display name, title, bio, timezone, avatar upload / crop / color picker
FullFull -
SE-02
Appearance
Theme, density, font size - all persisted per member
FullFull -
SE-03
Members management
Member list with avatar, role badge, cost rate; Invite button; admin view
FullFull -
SE-04
Agent management
Per-agent avatar, color, TTS voice, JSON config, display name
FullFull -
SE-05
Agency management
Agency list with client groupings, color and avatar per agency
FullFull -
SE-06
Notification preferences
Per-type in-app and email toggles
FullFull -
SE-07
Vault - sovereign work record
Portable work history: hours tracked, items contributed, member since; CSV export
FullPartialVault auth lock planned PM.6; Tenant Vault Genesis at TENANT-1.1
SE-08
Contract - member rates & budgets
Per-member cost rate, contract type, role, engagement budgets
FullPartialAgreement upload at PM.7; inline rate edit wired to benchmark
SE-09
Connections - external OAuth
Google Workspace, GHL, GitHub, Clockify, Stripe, Notion, media integration cards
FullStubBlocked Google Cloud OAuth creds + GHL per-tenant wiring - SURFID.CONN
SE-10
Member invite flow
Invite team members with role assignment; invitation-token delivery
FullPartialFull invitation-token flow needs SURFID.AUTH-EXT
SE-11
System info
Build version, auth provider, latest migration, AI runtime - informational
FullFull -
SE-12
Permissions page
Owner-only Settings > Permissions page with member roster + permission matrix. Unified roles: owner / admin / member / agent / guest (migrations 121-123, 127). RLS on projects + clients scoped by assignments. Middleware route guards on admin+ and owner-only routes.
FullFull -
SE-13
Feature flags per tenant
tenant_features join table; hasFeature() utility gates UI and API routes per isolation tier
- - Roadmapped TENANT-0.6 - covers: referral codes, dedicated schema, dedicated inference lane, vault export, client workspace, content templates
ID · Auth, Identity & TenancySession auth, cross-system identity spine, multi-tenancy, referral distribution
IDFeatureLive UIFunctionalWhat's Next / Gate
ID-01
Google OAuth - internal
Restricted to @teamresources.io via Workspace internal consent screen; auth callback resolves Cloudflare Tunnel origin
FullFull -
ID-02
Session identity
getCurrentMember() server utility + CurrentMemberProvider client context; AppShell wraps all routes
FullFull -
ID-03
Per-user data scoping (Layer 1)
My Work, Home, Time, Inbox, Connections and Settings scoped to logged-in member
- - Roadmapped SURFID.0–5 - biggest active gap; all members currently see all data
ID-04
Invitation-token auth (external)
Non-@teamresources.io users auth via signed invitation token; provisions tenant on callback
- - Roadmapped SURFID.AUTH-EXT - blocked on TENANT-0.2 + D1 decisions
ID-05
Per-user downstream OAuth connections
Each member connects their own Google Calendar, Gmail, GHL independently; member_connections credential store
- - Blocked Google Cloud OAuth creds in .env.local - SURFID.CONN (branch scaffolded)
ID-06
Tenant isolation (L2)
tenants table; tenant_id on all Surface tables; RLS policies tenant-scoped
- - Roadmapped SURFID.L2 - blocked on TENANT-0 schema + D1–D6 open decisions
ID-07
Multi-tenancy - sovereign workspaces
Each invited person gets their own workspace, vault, and data isolation; Vault Genesis onboarding flow
- - Roadmapped TENANT phases - D1–D8 owner decisions required before TENANT-0 build
ID-08
Referral & distribution engine
Referral codes, payout ledger (W-9, hold period, HAG-gated release), second-order client loop
- - Roadmapped TENANT-3 - after Phase 1 activation gate (≥60%) passes
ID-09
Discord user ID link
Store Discord user ID on members record; Chucky and Trebek resolve Discord actions to a Surface member_id
- - Roadmapped IDENTITY.1 - gates on IDENTITY.0 canonical design
ID-10
GHL contact link
Store GHL contact_id on members/tenants; resolves Surface member to CRM contact without duplication
- - Roadmapped IDENTITY.2 - gates on IDENTITY.0
ID-11
Neo4j Person node link
Every members record has a corresponding neo4j Person node with surface_member_id; Trebek resolves Discord to graph entity
- - Roadmapped IDENTITY.3 - gates on IDENTITY.0
ID-12
Cross-system trace ID
Request correlation ID flowing across Surface → Supabase → n8n → agents; every logged event for one user action carries same trace_id
- - Roadmapped IDENTITY.5 - blocked on IDENTITY.0 + LOG.0
LG · Logging & AuditStructured logging across all surfaces - required for TENANT-001 compliance and SOC2
IDFeatureLive UIFunctionalWhat's Next / Gate
LG-01
Surface request logging middleware
Next.js middleware logs every request: timestamp, member_id, route, method, status, duration; auth events typed separately; ships to OpenObserve
- - Roadmapped LOG.1 - gates on LOG.0 audit of current state
LG-02
Agent action structured logging
Every tool call by fleet agents emits: agent_id, tool_name, input_summary, outcome, duration, trace_id; ships to OpenObserve
- - Roadmapped LOG.2 - gates on LOG.0
LG-03
Audit trail table
Append-only audit_log in Supabase: tenant_id, member_id, action_type, entity_type, entity_id, actor, timestamp. INSERT-only, permanent retention. Compliance record for TENANT-001 and SOC2 AU-2.
- - Roadmapped LOG.3 - required before any non-Swift tenant goes live
LG-04
n8n execution shipping
n8n execution summaries (workflow_id, status, duration, error) shipped to OpenObserve
- - Roadmapped LOG.4 - gates on LOG.0
LG-05
Business event logging
Structured events: tenant_activated, referral_code_used, vault_milestone_reached, client_workspace_created, second_order_invite_sent; feeds K-factor and activation rate dashboards
- - Roadmapped LOG.5 - Blocked TENANT-1.x (tenants must exist first)
LG-06
Alerting rules
Error rate >5%, auth failure >10 in 5 min, isolation boundary violation, backup run failure - alert to Discord Scout channel + email
- - Roadmapped LOG.6 - gates on LOG.1 and CN-02 live feeds
GV · Agent GovernanceArcCharter - agent identity, enrollment ceremonies, co-signed approval trail
IDFeatureLive UIFunctionalWhat's Next / Gate
GV-01
Agent identity registry
Canonical identity record per agent on ArcHelm (k3d/k3s namespace); ArcCharter-issued identity linked to Surface agent member
- - Roadmapped ARCCHARTER.1 - ARCCHARTER.0 audit gate first (38 features, EXISTS/ROADMAPPED/ABSENT)
GV-02
Enrollment ceremony UI
Co-signed enrollment per AGOV-007 deployment sequence; each agent onboards with documented identity commitment
- - Roadmapped ARCCHARTER.1 - gates on GV-01
GV-03
Agent approval trail in Surface
All consequential agent actions carry ArcCharter-issued identity; approval trail queryable in Console
- - Roadmapped ARCCHARTER.2 - all fleet agents carry ArcCharter identity
GV-04
Agent governance dashboard
Per-agent health, approval rate, action log, last enrollment timestamp; surfaced in Console or dedicated GV page
- - Roadmapped ARCCHARTER.2 - gates on GV-03 approval trail live
OB · OnboardingFirst-run experience, Vault Genesis, tenant distribution
IDFeatureLive UIFunctionalWhat's Next / Gate
OB-01
Onboarding flow shell
/onboarding route; guards: redirect to /login if unauthenticated, to / if already completed
FullStubNo functional steps yet
OB-02
Spend baseline capture
Document current Monday / Clockify / Fireflies / Discord monthly spend before cancellation
- - Roadmapped PM.IMM.2 - 1-day task, Charles initiates
OB-03
Vault Genesis walkthrough
Pre-populated book of business + workspace setup; first-run guided tour of Surface; signed vault ownership agreement at handoff
- - Roadmapped TENANT-1.1 - blocked on TENANT-0.1 contractual stack + Louis review
OB-04
Referral code surfacing
Referral code appears in-product at natural moments (after vault milestone, after first client workspace created); personalized link auto-generated; FTC disclosure on every surface
- - Roadmapped TENANT-3.1 - blocked on TENANT-2.x + D3 (referral structure) + D4 (receive-side reward)
OB-05
Vertical template selection
Pre-configured workspace template selection at tenant genesis: pet / storage / wellness / general operator
- - Roadmapped TENANT-4.1 - blocked on TENANT-3.x performing at benchmark K
OB-06
Public template gallery
Public-facing vertical template gallery viewable before signup; Notion gallery pattern
- - Roadmapped TENANT-4.2 - gates on OB-05
WB · Wiki & Knowledge BaseSovereign knowledge base - articles, team docs, and internal reference pages
IDFeatureLive UIFunctionalWhat's Next / Gate
WB-01
Knowledge Base home
Wiki home with article list, recent edits, and new article entry
FullFull -
WB-02
Article view + markdown render
Inline markdown rendering, article metadata, and sidebar nav
FullFull -
WB-03
Article editor & create
GFM markdown editor with toolbar (B/I/H1-H3/Link/Image/Code/Table), [[Title]] wiki links with autocomplete, image uploads to Supabase storage; autosave 3s debounce; Ctrl+B/I/K/S shortcuts
FullFull -
WB-04
Article search
Full-text search via pg_trgm + tsvector (migration 116); 2-col grid index with tag + category filter pills, pagination PAGE_SIZE=20
FullFull -
WB-05
Version history + trash
Revision log with per-version restore and word-level diff viewer; trash with restore + permanent delete; duplicate article action
FullFull -
WB-06
Categories + Tags management
Categories manager (/wiki/categories); Tags manager (/wiki/tags) with rename, delete, counts; article subscriptions (Watch button + notifications)
FullFull -
WB-07
Sidebar tree, template picker, bulk actions
Sidebar tree with draft visibility; template picker (Blank, How-to Guide, Meeting Notes, Reference, Decision Record); bulk actions (publish drafts, delete); sticky TOC (3+ headings)
FullFull -
GA · Gaming LineArcGrid Gaming - IP-gated titles, real-time backend, AI NPC service, and advergame platform
IDFeatureLive UIFunctionalWhat's Next / Gate
GA-01
IP Gate + Asset Library
Louis IP Gate intake checklist; Glitch (CC0) + Freedoom (BSD) asset library with provenance manifest
RoadmappedRoadmappedGAMING.0
GA-02
Title development pipeline
First 3 titles: Colossal Cave (AI text adventure), idle loop, Spacewar! duel; each clears IP Gate first
RoadmappedRoadmappedGAMING.1 - gates on GAMING.0 exit
GA-03
Real-time backend service
Dogfooded on Spacewar! duel; externalized as a standalone service with SDK + metering
RoadmappedRoadmappedGAMING.2
GA-04
AI NPC service
Persona, memory, safety, and cost routing per AI NPC spec; dogfooded on Colossal Cave
RoadmappedRoadmappedGAMING.2
GA-05
Procedural content API
ProcGen API per spec; dogfooded on Canabalt-style runner title
RoadmappedRoadmappedGAMING.2
GA-06
Advergame service
3-tier offer: Micro (branded mini-game), Campaign (leaderboard + lead-capture), Platform (persistent gamified feature). Pitched to DV8 and PIR.
RoadmappedRoadmappedPitch starts now; delivery gates on GAMING.0 - GAMING.ADV
GP · Grid PacksPack architecture - Capability Packs, Industry Packs, Pack Library, and website solutions door
IDFeatureLive UIFunctionalWhat's Next / Gate
GP-01
Pack taxonomy + doctrine
Four-class taxonomy (Core/Capability/Industry/Bespoke), toll inversion (default 0 toll points), maturity modes, IP harvest contract clause. Buyer validation interviews required.
RoadmappedRoadmappedCharles approval gate - GRIDPACK.0
GP-02
Pack Manifest schema validator
pack-manifest.schema.json, validator.py (V-01 through V-09), reserved-registry.yaml, charter-registry.yaml; CI integration on every push
RoadmappedRoadmappedGates on GRIDPACK.0 - GRIDPACK.1
GP-03
Capability Pack definitions
Eight Capability Packs: Community, FinMo, Intel, Studio, Demo, Ops, Media, Commerce; plus seven Industry Pack verticals
RoadmappedRoadmappedGates on GRIDPACK.1 - GRIDPACK.2
GP-04
Pack Library Surface MVP
Installed / Available catalog, pack cards from manifest data, locked previews for uninstalled packs, installation request / HAG approval flow
RoadmappedRoadmappedGates on validator live + 3 manifests in listed status - GRIDPACK.3
GP-05
Website Solutions / Platform door
Two-door website structure (Solutions by industry, Platform by capability) with pack cards from same manifest renderer
RoadmappedRoadmappedGates on buyer validation + card renderer - GRIDPACK.4
WB · Wiki & Knowledge BaseSovereign knowledge base - articles, team docs, and internal reference pages
IDFeatureLive UIFunctionalWhat's Next / Gate
WB-01
Knowledge Base home
Wiki home with article list, recent edits, and new article entry
FullFull -
WB-02
Article view + markdown render
Inline markdown rendering, article metadata, and sidebar nav
FullFull -
WB-03
Article editor & create
GFM markdown editor with toolbar (B/I/H1-H3/Link/Image/Code/Table), [[Title]] wiki links with autocomplete, image uploads to Supabase storage; autosave 3s debounce; Ctrl+B/I/K/S shortcuts
FullFull -
WB-04
Article search
Full-text search via pg_trgm + tsvector (migration 116); 2-col grid index with tag + category filter pills, pagination PAGE_SIZE=20
FullFull -
WB-05
Version history + trash
Revision log with per-version restore and word-level diff viewer; trash with restore + permanent delete; duplicate article action
FullFull -
WB-06
Categories + Tags management
Categories manager (/wiki/categories); Tags manager (/wiki/tags) with rename, delete, counts; article subscriptions (Watch button + notifications)
FullFull -
WB-07
Sidebar tree, template picker, bulk actions
Sidebar tree with draft visibility; template picker (Blank, How-to Guide, Meeting Notes, Reference, Decision Record); bulk actions (publish drafts, delete); sticky TOC (3+ headings)
FullFull -
WB-08
Keyboard shortcuts
Ctrl+B/I/K/S in editor; reference modal (Shift+?) with full shortcut list
FullFull -
WB-09
PDF export
Export any article to PDF via pdfkit; full markdown rendering preserved
FullFull -
WB-10
Cover image + markdown export
Article cover image upload; export as .md file
FullFull -
WB-11
Article visibility field
Public / team / draft visibility on articles; image upload fixes
FullFull -
WB-12
Inline comments
Per-paragraph inline comment threads on articles
FullFull -
WI · Wire IntelligenceReal-time intelligence pipeline - media ingestion, triage, and team reading surface
IDFeatureLive UIFunctionalWhat's Next / Gate
WI-01
Wire navigation
Wire in left nav; Topics, Library, Mentions sub-panel tabs
FullFull -
WI-02
Wire card component
MediaItem card with relevance score, topic badge, source, and action row
FullFull -
WI-03
For You + Library + Mentions feeds
Personalized feed, bookmarked items, and @mention tracking views
FullFullIngestion pipeline (WIRE.4-WIRE.11) needed for live data
WI-04
Watch / Mute / Pin edges
Per-user signal edges on stories and sources; stored in Neo4j
FullFull -
WI-05
Tuning panel
Pin and mute management panel showing all active edges with remove actions
FullFull -
WI-06
Convert to Task
Convert a Wire story directly into a work item
FullFullStudio ref, Client note, Discourse thread convert actions pending
WI-07
Topic posting + MediaItem sharing
Post into Topics via Discourse engine; share an item to a Topic with comment
RoadmappedRoadmappedWIRE.13 - gated on Discourse engine wiring
WI-08
Ingestion pipeline
W1 WirePoll (ArcFlow), RSS/YT/arXiv connectors, Neo4j schema, dedupe
GridPartialWIRE.1 + WIRE.4 complete; connectors (WIRE.5) pending
WI-09
Daily digest (WireDigest)
Automated daily digest generation; 90+ score alert lane
RoadmappedRoadmappedWIRE.8 - gated on triage (WIRE.6)