Live

Progress Stream

We build in the open. Follow real-time updates on our products, engineering decisions, milestones, and research.

Apr 2, 2026
engineering12:00 AM

Calendar Feed Memory Persistence + Confirmation UX Shipped

Sabine now persists calendar feed configurations to memory after successful imports, ensuring feeds survive agent restarts. New confirmation UX helps users verify their feeds are locked in and working correctly.

calendarmemorypersistenceuxpythonsabine
engineering12:00 AM

Memory Lab Client Fixed: Response Key Correction

Fixed a silent bug in the Memory Lab client that was reading the wrong response key. The /retrieve endpoint returns memories in a 'memories' array, but our client was looking for 'results', causing memory recalls to fail silently. This fix ensures agent memory operations work as expected across all Strug Works services.

memorybug-fixapi-integrationbackend
engineering12:00 AM

Calendar Feed Wiring: Import, List, Remove + DB Migration

Shipped calendar feed infrastructure for Sabine with full import, list, and remove endpoints backed by Supabase database migration. This completes the backend foundation for external calendar integration, enabling users to manage their connected calendars through the platform.

backendcalendardatabaseintegration
Apr 1, 2026
engineering12:00 AM

Strug Central Aurora Polish — Unified Dashboard Theme

Shipped visual polish updates to Strug Central with aurora-inspired design elements. Updated component styling, added comprehensive test coverage for AlertsBadge, and documented the unified dashboard theme approach. This brings cohesive visual identity to the command center.

frontenduistrug-centraldesign-system
Mar 27, 2026
engineering12:00 AM

Deprecated Haiku Model IDs Removed from Sabine

Removed deprecated Claude Haiku model identifiers from the Sabine agent orchestration layer. This maintenance update ensures compatibility with Anthropic's current API endpoints and prevents future service disruptions as older model IDs are phased out.

maintenanceanthropicapisabine
engineering12:00 AM

v4.0 Memory Retrieval Hotfix Resolves 8 Live Issues

Emergency hotfix deployed to sabine-super-agent addressing 8 critical memory retrieval issues discovered during live testing of v4.0. The fix restores reliable memory access patterns for agent operations and improves query performance under production load.

hotfixmemoryv4.0backend
engineering12:00 AM

Slack Thread History Now Flows Into Sabine Conversations

Sabine now ingests full Slack thread context when responding to messages, fixing a gap where previous messages in a thread were invisible to the AI. This means Sabine can now follow multi-turn conversations in Slack channels without losing track of what was said earlier.

sabineslackcontextpr-192
Mar 25, 2026
engineering12:00 AM

Updated Claude model refs to claude-3-5-haiku-latest

Sabine Super Agent now uses claude-3-5-haiku-latest instead of the deprecated claude-3-haiku model references. This ensures compatibility with Anthropic's current API and prevents future deprecation warnings across all Sabine's agent workflows.

sabineclaudemaintenance
engineering12:00 AM

Sabine learns to deduplicate entities with embeddings

Replaced pattern-matching entity deduplication with embedding-based similarity detection. Sabine can now recognize duplicate people, places, and things even when they're described differently—"Ryan" and "founder" now resolve to the same entity instead of creating duplicates.

sabineembeddingsentity-resolutionnlp
Mar 24, 2026
engineering12:00 AM

Phase 2 Memory Brain: Shared Foundations Shipped

Merged infrastructure groundwork for the Phase 2 Memory Brain rebuild. This commit establishes shared foundational components that will enable more sophisticated agent reasoning and knowledge persistence. Sets the stage for enhanced memory capabilities across Strug Works.

memory-systeminfrastructurephase-2
engineering12:00 AM

Memory Brain Phase 1: Graph Schema & API

Shipped new memory infrastructure for Strug Works with graph-based schema, automated node builder, and /memory/graph API endpoint. Replaces flat memory tables with connected knowledge graphs to support multi-hop reasoning and relationship discovery. Foundation for agent long-term memory and context synthesis.

memory-systemgraph-databaseapiinfrastructurestrug-recall
Mar 23, 2026
engineering2:39 PM

Preference Signal Collection and DPO Export Shipped

Sabine now captures user feedback (thumbs up/down, corrections) through a new preference_signals database table and chat UI component. An export script transforms these signals into DPO training pairs for future model fine-tuning, enabling Sabine to learn from real user preferences.

machine-learningrlhfqualityuser-feedbacksabine
engineering12:00 AM

Observational Memory System with Observer and Reflector Agents

Shipped a new observational memory architecture that enables the platform to learn from its own execution patterns. Two specialized agents—Observer and Reflector—now track task outcomes and extract reusable insights, creating a foundation for autonomous improvement over time.

agentsmemoryreliabilityobservability
engineering12:00 AM

Epistemic Partitioning: 4-Network Memory Retrieval Ships

Strug Works agents now retrieve memories through four specialized neural networks—factual, episodic, procedural, and semantic—matching how humans organize knowledge. This architecture reduces retrieval latency and improves context relevance across long-running missions.

memoryagentsarchitectureperformance
engineering12:00 AM

v3.0: Advanced Memory & Quality Infrastructure Shipped

Strug Works v3.0 introduces persistent agent memory with scope-based retrieval, confidence scoring, and automatic decay—enabling agents to learn from past executions. New quality infrastructure includes automated evaluation pipelines, test evidence requirements, and reliability metrics to ensure consistent output across all agent roles.

releasememory-systemsquality-infrastructureagent-intelligencereliability
engineering12:00 AM

Abstention Tests Updated for Natural Hedging Language

Updated Sabine's test suite to assert natural uncertainty expressions instead of mechanical phrases like 'I believe' or 'don't have that in my notes'. The change acknowledges that effective AI assistants communicate uncertainty using context-appropriate hedging language that feels conversational rather than programmatic.

sabinetestingnatural-language
Mar 22, 2026
engineering12:00 AM

Sabine conversation memory now loads from database every turn

Fixed a critical bug where Sabine's conversational memory wasn't loading conversation history from the database on each /invoke call. This ensures Sabine maintains full context across all interactions, preventing the frustrating 'forgotten context' experience where the AI would lose track of earlier parts of a conversation.

sabinememoryreliabilitybug-fix
engineering12:00 AM

Sabine Now Remembers Your Conversation for Better Follow-ups

Sabine can now use conversation history when answering follow-up questions, making multi-turn interactions feel more natural and intelligent. Previously, each question was treated in isolation—now Sabine understands context from earlier messages. This makes complex workflows smoother and reduces the need to repeat information.

sabineconversational-aicontext-awarenessux-improvement
Mar 21, 2026
engineering12:00 AM

Self-Improvement Phase 1: Structural Honesty and Gap Detection

Strug Works agents can now identify their own capability gaps and blind spots through structural honesty mechanisms. This foundational change enables the system to recognize what it doesn't know, setting the stage for autonomous learning and skill development. The first phase focuses on detection; remediation capabilities will follow.

self-improvementagent-capabilitiesstructural-honestybackend
engineering12:00 AM

Structural Honesty + Programmatic Enforcement Shipped to Sabine

Phase 1 and 2 of self-improvement capabilities are now live in Sabine. The platform can now detect and communicate when tasks exceed its capabilities (structural honesty) and programmatically enforce decision boundaries to prevent silent failures. This means fewer surprise failures and more transparent agent behavior across the entire system.

self-improvementstructural-honestyagent-capabilitiessabinereliability
Mar 20, 2026
engineering12:00 AM

SSE Stream Reliability: Exponential Backoff Added

We added exponential backoff to the useTaskStream hook, which manages real-time task updates in Strug Central. This prevents connection storms when the backend is under load and ensures the Task Board and Strug Stream stay responsive even during high-traffic periods. Users will experience fewer dropped connections and smoother real-time updates.

ssereliabilityfrontendbackend
engineering12:00 AM

Comprehensive Weather Skill Unit Tests Shipped

Added full test coverage for Sabine's weather skill handler with pytest. The new test suite validates API integration, error handling, and response formatting to ensure reliable weather information delivery. This strengthens Sabine's conversational capabilities with robust quality gates.

testingpytestweather-skillsabinebackendquality
Mar 19, 2026
engineering2:19 AM

Sabine frontend launches with chat and today dashboard

Phase 1 of the Sabine consumer frontend shipped with a Next.js 15 foundation, real-time chat interface powered by the FastAPI backend, and a Today dashboard that surfaces tasks, reminders, and recent activity from the Supabase knowledge graph. The foundation includes shadcn/ui components, dark mode support, and Tailwind CSS styling.

frontendnext.jssabinedashboardchat
engineering12:00 AM

Sabine stability fix: API error and hydration protection

Shipped defensive code to prevent crashes in ActivityFeed and Greeting components. ActivityFeed now safely handles unexpected API response shapes from /audit/tools. Hydration mismatch guards added to Greeting component. These changes eliminate TypeError crashes and improve runtime stability.

stabilitysabinefrontenderror-handling
Mar 16, 2026
engineering12:00 AM

Sabine learns default Slack channels and reminder updates

Shipped channel inference and update_reminder skill to Sabine. The assistant now automatically infers the right Slack channel for notifications and can update existing reminders instead of creating duplicates. Meets users where they work with less manual configuration.

sabineslacknotificationsremindersintegrations
Mar 15, 2026
engineering8:30 PM

Dream Team MCP server registered for Claude Code sessions

Registered the Dream Team MCP server in Claude Code configuration, enabling direct agent interaction with the Dream Team mission control from within coding sessions. First integration between Claude Code and Dream Team infrastructure.

mcpdream-teamengineeringstrug-enterprise-site
milestone8:00 PM

Team page headshots, Head of GTM, and Social Media Manager added

Updated the /team page with actual headshots for the full team, added Head of GTM and Social Media Manager roles to the Strug Works lineup. Team roster is now accurate to current org structure.

teammilestonestrug-enterprise-site
milestone5:00 PM

Agent memory seeding complete — all tiers verified in production

Completed the full agent memory seeding pipeline: Tier 1 global memories (naming, identity, tech stack), Tier 2 role-specific seeds for all 10 SC- roles, and a YAML-based seed script with bi-temporal upsert. All memories verified live in production.

memorydream-teammilestoneagents
milestone2:30 PM

Memory API routes and God View Memory tab shipped

Added complete Memory API routes (browse, inject, update, delete) with PostgREST sanitization, and shipped the AgentMemoryBrowser component in God View. Agents can now be inspected, edited, and injected with memories from the dashboard.

memorydream-teammilestonecycle-8
milestone1:40 PM

Cycle 7 fully deployed — RLS policies, smoke test, MCP registration

Completed Cycle 7 deployment to Railway: applied all RLS (Row Level Security) policies to Supabase, passed full smoke test suite, and registered the MCP server. Dream Team infrastructure now production-hardened.

deploymentdream-teammilestonecycle-7
engineering12:00 AM

Restored Railway Dockerfile builds with per-service config

Fixed a deployment regression by adding service-specific Railway configuration. PR #151 inadvertently broke Dockerfile builds when dockerfilePath was removed from railway.toml. Railway's Railpack auto-detected Node.js and attempted to build the Next.js frontend instead of using containerized builds. Per-service config now ensures each service uses its intended build strategy.

deploymentinfrastructurerailwaydocker
engineering12:00 AM

Cycle 7 MCP Integration Complete: RLS Policies Deployed

Shipped anon INSERT/UPDATE RLS policies for mcp_projects table to enable spec workflow write access. Fixed smoke test and registered MCP in .claude/mcp.json. This completes the Cycle 7 deployment, enabling automated project spec workflows with proper database access controls.

deploymentmcpdatabaserlscycle-7
engineering12:00 AM

Fixed Memory API Auth for Browser Dashboard

Removed broken DISPATCH_API_KEY authentication from memory API routes. These same-origin Next.js routes are called by the browser dashboard and were never viable for server-side auth. Also removed invalid valid_to filter that was causing query issues.

apiauthenticationmemorybugfix
engineering12:00 AM

Fixed Railway monorepo deployment with per-service config

Railway doesn't support multi-service configuration in a single railway.toml file. We split the config into separate railway.toml files for each service (backend and MCP server) so Railway can properly detect and deploy both services in our monorepo. Previous approach was silently failing.

Mar 14, 2026
milestone10:00 PM

Dream Team MCP server scaffold and God View tools shipped

Shipped the full MCP (Model Context Protocol) server for Dream Team, including get_mission, start_project, revise_spec, and approve_spec tools. Also added mcp_projects table and complete integration tests. MCP server deployed to Railway.

mcpdream-teammilestoneengineering
engineering12:00 AM

Fixed Agent Memory RLS for All Agent Roles

Rebuilt row-level security policies for the agent_memory table to properly support all agent roles in the system. This fix ensures agents can securely read and write memory entries scoped to their roles, resolving permission issues that were blocking memory operations across different agent types.

databasesecurityagent-memoryrls
engineering12:00 AM

Cycle 6: Context Snapshots and Mission Grouping Shipped

Added context snapshot capabilities for agent state preservation, mission grouping for better task organization, and speculative branching for parallel execution paths. These features improve agent reliability and enable more sophisticated multi-step workflows.

agent-executionbackendcycle-6
engineering12:00 AM

Automated Agent Code Review Ships to Production

We've shipped automated structured code review for agent-generated pull requests. The new code_reviewer service analyzes Python files, runs static analysis, and provides actionable feedback before human review. This reduces review cycles and catches common issues early in the agent workflow.

automationcode-reviewagentspython
engineering12:00 AM

Automated Code Review Agent Ships with Structured Analysis

We've shipped an automated code review service that performs structured analysis on pull requests. The new code_reviewer.py service integrates with our task runner to provide consistent, automated feedback on code quality, security, and best practices. This gives developers immediate feedback before human review.

automationcode-reviewdeveloper-toolsci-cd
Mar 13, 2026
engineering12:00 AM

Docker test-runner image adds pytest-asyncio for Gate 2

We enhanced our Docker test-runner with pytest-asyncio support to enable async test execution in Gate 2 quality checks. The updated image includes the full testing stack: pytest, pytest-asyncio, Node 20, and npm. A new CI workflow now publishes the test-runner image automatically, and documentation has been updated to reflect the new capabilities.

dockertestingci-cdinfrastructure
engineering12:00 AM

Cycle 5: Bi-Temporal Memory and Consolidation Pipeline

Shipped bi-temporal memory architecture (SCE-77) and automated consolidation pipeline (SCE-78) for Strug Works. Agents now maintain both episodic and semantic memory layers, with automatic consolidation from raw task memories into long-term insights. This enables agents to learn from past work and make better decisions over time.

memoryagentsinfrastructure
engineering12:00 AM

Frontend Fixes: Role Tools, Budgets, and Event Styling

Shipped fixes to three frontend issues in the mission control interface. Updated role tool name display, improved budget suggestion UI, and refined warning event styling in the live log. These changes improve clarity and usability across the dispatch workflow.

frontendui-fixesmission-control
Mar 12, 2026
milestone2:00 PM

SMS compliance updates and /sms-signup landing page live

Launched the /sms-signup landing page with full TCPA compliance, opt-in consent flow, and legal copy. Enables the first SMS marketing channel for Strug City community growth.

smsmarketingmilestonestrug-enterprise-site
Mar 11, 2026
engineering10:00 AM

/privacy page launched with SMS compliance accordions

Shipped a full /privacy page with interactive accordion sections covering SMS compliance, TCPA, and data handling policies. Required for SMS marketing launch and linked from the footer.

privacycompliancestrug-enterprise-site
Mar 10, 2026
engineering12:00 PM

Progress Stream automation scaled to all Strug City projects

Extended the Progress Stream pipeline from strug-enterprise-site to cover all Strug City repos via a reusable GitHub Actions workflow. Every commit across the org now feeds the /stream page automatically.

automationengineeringprogress-stream
Mar 9, 2026
release6:30 PM

GTM Agent v1: Automated Content Pipeline Live

Dream Team now has a fully automated content pipeline. Three new agent roles — sc-content-writer, sc-social, and sc-product-sync — can generate blog posts, release notes, social drafts, and product updates from a single dispatch. Triggered by GitHub releases, scheduled cadence, or manual God View dispatch.

gtmautomationcontent-pipeline
engineering10:00 AM

GTM content pipeline and socialDraft schema shipped

Added the socialDraft Sanity schema for staging social media content, wired Dream Team dispatch on GitHub release events, and established the automated content pipeline architecture. Groundwork for the CTO Digest and social content automation.

gtmengineeringstrug-enterprise-sitedream-team
engineering12:00 AM

God View Dashboard and Spec-First Dispatch Shipped

Mission control now includes real-time SSE streams, approval workflows, and dynamic dispatch forms with budget controls. Introduced spec-first dispatch pattern: sc-qa writes tests, implementation agents receive them as success criteria.

mission-controlssespec-firstapproval-workflow
Mar 7, 2026
milestone4:00 PM

SINC Sprint 1 Track B: Agent Telemetry, Skills Registry, Proactive Memory Injection

Sabine: SINC Sprint 1 Track B ships agent autonomy infrastructure. PlatformSignalEmitter instruments every tool call and task completion — success rate, latency, and failure modes stream to the new platform_signals table in real time. New /agent/health endpoint aggregates tool reliability signals into an AgentHealthResponse, giving Strug Works visibility into Sabine's operational state. SINC skills registry introduced: skills_registry table populated at server startup with the full set of SC agent tools, enabling dynamic skill discovery and future cross-agent skill sharing. Proactive memory injection completes the loop — the task agent now queries MAGMA for top-3 relevant memories and injects them into the system prompt before every run, giving Sabine persistent context without explicit retrieval. 1,463 tests passing.

sabinesinctelemetryskillsmemoryai-ml
milestone2:00 PM

Meet the Team page live with 8 agent profiles

Launched /team with profiles for Ryan Knollmaier (Founder/CEO/CTO), Sabine (Chief of Staff), and all six Strug Works Virtual Engineering agents. Placeholder pixel-art portraits in place pending commission.

teammilestonestrug-enterprise-site
milestone2:00 PM

SINC Sprint 1 Track A: Memory Depth — Brains, Chunking, Entity Extraction

Sabine: First major SINC sprint ships Track A — memory depth infrastructure. Introduces the 'brains' table as the top-level memory container, with brain_id foreign keys propagated across memories, entities, entity_relationships, and rules. Every user now gets a dedicated Sabine brain on signup. Adds parent_memory_id to memories for hierarchical recall. Text chunker wired into the file upload pipeline — long documents are split into semantically coherent chunks before embedding. Entity relationship extraction pulls structured relationships from memory text at ingest. Importance scoring ranks memories by recency, access frequency, and semantic weight. Deduplication prevents redundant memories from accumulating. Six new lib/sinc/ modules, seven new Supabase migrations, and full test coverage (16 new SINC-specific tests passing).

sabinesincmemoryinfrastructureai-ml
milestone12:00 PM

Brand identity, mission statement, and five-act narrative launched

Shipped the full Strug City brand overhaul: new hero messaging, About page five-act narrative, Meet the Team page, and "Building the team that builds the dream." tagline. The site now tells the real story of an autonomous agentic org built by one human.

brandmilestonestrug-enterprise-site
engineering10:00 AM

Shopping Skill Production Hardening

Sabine: Post-review production hardening for the shopping skill cluster. Added 401 retry logic to UcpAdapter for complete_purchase and get_order_status. ACP adapter now passes preferred_sku in search. Playwright adapter dead credential load removed. Etsy added to default allowed_retailers in SafetyRails. Checkout error messages sanitized. Cluster manifest.json added for skill discovery. 8 review issues resolved, all adapters production-hardened.

sabineshoppingcode-qualityproduction
engineering12:00 AM

SINC Sprint 1: Deep Memory and Agent Telemetry

Sabine now builds a persistent knowledge graph from conversations with entity extraction, importance scoring, and cross-session deduplication. Every tool call emits telemetry to platform_signals, and agents auto-inject the top-3 relevant memories per conversation.

memorytelemetryagent-intelligencesinc
Mar 6, 2026
milestone6:00 PM

Sabine Agentic Shopping: Complete Skill Cluster Shipped

Sabine Super Agent: Full agentic shopping capability deployed. Sabine can now autonomously search products, build carts, and complete purchases across Amazon, Shopify, and Etsy. Three adapter types: UCP (AP2 token refresh + deep-link fallback), ACP (Shopify/Etsy five-endpoint flow), and Playwright (Amazon with credential isolation and fallback). Five skills: product_search (preference recall + price change detection), build_cart (multi-item preference resolution), confirm_purchase (autonomy dial + safety rails), manage_list (CRUD on named shopping lists), get_order_status. SafetyRails enforce hard limits on order value, purchase rate, category, and retailer allowlist. Shopping preference memory integrates with existing memories table. 43 tests passing.

sabineshoppingautonomyskills
Mar 5, 2026
milestone4:00 PM

Sabine Engineering Wiki: 14 Files, 10,800+ Lines

Sabine Super Agent: Complete Engineering Wiki published covering the full system — context engine (MAGMA), autonomous skill acquisition, dual-stream pipeline, multi-agent orchestration, database schema, API reference, testing guide, and deployment runbook. 14 files totaling ~10,800 lines. The authoritative technical reference for Sabine 2.0 architecture.

sabinedocumentationengineering
milestone2:00 PM

sc-orchestrator: Mission Decomposition + Subtask Spawning (SCE-49)

Dream Team Strug: The sc-orchestrator agent can now autonomously decompose missions into subtasks and spawn specialist agents (sc-backend, sc-frontend, sc-qa, etc.). update_mission_status inline tool propagates orchestrator completion directly to the missions table. Role tool allowlists enforced at executor level — agents only see tools their role permits. Empty run_shell command guard prevents shell injection. Multi-agent fan-out is production-ready.

dream-teamorchestrationagentsmissions
research10:00 AM

SINC Platform Architecture: Multi-Brain AI Research

Research: SINC (Strug AI Neuro-Computational Platform) architecture design published. Strategic vision for scaling Sabine 2.0 into a multi-brain platform where each brain (Sabine, Work Agent, Health Coach, Studio Head) gets partitioned memory, cognitive variables, and composable Context Packs. Context Packs are reusable behavioral modules that can be mixed with different weights per brain. Expected 5-10x capability multiplier with 70% cost reduction vs monolithic agents. Full executive summary, technical spec, and board presentation outline published.

sabineresearcharchitectureai-platform
milestone9:00 AM

Dream Team Engineering Wiki: 14 Pages, 11,000+ Lines

Dream Team Strug: Comprehensive Engineering Wiki published covering the full platform — task lifecycle and all status transitions, agent execution loop, complete tool dispatch table, fan-out orchestration with parent/child tasks, retry logic with backoff, StaleTaskReaper design, per-task cost tracking, human-in-the-loop approval workflow, and full environment variable reference. V1 (12 pages, 7,600 lines) shipped Mar 4; V2 (14 pages, 11,273 lines) shipped Mar 5.

dream-teamdocumentationengineering
Mar 4, 2026
release12:00 PM

Mission Orchestration UI with Real-time Supabase Subscriptions

Dream Team Strug: Mission orchestration UI migrated to Dream Team dashboard with live Supabase Realtime subscriptions. Missions table now propagates status from child task completions automatically. Dashboard 406/400 query errors resolved; server-side client now uses publishable key correctly. Operators see mission status update in real-time as agents complete subtasks.

dream-teammissionsgod-viewrealtime
Mar 3, 2026
engineering2:00 PM

StaleTaskReaper + Approval Flow Hardening (SCE-9, SCE-30)

Dream Team Strug: Two critical reliability fixes shipped. SCE-9: StaleTaskReaper now routes orphaned tasks through schedule_retry before marking them failed — stale tasks are rescued, not killed. SCE-30: Fixed approval flow mock sequences broken by the _fetch_existing_decision re-dispatch fast-path. Added per-task stale_threshold_minutes so long-running agent tasks (e.g. large repo clones) can declare their own heartbeat timeout instead of using the global 5-minute default.

dream-teamreliabilitytask-queuetesting
engineering11:00 AM

Agent Role Manifests + Linear Dispatch Skill

Dream Team Strug: Formalized agent role system with role manifests defining personas, tool allowlists, and routing rules for all six canonical roles (sc-orchestrator, sc-backend, sc-frontend, sc-data, sc-pm, sc-qa). Linear dispatch skill enables agents to create and assign Linear issues directly from task output. roles-and-routing.md and agent-dispatch.md added to Engineering Wiki. Fix: VALID_ROLES now derived from ROLE_MANIFESTS to prevent dispatch failures for sc-orchestrator.

dream-teamagentsrolesorchestration
Feb 19, 2026
milestone10:00 AM

Dream Team Phase 5 Complete: Autonomous Agents Ship PRs

Dream Team Strug: Phase 5 milestone reached. AI agents now execute full software development cycles end-to-end: task dispatch to git clone, code execution, commit, push, and PR creation — zero human touchpoints required. Systematic debugging resolved agent execution, routing, and task-poller bugs. All agent personas, role color coding, and orchestration status panels wired to live data.

dream-teammilestoneautonomous-agentsgit
Feb 18, 2026
release5:00 PM

Mission Control: Live Dispatch Form + /api/dispatch Route

Dream Team Strug Phase 5C: Mission Control in God View now has a live dispatch form — operators write a mission brief, select agent roles, and fire tasks directly from the dashboard. Next.js /api/dispatch route handles task creation with validation. Session IDs and depends_on chains supported for sequential multi-agent workflows. Tool layers for Supabase, GitHub, Exa search, and role enforcement wired end-to-end.

dream-teammission-controlgod-viewdispatch
milestone2:00 PM

Dream Team Phase 5B: Full Git Integration in Agent Executor

Dream Team Strug: AI agents can now clone repos, commit code, push branches, and create PRs autonomously. Phase 5B ships git_clone (shallow clone + feature branch creation), git_commit (safety guard + structured message), git_push (protected branch guard, no force-push), and git_create_pr (template-enforced PR creation via GitHub API). Database migration 005 tracks git_branch, git_commit_sha, pr_url, and pr_number per task. Full software development cycle now executable without human intervention.

dream-teamgitautomationagents
Feb 17, 2026
release10:00 AM

Email Attachment Support for Sabine Briefings

Sabine: Gmail integration now extracts and summarizes email attachments (PDFs, Word docs, spreadsheets) as part of morning briefings. Workers deployed on Railway with Redis queue for async processing. Health probe hardened for cold-start race conditions on Railway redeploy. Users receive attachment summaries in their morning briefing without having to open email.

sabineemail-intelligencerailwayattachments
Feb 16, 2026
release9:00 AM

Self-Improvement Loop: Effectiveness Tracker + Gap Pipeline

Sabine 2.0 Phase 3: Autonomous self-improvement system shipped. Effectiveness tracker measures response quality over time. Gap pipeline detects skill deficiencies and queues improvements. Signal classifier identifies feedback patterns from user interactions. Sabine can now identify what she is bad at and autonomously queue improvements. Merged to main.

sabineai-agentsself-improvementautonomy
Feb 15, 2026
engineering4:00 PM

Autonomous Skill Acquisition Pipeline

Sabine 2.0: Complete skill acquisition pipeline deployed — Sabine can discover capability gaps, design new skills, test them in sandbox, and register them without human intervention. Phase 4 load tests show the pipeline handles 100+ skill evaluations/hour with zero regressions. Grafana dashboard added for full observability.

sabineai-agentsskill-acquisitionautonomy
milestone11:00 AM

MAGMA Intelligence Engine: Context Architecture Complete

Sabine 2.0 Phase 2: Memory Architecture for Generalized Machine Awareness (MAGMA) fully implemented. Multi-layer context system with taxonomy validation, belief revision, Value-of-Information gate, and slow-path/fast-path extraction pipeline. Enables Sabine to reason about uncertainty, revise beliefs as new information arrives, and selectively retrieve only the most relevant context per query. 15+ new files with comprehensive integration tests.

sabineai-agentsmemoryarchitecture
Feb 13, 2026
engineering10:00 AM

Project Boundaries & Governance: Sabine vs Dream Team

Sabine Super Agent: Published PROJECT_BOUNDARIES_AND_GOVERNANCE.md — a critical architecture document establishing clear separation between Sabine (consumer personal assistant) and Dream Team (virtual engineering platform). Prevents persona bleed and codifies which features belong where. Added CRITICAL DISTINCTION section to CLAUDE.md and Sabine 1.0 regression CI workflow to protect existing behavior during 2.0 development.

sabinedream-teamarchitecturegovernance
Feb 11, 2026
milestone6:00 PM

🎉 PRODUCTION READY - Deployment Verified

Enterprise Site: All systems green! Deployment verification passed - health checks, CMS connectivity, API routes, static generation, and ISR caching all functioning. 430+ commits across 4 repositories over 24 days. Ready to show the world what Strug City builds.

enterprise-sitedeploymentlaunch
announcement12:00 PM

📦 Repository Migration Complete

Announcement: Strug City Enterprise Site repository migrated from strugcity-site to strug-enterprise-site. Updated all documentation, CI/CD configurations, and team access. Cleaner naming convention aligns with other Strug City repositories.

enterprise-siterepositorymigration
release11:00 AM

🚀 7 GitHub Actions Workflows Migrated

Enterprise Site: Complete CI/CD pipeline with 7 GitHub Actions workflows - lint, type-check, build verification, Sanity schema deployment, preview deployments, production deployment, and security scanning. 98% faster than previous CI setup.

enterprise-siteci-cdgithub-actions
engineering10:00 AM

Sanity Seed Script (1441 lines, idempotent)

Enterprise Site: Comprehensive seed script populates Sanity with initial content - 4 products, 20+ stream entries, 5 blog posts with PortableText. Idempotent design allows safe re-runs. Checks for existing content before creating. Essential for environment setup.

enterprise-sitesanity-cmsdata-seeding
milestone9:00 AM

Vercel Deployment Configuration Complete

Enterprise Site: Production Vercel configuration finalized with environment variables, build settings, and domain routing. ISR caching optimized for performance. Preview deployments enabled for PR reviews. Edge functions configured for API routes.

enterprise-sitedeploymentvercel
Feb 10, 2026
engineering6:00 PM

Dynamic OG Images (1200x630)

Enterprise Site: Next.js ImageResponse API generates dynamic Open Graph images for all pages. Blog posts show title and excerpt, stream entries show type badges, products show feature highlights. Proper social media previews on Twitter, LinkedIn, Slack.

enterprise-siteseosocial-media
engineering5:00 PM

Dynamic Sitemap Generation

Enterprise Site: XML sitemap automatically generated from Sanity content. Includes all blog posts, stream entries, and product pages with accurate lastmod timestamps. Submitted to Google Search Console for optimal indexing.

enterprise-siteseocontent-generation
engineering4:00 PM

RSS Feeds for Blog and Stream

Enterprise Site: RSS/Atom feeds generated for blog posts and progress stream. Developers can subscribe to Strug City updates in their feed readers. XML properly escaped, full content included, automatic updates every 60 seconds via ISR.

enterprise-sitersscontent-syndication
engineering3:00 PM

Home Page Dynamic Content Integration

Enterprise Site #61: Home page now pulls latest stream entries and featured blog posts from Sanity. Dynamic product showcases with real-time status updates. Zero hardcoded content - everything managed through CMS.

enterprise-sitesanity-cmshomepage
release2:00 PM

Individual Blog Posts with PortableText

Enterprise Site #62: Dynamic blog post pages with Sanity PortableText rendering. Supports rich text formatting, code blocks with syntax highlighting, images with captions, and embedded content. Custom components for callouts and quotes.

enterprise-siteblogsanity-cms
release2:00 PM

Enhanced Morning Briefing Sections

Sabine: Morning briefings now include dedicated sections for urgent emails, calendar summary, pending replies, and suggested actions. Smart grouping by project context. Users report 25% reduction in morning email processing time.

sabineai-briefingproductivity
engineering11:00 AM

Blog Listing Page Implementation

Enterprise Site #60: Blog listing page with post previews, publication dates, and reading time estimates. Responsive grid layout with Aurora color palette. Pagination support for large post collections. 12 files changed, 280 additions.

enterprise-siteblogcontent-management
engineering10:00 AM

Railway Deployment Verification Script

Sabine: Automated deployment verification script for Railway platform. Validates service health, database connectivity, environment variables, and API endpoints post-deployment. Catches configuration issues before users notice. 7-minute verification suite.

sabinedeploymentci-cd
engineering9:00 AM

Stream Page with Date Grouping

Enterprise Site #59: Progress stream page with intelligent date grouping. Entries automatically grouped by day with relative timestamps. Filter by entry type (milestone, release, engineering, research, announcement). ISR caching with 60s revalidation.

enterprise-sitestreamcontent-generation
Feb 9, 2026
engineering1:00 PM

Products Page Conversion to CMS

Enterprise Site #56: Products page now powered by Sanity CMS. Marketing team can update product descriptions, features, and status without developer involvement. Includes preview mode for content review before publishing.

enterprise-sitesanity-cmsproducts
milestone10:00 AM

🎉 Sanity CMS Foundation Complete

Enterprise Site: Sanity CMS integration complete with 3 content schemas (products, blog posts, stream entries) and 8 optimized GROQ queries. Headless CMS architecture enables rapid content updates without code deployments. TypeScript types generated from schemas.

enterprise-sitesanity-cmscontent-management
announcement9:00 AM

📧 Work Email Integration Plan Announced

Sabine Super Agent: Roadmap released for Coca-Cola work email integration. Pilot program will route all work emails through Sabine processing pipeline for intelligent briefings, action extraction, and priority management. Launch target: March 2026.

sabineemail-intelligenceintegration
Feb 8, 2026
milestone4:00 PM

Complete Error Handling Utilities Framework

Dream Team Strug: Released comprehensive error handling utilities - type guards, error transformers, retry mechanisms, and logging integrations. Standardizes error handling across all Dream Team services. 12 utility functions, fully typed.

dream-teamerror-handlingutilities
engineering3:00 PM

Pre-commit Lint Guardrails Prevent Build Breaks

Sabine: Implemented pre-commit hooks running ESLint, Prettier, and type checking before allowing commits. Catches 95% of build-breaking issues locally. Reduces CI failures from 23% to 3%. Includes auto-fix for common formatting issues.

sabinecode-qualityci-cd
engineering1:00 PM

Enhanced ErrorAlert Component

Dream Team Strug: Comprehensive error handling in ErrorAlert component with categorized error types, suggested actions, and automatic retry logic. Distinguishes network errors, authentication failures, and business logic errors with appropriate UX.

dream-teamerror-handlingui-components
milestone10:00 AM

✅ All Tests Passing + Security Scan Clean

Sabine Super Agent: Achieved 100% test pass rate across 172 test cases. Security scan shows zero vulnerabilities. Code coverage at 94%. Ready for production deployment. 38 commits over 5 days stabilizing test infrastructure.

sabinetestingsecurity
Feb 7, 2026
engineering11:00 AM

Real-time Task Progress Visibility

Dream Team Strug: WebSocket-based real-time updates show AI agent task progress as it happens. Progress bars, status indicators, and log streaming eliminate refresh fatigue. Operators know task status within 200ms of state changes.

dream-teamrealtimemonitoring
engineering9:30 AM

Domain Context Integration

Sabine #51: Integrates domain classification with briefing generation. Work emails prioritized during business hours, personal emails surfaced evenings/weekends. Context-aware urgency detection adapts to sender importance and project deadlines.

sabineai-briefingdomain-classification
Feb 6, 2026
engineering11:00 AM

Email Memory Ingestion Pipeline

Sabine #49: New pipeline ingests email history into long-term memory for context-aware responses. Extracts relationships, project timelines, and communication patterns. Enables Sabine to reference past conversations and understand ongoing projects.

sabineai-agentsmemory
release10:00 AM

Mission Control Tab in God View

Dream Team Strug: New Mission Control tab provides command center for AI agent orchestration. View all active tasks, agent assignments, execution timelines, and resource utilization. One-click access to logs and metrics.

dream-teammission-controlgod-view
Feb 5, 2026
release8:00 AM

🚀 Dual-Context Morning Briefing Released

Sabine #52: Morning briefings now separate work and personal contexts. Intelligent summarization of overnight emails, calendar events, and action items for each domain. 'Work-life balance as a feature' - users report 40% faster inbox zero.

sabineai-briefingemail-intelligence
Feb 4, 2026
engineering2:00 PM

Task Action Guards + Vitest Setup

BanditsTracker: Implemented action guards preventing invalid state transitions in workout tasks. Athletes can't log sets before starting workout, can't complete before all sets logged. Migrated test suite to Vitest for 3x faster execution.

bandits-trackertestingstate-management
Feb 3, 2026
engineering10:00 AM

Comprehensive API Error Handling Tests

BanditsTracker: Added 47 new test cases covering API error scenarios - network failures, timeouts, malformed responses, authentication errors. Improved error messages and retry logic. Test coverage increased from 72% to 89%.

bandits-trackertestingerror-handling
Feb 1, 2026
milestone3:00 PM

Complete Project Atlas Architecture Documentation

Dream Team Strug: Comprehensive architecture documentation for Project Atlas (internal name for Dream Team infrastructure). Documents agent orchestration patterns, event streaming architecture, and deployment topology. 93-page technical reference.

dream-teamarchitecturedocumentation
milestone10:00 AM

✅ Core Python Verification Cleanup Complete

Sabine Super Agent codebase cleanup: removed deprecated Python verification scripts, consolidated test utilities, and standardized error handling. All 147 tests passing with 95% code coverage.

sabinetestingcode-quality
announcement9:00 AM

📜 Strug City Constitution Published

Governance framework for Strug City operations released. Defines AI agent roles, decision-making protocols, escalation paths, and quality standards. Establishes principles for transparent, collaborative AI-human engineering.

dream-teamgovernanceai-agents
Jan 31, 2026
engineering1:00 PM

Task Cancel/Retry UX Improvements

Dream Team Strug: New cancel and retry buttons for stalled AI agent tasks in God View. Reduces manual intervention time by 60%. Includes confirmation dialogs and automatic cleanup of orphaned processes.

dream-teammission-controlux
engineering9:00 AM

Gophers Summer 2024 Comprehensive Seed Script

Complete seed data script for BanditsTracker based on real Gophers Summer 2024 program. Includes 12 weeks of workouts, 45+ exercises with videos, and athlete progression templates. Makes onboarding new programs faster.

bandits-trackerdata-seedingtesting
Jan 30, 2026
engineering2:00 PM

Multi-Domain Classification Support

Enhanced Sabine email classifier to handle multiple domain contexts simultaneously. Supports work, personal, side projects, and custom categories. Smart learning adapts to user patterns over time.

sabineai-agentsemail-intelligence
engineering11:30 AM

Real-time Set Logging in WorkoutPage

Athletes can now log sets in real-time during workouts in BanditsTracker. Tracks weight, reps, and rest intervals with offline support. Data syncs automatically when connection restored.

bandits-trackerworkout-trackingrealtime
milestone9:00 AM

🎯 SABINE God View Dashboard Released

Dream Team Strug: Initial release of SABINE God View - centralized dashboard for monitoring all AI agent activities. Real-time visibility into task execution, agent health, and system performance. Built with Next.js and real-time WebSocket updates.

dream-teamgod-viewai-agents
Jan 29, 2026
engineering4:30 PM

Domain Filter Pipeline Implementation

Sabine #47: Multi-stage domain filtering pipeline processes emails through classification, priority scoring, and context extraction. Reduces inbox noise by 70% while surfacing critical messages. 28 commits with comprehensive test coverage.

sabinedomain-classificationemail-intelligence
milestone10:00 AM

🎉 Navigation Restructure Shipped

Major BanditsTracker navigation overhaul: Dashboard → Programs → Workouts hierarchy. Improved information architecture makes it easier for athletes to find their assigned programs and upcoming workouts. 18 files changed, 340+ additions.

bandits-trackernavigationux
Jan 28, 2026
engineering3:00 PM

Email Domain Classifier Shipped

Sabine Super Agent #45: New email domain classifier intelligently categorizes incoming emails by sender domain. Separates work emails from personal, newsletters from urgent communications. Foundation for context-aware AI briefings.

sabineemail-intelligenceai-agents
engineering1:00 PM

ExerciseCardModal with Video/Instruction Display

New modal component for BanditsTracker displaying exercise videos and detailed instructions. Supports multiple video angles, form tips, and common mistakes. 22 commits implementing responsive design and video player controls.

bandits-trackervideo-analysisui-components
Jan 27, 2026
release9:30 AM

Complete History Page with Expandable Sessions

BanditsTracker History Page released showing all completed workouts with expandable session details. Athletes can review past performance, view exercise logs, and track progress over time. Includes date filters and search.

bandits-trackerworkout-trackinghistory
Jan 25, 2026
engineering4:00 PM

Security Hardening: Deployment Scripts Removed

Removed exposed deployment scripts from BanditsTracker repository that contained sensitive configuration details. Migrated to secure CI/CD pipeline with environment-based secrets management.

bandits-trackersecuritydeployment
Jan 24, 2026
announcement10:00 AM

📚 All-in-One Operations Guide Released

Comprehensive BanditsTracker operations manual for coaches and administrators. Covers program setup, workout creation, athlete management, and video analysis workflows. 47-page guide with screenshots and best practices.

bandits-trackerdocumentationoperations
Jan 22, 2026
engineering11:00 AM

Fixed Start Workout Critical Bugs

Resolved 403 authorization errors and blank page issues preventing athletes from starting workouts. Root cause: missing permission checks in workout initialization API. 15 commits over 2 days to ensure stable user experience.

bandits-trackerbug-fixauthentication
Jan 20, 2026
engineering2:30 PM

Video Analysis Staging Modal System

Shipped new video analysis staging modal in BanditsTracker allowing coaches to review and annotate workout videos before publishing to athletes. Supports side-by-side comparison and frame-by-frame review.

bandits-trackervideo-analysiscoaching-tools
Jan 19, 2026
milestone9:00 AM

🎯 Athletic Excellence Hub Vision Published

BanditsTracker vision document released outlining comprehensive athlete development platform. Combines workout tracking, video analysis, and performance metrics for high school athletic programs.

bandits-trackervisionathlete-development
Mar 25, 2025
engineering12:00 AM

Confidence tier thresholds recalibrated for memory retrieval

Recalibrated confidence tier thresholds for document-ingested memories to better reflect real-world agent performance. HIGH tier lowered from 0.85 to 0.70, MEDIUM from 0.70 to 0.50, ensuring agents can act on good-but-not-perfect memories without false precision blocking useful context.

Mar 24, 2025
engineering12:00 AM

Reminder Skill Now Accepts Natural Language Dates

Fixed a bug in Sabine's reminder skill that was rejecting natural language date inputs like "tomorrow" or "next week." Users can now create reminders using conversational language instead of being forced to use specific date formats.

sabinebug-fixreminder-skillnatural-language
Mar 7, 2025
engineering12:00 AM

SINC Sprint 1: Deep Memory and Agent Telemetry

Sabine now builds a persistent knowledge graph from conversations with entity extraction, importance scoring, and cross-session deduplication. Every tool call emits telemetry to platform_signals, and a new /agent/health endpoint tracks reliability.

SINCmemorytelemetryagent-observability
Mar 9, 2024
engineering12:00 AM

Progress Stream Automation: GitHub to Sanity Pipeline

GitHub Actions now auto-dispatches sc-content-writer on every main branch push, creating published stream entries and draft blog posts directly in Sanity. Replaces deprecated Gemini CLI with hardened CI, Linear agent tools, and webhook integration across 3 repos.

automationci-cdcontent-pipelinegithub-actionssanity
Jan 1, 1970
engineering12:00 AM

Sabine Now Consumes Memory Lab API

Sabine's client integration with Memory Lab API is complete, enabling the AI partnership platform to read and write to shared memory infrastructure. This architectural milestone allows Sabine to leverage the same memory primitives that power Strug Works agents, creating consistent context management across both products.

memory-labsabineapi-integrationarchitecture
engineering12:00 AM

Deployment Verification Endpoint Shipped

Added /agent/debug endpoint and retrieval version marker to confirm which code is running in production. Returns retrieval_version, Memory Lab env var status, and deployment timestamp - critical for debugging Railway environment variable injection timing issues.

infrastructureobservabilitydebuggingrailway
engineering12:00 AM

Gmail Integration: Observability & Auth Hardening Shipped

Added comprehensive monitoring to Gmail integration with Prometheus metrics, end-to-end health checks, synthetic probe testing, and distributed trace IDs. This upgrade makes Gmail auth failures visible in real-time and provides diagnostic tools for troubleshooting integration issues across the Sabine platform.

gmailobservabilitymetricsauthenticationpythonmonitoring
engineering12:00 AM

Sabine Now Reads Forwarded Emails

Sabine can now parse forwarded emails, extracting the original sender, subject, and body content from common email client formats. This unlocks new workflows where users can forward important emails to Sabine for context-aware assistance, making it easier to bring external conversations into your AI partnership.

sabineemail-parsingfeatureintegration
engineering12:00 AM

Legal Contract Ingest with Domain Forcing and Clause Suppression

Sabine can now intelligently process legal contracts and agreements with two new capabilities: domain forcing ensures contract classification overrides generic document types, while clause suppression filters out boilerplate sections to focus on substantive terms. This enhancement improves contract analysis accuracy and reduces noise in legal document workflows.

sabinelegalml-pipelineclassificationdocument-processing
engineering12:00 AM

Diagnostic Logging Added to Memory Retrieval RPC

Added verbose logging to the _retrieve_by_tier RPC call in lib/agent/retrieval.py to investigate why match_memories returns zero results through PostgREST while succeeding in direct SQL queries. This temporary instrumentation will help isolate the integration point where results are lost.

memory-retrievaldebuggingpostgrestreliability
engineering12:00 AM

Legal Ingest Domain Mapping Fixed for Database Compatibility

Fixed a schema mismatch where legal document ingest was using domain hints (vehicle, financial, medical) that don't exist in the database enum. The system now correctly maps to valid domain values (work, family, persona) that match our database schema. Debug logging removed to clean up production output.

legal-ingestschema-alignmentreliabilitydatabase
engineering12:00 AM

Enhanced Memory Retrieval Logging for Diagnostic Visibility

Added tier-by-tier logging to Strug Recall's retrieval system, exposing result counts, similarity scores, and threshold filters for each memory tier query. This diagnostic improvement helps engineers quickly identify whether zero-result queries stem from missing data or overly aggressive filtering, reducing debugging time for memory-related issues.

memoryobservabilitydebuggingstrug-recall
engineering12:00 AM

Sabine Now Persists Chat Threads Across Sessions

Sabine conversations now survive browser refreshes and app restarts. Users can close and reopen chats without losing context, making the partnership experience feel continuous and reliable. This change stores thread state in Supabase, enabling seamless multi-session interactions.

sabinechatpersistencesupabaseux
engineering12:00 AM

Fixed Chat Persistence with Consistent User ID Handling

Resolved a chat persistence bug in Sabine where inconsistent user UUID handling caused conversations to fail to save properly. The fix ensures all chat operations use a consistent user identifier, improving reliability for users managing ongoing AI partnership conversations.

sabinechat-persistencebug-fixuser-authentication
engineering12:00 AM

Fixed chat message ordering issue in Sabine

Chat messages in Sabine now load in the correct chronological order on page reload. Previously, messages could appear out of sequence when the chat interface was refreshed, creating confusion during conversations. This fix ensures consistent message ordering across all session states.

sabinebug-fixchatreliability
engineering12:00 AM

Fixed reminder search to find topic-specific reminders in chat

Sabine agents can now accurately find and retrieve reminders when users ask about specific topics in conversation. The fix resolves a search limitation that prevented topic-based reminder queries from returning results, improving the reliability of reminder management in chat.

sabinebug-fixsearchreminderschat
engineering12:00 AM

OpenWeatherMap Integration Live in Sabine

Sabine can now fetch real-time weather data through a new OpenWeatherMap skill handler. The integration returns temperature (both Fahrenheit and Celsius), feels-like readings, current conditions, humidity, and wind data—giving Sabine contextual awareness for weather-dependent conversations and decisions.

sabineskillsweatherapi-integration
engineering12:00 AM

Weather Skill Integration Tests with Real API Validation

Added comprehensive integration tests for Sabine's weather skill that validate against real API responses. These tests ensure the weather skill correctly handles live data from weather services, improving reliability and catching integration issues before they reach users.

testingintegrationweather-skillapi-validationsabine
engineering12:00 AM

Strug Works Ships sc-evolver: Autonomous Self-Improvement Engine

Phase 3 of self-improvement capabilities is live. The sc-evolver agent can now autonomously identify gaps in team capabilities, propose architectural improvements, and implement cross-system enhancements—all gated by a new trust framework that ensures safety at scale.

sc-evolverautonomyself-improvementagent-capabilitiestrust-gate
engineering12:00 AM

Sabine chat now maintains full conversation context

Fixed a conversation context bug where Sabine would lose track of earlier messages in a chat session. The system now always sends in-memory conversation history to the backend, ensuring Sabine remembers what you've discussed. Previously, history was only sent as a fallback when thread retrieval failed.

sabineconversational-aiux-improvement52c6360
engineering12:00 AM

Sabine chat context trimmed to current session only

Fixed a context bloat issue where Sabine's chat hook was sending the entire message history (including reloaded DB state) to the LLM on every request. Now only current-session messages are sent as conversation context, reducing token costs and improving response latency.

sabineperformancechatllm-context
engineering12:00 AM

Memory Architecture & Intelligent Routing Wave 1 Ships

Phase 2 memory architecture and Phase 3 routing intelligence landed in Strug Works, covering SCE-146, 148-150. This foundational update improves how agents store, recall, and route information across the platform, setting the stage for smarter context awareness and task orchestration.

memoryroutingarchitecturephase-2phase-3
engineering12:00 AM

Fixed CORS blocking for Sabine frontend deployments

Updated server CORS configuration to allow Sabine's Vercel frontend domains. The backend was only whitelisting Dream Team domains, blocking legitimate requests from sabine-super-agent.vercel.app. This restores cross-origin access for Sabine's production frontend.

corsinfrastructuresabinebackend
engineering12:00 AM

Fixed Authentication Header in Sabine Frontend

Corrected the API authentication mechanism in the Sabine frontend to use X-API-Key header instead of Authorization Bearer. The backend validates against AGENT_API_KEY, but the frontend was sending the wrong header format, causing authentication failures.

authenticationbug-fixsabineapi
engineering12:00 AM

Backend Budget Execution Fixes Merged

Fixed 5 critical issues in agent executor, task runner, and git push tools that were causing sc-frontend budget failures. The patches address backend execution flow problems that prevented tasks from completing successfully. These stability improvements ensure more reliable agent operations across the platform.

backendbugfixagent-executorstability
engineering12:00 AM

Fixed Premature Mission Completion in Spec-First Orchestration

The sc-orchestrator persona wasn't capturing implementation task IDs, causing missions to complete before the actual work finished. We updated the orchestrator logic in agent_executor.py to properly track task IDs through the spec-first workflow, ensuring missions only complete when all implementation is done.

orchestrationbug-fixmission-tracking
engineering12:00 AM

Dream Team MCP Server — FastMCP over Streamable HTTP

Shipped a Model Context Protocol server exposing 4 Dream Team tools (agent status, mission planning, task dispatch, and metrics) over streamable HTTP transport. Built with FastMCP and authenticated via JWT. This makes Strug Works capabilities accessible to any MCP-compatible AI client — Claude Desktop, Zed, or custom tools.

mcpfastmcpinfrastructureapi
engineering12:00 AM

Gmail Integration Hardening: Status Tokens and MCP Singleton

Shipped reliability improvements to Sabine's email integration including status tracking tokens, MCP server singleton pattern, and deployment runbook. These changes reduce email handling errors and improve observability across the Gmail connection layer.

gmailreliabilityinfrastructuresabine
engineering12:00 AM

Reverted multi-intent default in Sabine assistant

Changed SABINE_MULTI_INTENT default back to false. Multi-intent handling added complexity to routine assistant interactions. Keeping it opt-in preserves predictable single-action behavior for most workflows.

sabineassistant-behaviorconfiguration
engineering12:00 AM

Fixed broken CI workflows and Sanity config

Repaired two GitHub Actions workflows (strug-blog-sync.yml and notify-progress-stream.yml) that were failing due to references to a non-existent Gemini action. Both now use Dream Team dispatch for reliable execution. Also corrected the Sanity project ID in CLAUDE.md and added a backfill script to recover 12 missed stream entries from the outage period.

ci-cdgithub-actionssanityinfrastructure
engineering12:00 AM

Sabine Reminders Fixed: Scheduler Job Now Active

Reminders in Sabine weren't firing due to a missing background scheduler job and a TypeError during reminder creation. Both issues are now resolved, restoring reminder functionality across the platform.

engineering12:00 AM

Fixed sidebar text visibility in Sabine light mode

Sidebar text was completely invisible in light mode, breaking navigation. Updated color tokens to ensure text contrast across both themes. Also moved Upload Knowledge to the top of the sidebar for faster access to the most-used feature.

sabineuiaccessibilitynavigation
engineering12:00 AM

Document-ingested memories now visible to retrieval

Fixed a critical bug where memories created from document ingestion were defaulting to 'raw' tier, making them invisible to retrieval queries. Document memories now properly use 'semantic' tier, ensuring they surface in agent context and decision-making.

memoryretrievalbug-fix
engineering12:00 AM

Document classifier ships for Sabine memory ingest pipeline

Added automatic document type classification to Sabine's memory ingestion pipeline. The classifier identifies and tags incoming documents (emails, PDFs, web pages) before they hit vector storage, enabling smarter retrieval and context-aware responses. This closes a gap where Sabine treated all documents identically regardless of their nature or purpose.

sabinememoryclassificationml-pipeline
engineering12:00 AM

Biographical Document Ingest with Holistic LLM Extraction

Sabine can now ingest biographical documents using holistic LLM-based extraction. This enhancement moves beyond field-by-field parsing to understand context and relationships within life documents, enabling richer partner profiles. The feature improves how Sabine learns about user history and preferences from uploaded materials.

sabinellmdocument-processingbiographical-data
engineering12:00 AM

Phase 2 Classifier Now Wired Into File Upload

The Phase 2 classifier is now integrated directly into Sabine's file upload endpoint. Files are automatically analyzed and categorized on upload, removing a manual classification step and improving response accuracy for document-based queries.

sabineclassifierfile-uploadautomation
engineering12:00 AM

Sabine Super Agent upgraded to Claude Haiku 4.5

Updated the foundation model powering Sabine from Claude Haiku 3 to Claude Haiku 4.5 (20251001 release). This upgrade delivers faster response times and improved reasoning capabilities across all Sabine interactions—email intelligence, briefings, and autonomous task execution. The model constant HAIKU_MODEL now points to the latest stable release.

sabineclaudeinfrastructureai-models
engineering12:00 AM

Knowledge Upload Integration Restored

Fixed critical parameter mismatch in biographical and legal document upload handlers that was causing all classified file uploads to crash. The fix corrects function signatures to match expected parameters (text, filename, source_document_id instead of document_text, knowledge_file_id) and adds robust JSON parsing with brace-matching fallback for LLM responses wrapped in explanatory text.

backendintegrationbugfixknowledge-ingestion
engineering12:00 AM

Legal Ingest Now Extracts Contract and Customer Details

The legal document ingest pipeline now captures contract numbers, customer names, addresses, and phone numbers from uploaded documents. This enhancement fills a critical gap in contract identification, making it easier to track and reference agreements within Sabine's partnership workflows.

legal-ingestdata-extractionsabine
engineering12:00 AM

Fixed Memory Ingest Parameter Mismatch in Sabine Backend

Corrected kwarg names in biographical and legal memory ingest handlers. The upload handler was passing `document_text` and `knowledge_file_id`, but both ingest functions expected `text` instead. This fix ensures memory ingestion flows work correctly for Sabine's knowledge management system.

backendbug-fixmemorysabine
engineering12:00 AM

Fixed Haiku JSON Parsing in Biographical Ingest

Shipped a fix for Claude Haiku's tendency to omit outer braces in JSON responses during biographical document processing. The parser now handles ```json "assertions": [...] ``` syntax alongside standard JSON, improving extraction reliability. Also strengthened the system prompt to explicitly require complete JSON structure.

llm-integrationparsingbiographical-ingestreliability
engineering12:00 AM

Comprehensive Legal Contract Data Extraction for Sabine

Redesigned Sabine's legal document extraction prompt to capture 95%+ of actionable contract data including terms, obligations, payment structures, and renewal clauses. Improved memory creation ensures no critical contract details are missed during document ingest.

engineering12:00 AM

Biographical ingest now groups narrative memories for better retrieval

Sabine's biographical memory system was losing important context because atomic assertions like "Subject was born in Peoria" produced embeddings that scored below the 0.6 similarity threshold during retrieval. We now group related biographical facts into narrative chunks, preserving context and improving recall accuracy for personal history.

sabinememoryembeddingsretrieval
engineering12:00 AM

Fixed memory retrieval bias in LLM context headers

Changed confidence tier labels from judgmental language ('Uncertain memories') to neutral descriptors. The LLM was systematically ignoring LOW-confidence memories because the context header instructed it to 'acknowledge uncertainty' — effectively teaching it to discount useful information. Updated labels now present all tiers objectively, ensuring the model considers all retrieved memories.

engineering12:00 AM

Fixed deployment script line endings for Linux containers

Added .gitattributes to force LF line endings for shell scripts in the deploy/ directory. CRLF line endings were causing 'cannot execute: required file not found' errors on Railway's Linux containers, breaking deployments.

deploymentinfrastructuredevopsrailway
engineering12:00 AM

Memory Lab env vars now load dynamically on Railway

Fixed a critical bug where Memory Lab environment variables were read at module import time instead of runtime. On Railway's container platform, this caused failures when modules loaded before env injection. The fix moves os.getenv() calls into functions, ensuring vars are read when needed.

memory-labinfrastructurerailwayenvironment-config
engineering12:00 AM

Fixed Sabine Brain UUID in Memory Lab Integration

Updated brain_id from string name 'sabine' to actual UUID (e2c1a407-...) in Memory Lab client. The Memory Lab API expects UUID identifiers, not string names. This fix ensures proper agent context retrieval for Sabine.

memory-labsabinebugfixintegration
engineering12:00 AM

Northern Lights Calendar Frontend and Backend Integration Shipped

Sabine's calendar system now features a complete frontend interface with full backend merge endpoint integration. This enables users to view and manage calendar events with proper data synchronization between the UI and backend services.

calendarfrontendbackendintegrationsabine
engineering12:00 AM

Sabine Super Agent Phase 2: Six new frontend pages shipped

Complete frontend build-out for SCE-20 Phase 2 adds six new pages to Sabine Super Agent, expanding the user interface for briefings, logistics management, and intelligence dashboards. This phase transforms Sabine from a backend-heavy assistant into a full-featured web application with comprehensive UI coverage.

sabine-super-agentfrontendui-expansionphase-2
engineering12:00 AM

Batched Parallel Tool Calls Shipped for Agent Performance

Strug Works agents can now execute multiple independent tool calls simultaneously instead of sequentially. This architectural improvement reduces task completion time for operations like file reads, git commands, and memory lookups that don't depend on each other. Production agents will see immediate performance gains on multi-step workflows.

agentsperformancearchitecture
engineering12:00 AM

G-Eval Drift Detection Monitors Agent Output Quality

Shipped LLM-as-judge drift detection using G-Eval to monitor agent output quality over time. The system automatically scores task completions against defined quality criteria and alerts when performance degrades. This gives us early warning when model changes or prompt drift affect agent reliability.

agentsqualityreliabilitymonitoring
engineering12:00 AM

QA Gate Parity: Local and CI Testing Now Aligned

Fixed a long-standing disconnect between local development checks and CI pipeline validation for Sabine Super Agent. Developers now see the same QA gates locally that run in CI, eliminating the 'works on my machine' gap and catching issues earlier in the development cycle.

sabinetestingci-cddeveloper-experience
engineering12:00 AM

Fixed weather location resolution for US zips and city+state

Sabine's weather function was returning incorrect locations when given US zip codes or city+state queries. This fix ensures weather lookups now resolve to the correct geographic location, so Sabine provides accurate forecasts for the right place—critical for a personal assistant managing logistics and travel.

sabineweatherlocation-resolutionbug-fix
engineering12:00 AM

Fixed Windows Compatibility for Pre-Commit Hooks

Added shebang to Husky pre-commit hook to resolve execution errors on Windows development environments. This fix ensures Git hooks run correctly across all operating systems, improving developer experience for contributors using Windows.

sabinedeveloper-experiencewindowsgit-hookstooling
engineering12:00 AM

Agent Budget Resilience: Commit-as-You-Go and Context Pruning

Shipped critical improvements to agent token budget management including commit-as-you-go discipline, intelligent context pruning, and hard budget gates. These changes prevent agents from hitting token limits mid-task and ensure all work is preserved through incremental commits.

agentsreliabilitybudget-management
engineering12:00 AM

SleepGate Memory Consolidation Shipped to Production

Strug Recall now consolidates memory during idle periods using SleepGate, FTM decay, and Fisher Information pruning. The system automatically identifies important memories, fades transient context, and prunes low-value entries—mimicking biological sleep cycles to keep agent recall sharp and relevant.

strug-recallmemoryautomationinfrastructure
engineering12:00 AM

Neurologist's Window: 3D Memory Graph Visualization Ships

Strug Recall now includes a 3D force-directed graph that visualizes memory relationships as a living neural network. Built with Three.js and react-force-graph, the Neurologist's Window lets you explore how agents connect concepts, navigate memory clusters by confidence and recency, and understand the shape of agent cognition in real time.

strug-recallmemoryvisualizationsce-170
engineering12:00 AM

Railway Worker Service Configuration Fixed

Added missing railway.json configuration file for the worker service. Railway was logging "service config not found" errors because the worker had a Dockerfile but no Railway deployment config, which has now been resolved.

infrastructuredeploymentrailwayworker-service
engineering12:00 AM

Fixed Three Critical Bugs Blocking Memory Ingestion

Memory ingestion was completely broken due to three separate bugs: incorrect input_type constructor in langchain-voyageai integration, malformed entity UUID generation, and FamilyMember parsing failures. All three issues have been resolved and memory ingestion is now operational.

memorybug-fixingestionsabine
engineering12:00 AM

Memory Hygiene Pipeline: Temporal Normalization & Contradiction Resolution

Shipped automated memory maintenance for Strug Recall. The new pipeline normalizes timestamps, detects and resolves contradictions, and prunes stale entries. This keeps agent memory accurate and performant as the system scales.

memoryinfrastructurestrug-recallautomationmaintenance
engineering12:00 AM

Spreading Activation Retrieval with Synapse Algorithm Ships

Strug Recall now uses spreading activation retrieval powered by the Synapse algorithm with BM25 dual-trigger. This brings graph-based memory traversal to agent context retrieval, letting agents discover connected knowledge beyond direct keyword matches.

memoryretrievalbm25spreading-activationstrug-recall
engineering12:00 AM

Fixed v4.0 retrieval regression: 0% recall restored

Phase 0 TDD simulation revealed the current system achieved 0% recall across all test queries. Root cause analysis identified three critical issues in memory retrieval, embedding similarity, and agent core logic. All three causes have been addressed and verified through cross-compatibility simulation tests.

retrievalhotfixtddmemory
company12:00 AM

Strug City Brand Launch: AI-Native Company Site

Launched our enterprise site with full team profiles — 1 human founder and 7 AI agents building together. About page tells our AI-native story, products roadmap is live, and Strug Works Virtual Engineering is officially named.

brandlaunchteamAI-native
engineering12:00 AM

Progress Stream Automation Ships with GitHub Actions

GitHub Actions now auto-dispatches sc-content-writer on every push to main, creating published stream entries and draft blog posts—replacing the deprecated Gemini CLI. New Linear tools (linear_update_issue, linear_create_comment) let agents self-close issues. CI hardened with secret validation, timeouts, injection prevention, and merge commit fixes.

automationgithub-actionsci-cdlinearcontent-pipeline
company12:00 AM

Strug City Brand Launch: Team, Products, Story

Launched the Strug City brand with our full team page—1 human founder and 7 AI agents working together. Added our origin story, renamed Dream Team Strug to Strug Works Virtual Engineering, and shipped a products roadmap. This is who we are.

brandteamlaunch
engineering12:00 AM

Reminders endpoint error handling and diagnostics shipped

Added comprehensive error handling to the reminders endpoint that was causing 500 errors. Implemented diagnostic endpoint to surface visibility into system state and error conditions. This improves reliability for Sabine users relying on reminder functionality.

backenderror-handlingdiagnosticssabine
engineering12:00 AM

Weather Skills Added to Sabine Agent Configuration

Added OpenWeatherMap API integration to Sabine's skill set, enabling weather queries and location-based responses. Updated environment configuration with clear documentation for API key setup and rate limit guidance, making it easier for developers to enable weather capabilities.

sabineapi-integrationweatherconfiguration
engineering12:00 AM

Email Integration: Service Account Auth & Auto-Recovery

Fixed authentication flow for email service accounts and added automatic recovery when the poller encounters errors. This resolves intermittent email integration failures and improves system reliability without manual intervention.

emailauthenticationreliabilitysabine
engineering12:00 AM

Memory Lab Now Connected to Sabine's Active Retrieval Path

Fixed Memory Lab integration in Sabine by moving it from retrieve_context to retrieve_context_tiered—the function Sabine's agents actually call at runtime. Memory Lab retrieval was integrated at line 790 but Sabine's execution path uses the tiered retrieval strategy, so the feature was technically present but functionally invisible. This fix ensures Sabine agents can now access Memory Lab context during conversations.

sabinememory-labretrievalbugfixcontext
engineering12:00 AM

Diagnostic Endpoint Ships for Memory Lab Integration Testing

A new /agent/diagnostic endpoint now tests every layer of the Memory Lab integration: environment configuration, service health, brain listing, retrieval API calls, and the memory_lab_client module. Engineers can validate the complete stack with a single curl command, eliminating guesswork when debugging integration issues.

memory-labdiagnosticsapitestingintegration
engineering12:00 AM

Calendar Feed Ingestion Skill Shipped to Sabine

Added ICS parsing and Google Calendar sync capability to Sabine, enabling the AI partnership platform to read and understand user schedules. This foundational skill allows Sabine to provide calendar-aware assistance and proactive scheduling support.

sabinecalendarintegrationskills
engineering12:00 AM

Calendar sync engine ships with diff detection

Sabine can now detect changes in calendar feeds and sync them to Google Calendar automatically. The engine runs periodic checks, identifies what changed (new events, updates, deletions), and pushes only the deltas. Phase 1 of autonomous calendar management.

calendarsabinesync-enginepythonautomation
engineering12:00 AM

Gmail sync now handles timestamp-aware tokens correctly

Fixed a critical bug where stale database tokens were breaking Gmail synchronization. The system now properly compares timezone-aware timestamps, preventing authentication failures when tokens expire. This ensures reliable email integration for Sabine users.

gmailauthenticationpythonbug-fixsabine
engineering12:00 AM

Fixed Critical Reminder Bugs in Sabine Super Agent

Resolved four critical bugs affecting Sabine's reminder system: reminders disappearing from the UI, an infinite scheduling loop, false success status messages, and inconsistent state management. Reminders now persist correctly, schedule once, and report accurate completion status.

sabinebug-fixremindersreliability
engineering12:00 AM

Dev session workflow config shipped to enterprise site

Added .claude/launch.json and dev-session.config.json to enable structured development sessions with Claude Desktop's /dev-session skill. Also updated naming conventions documentation and validation scripts to ensure consistent product terminology across the codebase.

developer-experiencetoolingnaming-conventionsclaude-desktop
engineering12:00 AM

Slack Approval Alerts and Escalation Reminders Shipped

The alerter service now sends real-time Slack notifications for mission approvals and automated escalation reminders. This reduces approval bottlenecks by pushing critical decisions directly into team communication channels instead of requiring dashboard polling.

slackalertingapprovalsinfrastructure
engineering12:00 AM

Fixed 4 Frontend Bugs in Strug Central

Resolved critical issues affecting graph rendering, observability UI, mobile navigation, and Linear integration. These fixes improve UI reliability across Strug Central's core surfaces and restore proper mobile responsiveness.

frontendbug-fixuimobilelinear
engineering12:00 AM

Fixed 5 Critical Backend Budget Execution Issues

Resolved multiple backend failures affecting sc-frontend budget operations. Fixed issues in agent executor task handling, task runner budget logic, and git push operations. These fixes restore reliability for frontend build and deployment workflows.

backendbugfixagent-executorgitbudget
engineering12:00 AM

Database Schema Extended for CTO Digest Scheduling

Migration 026 extends the gtm_schedule table to support daily and weekly CTO digest content types. The update widens content_type and cadence constraints while inserting default schedule rows, enabling automated digest delivery workflows. This foundation supports the upcoming CTO digest feature for streamlined engineering updates.

databasemigrationcto-digestgtm-schedule
engineering12:00 AM

GTM Scheduler Now Supports Daily Cadence and Digest Content

We've enhanced the GTM scheduler with daily scheduling capabilities and new digest content type support. This update enables more flexible content scheduling patterns and expands the types of marketing content that can be automated through the system.

gtm-schedulerautomationcontent-types
engineering12:00 AM

Fixed Agent Memory Access Controls for All Roles

Rebuilt Row Level Security (RLS) policies for the agent_memory table to ensure all agent roles have proper read/write access. This fix resolves SCE-58, where certain agent roles were unable to access their memory scopes due to incomplete RLS configuration.

databasesecurityagent-memoryrlsbugfix
engineering12:00 AM

Fixed TypeScript build errors in task and mission components

Resolved strict TypeScript compilation failures that were blocking Vercel deployments. Added the missing parent_task_id field to the Task interface and fixed unsafe type assertions in the task-groups API route and MissionCard component. The build pipeline is now passing and deployments are unblocked.

typescriptbuild-fixdeployment
engineering12:00 AM

Dream Team MCP Server Deployment Fixes Shipped

Merged deployment fixes and smoke tests for the Dream Team MCP server. Updates to server.py, Railway configuration, and new smoke test scripts ensure the MCP server deploys reliably and can be validated in production environments.

mcpdeploymentinfrastructure
engineering12:00 AM

Memory Observatory: Browse and Edit Agent Memory

Shipped a new Memory Observatory interface that lets you browse, edit, and inject entries into agent memory. Includes REST API endpoints for memory CRUD operations, authentication middleware, and comprehensive test coverage. This makes agent memory visible and debuggable for the first time.

memoryobservabilityapiagents
engineering12:00 AM

Sabine Telemetry & Today Dashboard Shipped

Added comprehensive telemetry instrumentation to Sabine's core workflows and introduced a new Today dashboard for daily partner activity. This enables better observability into how users interact with their AI partnerships and provides a focused daily view for quick check-ins.

sabinetelemetrydashboardobservability
engineering12:00 AM

Fixed API route blocking in gate middleware

The gate middleware was incorrectly blocking /api/ routes, causing CI dispatch endpoints to return 403 errors. This fix exempts API routes from the gate, allowing GitHub Actions webhooks and automated workflows to function properly. CI pipelines can now dispatch tasks without authentication failures.

middlewareapici-fixdeployment
engineering12:00 AM

CTO Digest Scheduling: Database Schema Extended for New Content Types

Migration 026 expands the gtm_schedule table to support daily and weekly CTO digest content types. The update widens CHECK constraints on content_type and cadence columns, and adds idempotent default schedule rows for digest automation. This lays the groundwork for automated executive summaries and engineering insights.

databasemigrationautomationcto-digest
engineering12:00 AM

God View Cost Panel: Real-Time Agent Spend Tracking

Shipped a new cost transparency panel in God View that shows daily agent spend broken down by role and individual tasks. The dashboard now surfaces total daily costs, per-role breakdowns, and task-level cost badges, giving teams immediate visibility into AI agent economics. This is the first step toward granular cost control and budget alerts.

cost-trackingobservabilitygod-viewapi
engineering12:00 AM

Semantic Memory Retrieval with pgvector and Cosine Similarity

Shipped pgvector-based semantic memory retrieval using cosine similarity on 1536-dimensional embeddings with IVF indexing. The system now falls back to confidence-sort when semantic search returns insufficient results, ensuring agents always have relevant context while prioritizing meaning over keywords.

pgvectorsemantic-searchmemoryembeddingsinfrastructure
engineering12:00 AM

Dream Team MCP Server Cycle 7 Complete

Shipped comprehensive updates to the Model Context Protocol server including enhanced Supabase integration, updated MCP configuration templates, and expanded integration test coverage. This cycle strengthens the foundation for AI agent workflows with improved database connectivity and reliability testing.

mcpbackendtestingsupabasecycle-7
engineering12:00 AM

Agent Memory Seeding Complete Across All Tiers

Strug Works agents now have comprehensive memory seeding across global, role, and task scopes. This foundation enables better context retention and more intelligent decision-making across all agent interactions. All memory tiers have been seeded and verified.

agent-memoryplatforminfrastructure
engineering12:00 AM

Sabine now delivers reminders via Slack

Wired up Slack delivery for reminder notifications in Sabine Super Agent. Users can now receive time-based and location-based reminders directly in Slack channels, completing the notification delivery pipeline that was instrumented in previous work. This bridges the gap between Sabine's reminder logic and where users actually work.

sabineslacknotificationsremindersintegrations
engineering12:00 AM

Memory Backend Endpoints Expanded for Strug Recall

Added missing endpoints for entity management, memory streams, and archived entry deletion to the Python backend. These API improvements complete the backend infrastructure needed for Strug Recall, our memory browser interface, enabling full CRUD operations on organizational memory.

backendmemoryapistrug-recall
engineering12:00 AM

Fixed 500 Errors in Entities and Reminders APIs

Resolved critical server errors affecting the entities and reminders endpoints in Sabine. These fixes ensure reliable data retrieval for AI partnership management and prevent application crashes when accessing core features.

backendapibugfixsabinereliability
engineering12:00 AM

Fixed Reminders 500 Error with Real User UUIDs

Resolved a critical bug in Sabine's reminders endpoint that was causing 500 errors by replacing hardcoded 'default' strings with proper user UUID resolution. The fix ensures reminders are correctly associated with authenticated users, eliminating authentication failures and improving system reliability.

backendbugfixremindersauthenticationsabine