Skip to content

Rename Colloquip to Colloquium and add demo infrastructure#4

Merged
sunitj merged 32 commits intomainfrom
claude/add-claude-documentation-Rr6AF
Feb 16, 2026
Merged

Rename Colloquip to Colloquium and add demo infrastructure#4
sunitj merged 32 commits intomainfrom
claude/add-claude-documentation-Rr6AF

Conversation

@sunitj
Copy link
Owner

@sunitj sunitj commented Feb 16, 2026

Summary

This PR renames the project from "Colloquip" to "Colloquium" throughout the codebase and adds comprehensive demo infrastructure for showcasing the platform's multi-agent deliberation capabilities.

Key Changes

Branding & Naming:

  • Renamed project from "Colloquip" to "Colloquium" across all documentation, code, and configuration
  • Updated API title, frontend page titles, README, and package metadata
  • Updated Claude model references from claude-sonnet-4-5-20250929 to claude-opus-4-6

Demo Infrastructure:

  • Added scripts/seed_demo.py: Comprehensive seeding script that creates 5 communities with 16 threads of demo data, supports real LLM execution, mock mode, and fixture export/reload
  • Added demo/demo.spec.ts: Playwright automation script for 3-minute competition video showcasing dual community deliberations
  • Added demo/demo-v2.spec.ts: Extended demo script with live commentary and cross-community thread examples
  • Added demo/VOICEOVER_SCRIPT.md: Detailed narration guide for demo recording
  • Added demo/README.md: Demo setup and execution documentation
  • Added demo/playwright.config.ts: Playwright configuration for demo automation
  • Added demo/package.json: Demo-specific dependencies

Frontend Enhancements:

  • Added AhaMomentFeed.tsx: New component for visualizing key deliberation moments (phase transitions, red team fires, energy spikes, etc.)
  • Added MemoryGraph.tsx: Graph visualization component for memory relationships and cross-references using reagraph
  • Updated memories.tsx route to support graph visualization toggle
  • Added reagraph dependency to frontend for network visualization

Backend Improvements:

  • Added api/utils.py: Shared UUID parsing utility for route handlers
  • Enhanced engine.py with cost tracking and session ID support
  • Extended models.py with FAILED session status
  • Added DBCrossReference support to repository for memory cross-linking
  • Enhanced mock LLM with improved claim and connection generation
  • Added agent-level metrics to metrics.py
  • Extended platform routes to support thread seeding and community-scoped deliberations

Documentation & Configuration:

  • Added CLAUDE.md: Comprehensive developer guide covering project overview, tech stack, architecture, and development workflow
  • Added LICENSE: AGPL-3.0 license file
  • Added .claude/settings.json: Claude plugin configuration
  • Updated .gitignore to exclude plan/, issues/, demo fixtures, and database files

Removed Obsolete Documentation:

  • Removed docs/IMPLEMENTATION_PROMPT_PHASE_1_2.md
  • Removed docs/IMPLEMENTATION_PROMPT_PHASE_3_5.md
  • Removed plan/IMPLEMENTATION_PLAN.md
  • Removed plan/EVOLUTION_PLAN.md
  • Removed plan/PHASE_3_5_PLAN.md
  • Removed plan/SOCIAL_PLATFORM_PLAN.md
  • Removed plan/FRONTEND_REBUILD_PLAN.md
  • Removed plan/PLAN.md
  • Removed issues/01.md and issues/02.md

Notable Implementation Details

  • Demo seeding supports three modes: real LLM (authentic content), mock (fast testing), and fixture loading (instant replay)
  • Playwright demo scripts include configurable narrator pacing and automatic browser interaction timing
  • Memory graph visualization integrates with existing community color scheme for visual consistency
  • All persona YAML files updated with consistent formatting while preserving agent expertise definitions
  • Cross-reference support added to data model for Phase 3+ memory interconnection features

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd

claude and others added 30 commits February 16, 2026 03:56
Documents the full codebase structure, tech stack, development workflows,
code conventions, architecture concepts, and common tasks to enable
AI assistants to work effectively with the Colloquip codebase.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
Automated 5-act demo story:
- Act 1: Platform init, agent pool browse
- Act 2: Enter community, create deliberation thread
- Act 3: Launch live deliberation, watch agents debate with energy/phase tracking
- Act 4: Human intervention mid-deliberation
- Act 5: Consensus reveal (agreements, disagreements, stances)

Uses GLP-1 agonists for Alzheimer's as the demo hypothesis.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
Rewrites the demo to run two deliberations simultaneously in separate
browser tabs, showcasing the platform's concurrency:
  - Thread 1: GLP-1 agonists for Alzheimer's disease
  - Thread 2: De novo enzyme design via directed evolution + ML

The 7-act script cross-cuts between both live sessions, injects a
human intervention into the protein engineering thread, and reveals
consensus from whichever finishes first.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- CLAUDE.md: Add "Quick Start (Docker Compose)" as the primary section
  with service table, env setup, and dev/monitoring overrides. Move
  local (uv/npm) commands to a secondary section.
- demo: Default baseURL to localhost:8000 (docker compose serves SPA +
  API on single origin). Support DEMO_BASE_URL env var override.
  Add `npm run demo:vite` for local Vite dev server workflow.
- demo README: Prerequisites now start with `docker compose up -d`,
  with non-Docker instructions as a callout. Add teardown section.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
The text=Settings locator matched both the sidebar link and page heading,
causing a strict mode violation. Use getByRole("heading") instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Rename project from Colloquip to Colloquium in all user-facing docs and UI
  (README, CLAUDE.md, demo scripts, web dashboard title/pages)
- Switch default LLM model from claude-sonnet-4-5 to claude-opus-4-6 across
  settings, CLI, API, and LLM adapter (with updated pricing)
- Add "Built with Claude Opus 4.6" section to README explaining why Opus 4.6
  is critical to the system's emergent behavior
- Add scripts/reset-demo.sh to clear all prior state before recording

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
…both

- Demo now creates TWO separate communities (Neuropharmacology + Enzyme
  Engineering) instead of using a single pre-existing one
- Thread 1: GLP-1 for Alzheimer's (drug_discovery domain)
- Thread 2: Engineered PETases for plastic degradation (protein_engineering
  domain) — deliberately aggressive "5-year" timeline to provoke red-team
  pushback and reasoning against feasibility
- Human intervention on BOTH threads:
  - Thread 1: Probe blood-brain barrier penetration question
  - Thread 2: Skeptical challenge on lab-to-industrial scale gap
- Updated demo README with new story arc, community descriptions, and
  intervention documentation

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Use .first() on New Thread button locator to avoid strict mode violation
  when both "New Thread" and "Create First Thread" buttons are visible
- Make ThreadHeader hypothesis prop optional (fixes TS2322)
- Simplify mode to 'mock' constant (fixes TS2367 dead comparison)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ies, calibration

Wire the full deliberation pipeline so community agents, persistence, memory
extraction, and calibration all work end-to-end instead of being stub/mock-only.

Features:
- Add LLM mode toggle (real/mock) to thread launch UI, default to real
- Pass community name + thread ID from frontend so deliberations use
  recruited community agents instead of hardcoded CLI defaults
- Match session ID to thread ID so navigating back loads completed state
- Persist sessions to DB immediately after creation
- Extract synthesis memories after consensus via SynthesisMemoryExtractor
- Initialize outcome_tracker and memory_store at app startup (fixes 503s)
- Include consensus data in in-memory history responses

Code quality:
- Extract shared parse_uuid() into api/utils.py (was duplicated 4x)
- Add _db_repo() context manager to deduplicate 7 persistence methods
- Remove dead else-branches in lock-guarded code (lock always exists)
- Fix SSE start endpoint to unsubscribe on any exception, not just ValueError
- Add SessionStatus.FAILED so crashed deliberations are distinguishable
- Remove fictional character names from all 10 persona YAML files
- Remove redundant test fixtures (app_with_tracker, app_with_memory)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Complete README overhaul optimized for competition judges:
  architecture diagram, comparison table, "Built with Claude Opus 4.6"
  section, accurate stats (707 tests, 71 modules, 31k LOC)
- Add roadmap: DSPy prompt optimization, cross-community intelligence,
  human-in-the-loop, advanced analytics
- Add AGPL-3.0-or-later LICENSE file (was declared in pyproject.toml
  but missing from repo)

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
The mode toggle defaults to Real LLM, which is too slow for the
Playwright demo script. Select Mock mode explicitly before launching.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Expand the one-line memory mention into a full architecture section
covering Bayesian confidence (Beta distributions), composite retrieval
scoring, temporal decay, confidence update table, cross-reference
detection, and deliberation diffing.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Add AhaMomentFeed component that detects and highlights emergent
  moments (phase transitions, red-team firing, bridge connections,
  novelty breakthroughs, energy spikes, human interventions) in the
  right panel during deliberations
- Fix right panel layout: thread page uses h-[100dvh] with
  overflow-hidden so the right panel stays pinned while the
  conversation feed scrolls independently
- Add seed_demo.py script to populate 4 communities with 13 threads
  across neuropharmacology, enzyme engineering, immuno-oncology, and
  synthetic biology domains (supports both real LLM and mock modes)
- Add demo-v2.spec.ts Playwright script designed for live commentary:
  shows pre-seeded completed threads, launches one live deliberation,
  demonstrates human intervention, then browses seeded depth
- Add VOICEOVER_SCRIPT.md with full narrator guide aligned to the
  Playwright timing

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Rename "Real LLM" dropdown label to "claude-opus-4-6"
- Demo defaults to real LLM; set DEMO_MODE=mock for fast mock runs
- Scale demo timeouts dynamically (mock: 5min, real: 10min)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The CostTracker infrastructure existed but was completely disconnected
from the deliberation pipeline — costs were never recorded, so the
thread cost summary always showed zeros.

Changes:
- Add input_tokens/output_tokens to LLMResult so per-call token
  counts are available after each LLM call
- AnthropicLLM populates token counts from the API response usage
- MockLLM estimates token counts from prompt/response word counts
- BaseDeliberationAgent stores last_input_tokens/last_output_tokens
  after each generate_post() call
- EmergentDeliberationEngine accepts optional cost_tracker + session_id,
  records costs after each _safe_generate() and synthesis call
- SessionManager wires the PlatformManager's cost_tracker into the
  engine and calls start_tracking() when deliberation begins

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
The component was returning null when no aha moments existed, making
it invisible in the right panel. Now shows "Waiting for significant
events..." until phase transitions, red team triggers, etc. occur.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add Microbiome Therapeutics community with 3 threads: FMT vs
  defined consortia, engineered probiotics for IBD, and a cross-
  community thread (gut microbiome predicting immunotherapy response)
  that deliberately overlaps with immuno_oncology
- Add --export flag: copies colloquip.db + saves JSON manifest to
  demo/fixtures/ after seeding with real LLM
- Add --load-fixture flag: restores DB from fixture, inits platform,
  recreates communities and threads with original IDs — instant
  reload, no API keys needed
- Add optional thread_id to CreateThreadRequest and
  PlatformManager.create_thread so fixtures can recreate threads
  with the same UUIDs that match the DB session data
- Gitignore demo/fixtures/ and colloquip.db* files

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Add cross-references repository methods and API endpoint (/memories/graph)
- Build MemoryGraph component using Reagraph (MIT, WebGL force-directed)
- Nodes = memories (sized by confidence, colored by community)
- Edges = cross-references (weighted by similarity)
- Click node to see detail panel with conclusions, confidence, agents
- Add Grid/Graph tab toggle on /memories page
- Add CrossReference type to frontend

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Add citations to LLMResult and MockLLM so observer can detect DEBATE
  phase (citation_density was always 0 in mock mode)
- Wire LLMResult.citations through agent pipeline into Post.citations
- Vary MockLLM SUPPORTIVE template to sometimes omit trailing question,
  allowing question_rate to drop below EXPLORE threshold
- Add PlatformManager.update_thread_status() and push state changes from
  SessionManager._run_deliberation on Post/Phase/Consensus/Error events
- Enrich list_subreddit_threads with live SessionManager data + DB fallback
- Fix CancelledError handler to not overwrite COMPLETED status with PAUSED

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ss-community

- Expand from 7 acts to 8: add dedicated Act 7 for memory graph visualization
- Act 1 now shows Key Moments panel + Cost Summary in the hook
- Act 2 tours all 5 communities (add microbiome), mentions cross-community links
- Act 4 highlights live cost tracking mid-deliberation
- Act 5 checks for Energy Spike and Human Intervention in Key Moments
- Act 6 adds cross-community microbiome+immuno-oncology thread showcase
- Act 7 shows /memories grid view, then switches to Reagraph graph view
- Act 8 closing mentions cost tracking and connected memory
- Update voiceover script to match all 8 acts with new cue phrases
- Add tips #7 (graph closer) and #8 (cost credibility signal)

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Document seed_demo.py usage (real LLM + mock modes)
- Document --export and --load-fixture workflow
- Document demo recording with Playwright + voiceover script
- Update project structure to mention seed script, fixtures, MemoryGraph

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
…n seeding

Adds 5 per-agent Prometheus metrics (posts, tokens, triggers, novelty,
citations) with instrumentation in the deliberation engine. Creates a new
6-panel Grafana dashboard for agent observability. Seeds outcome reports
in seed_demo.py so the calibration overview returns non-zero data.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… root

The export was failing because DEFAULT_DB was hardcoded to
PROJECT_ROOT/colloquip.db, but SQLite creates the DB relative to the
server's working directory. Now _resolve_db_path() checks:
1. DATABASE_URL env var (parses the SQLAlchemy URL)
2. Current working directory (where the server likely ran)
3. Project root (fallback)

Also improved the error message to list candidate paths found and
suggest --db-path when the DB isn't at the expected location.

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
Seeding now automatically exports the DB + manifest to demo/fixtures/
when deliberations complete. The --export flag still works for manual
re-export, but the typical workflow is now just:
  uv run python scripts/seed_demo.py
  # (auto-exports to demo/fixtures/)
  uv run python scripts/seed_demo.py --load-fixture  # restore later

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
- Detect SQLite vs Postgres from DATABASE_URL env var
- Postgres: pg_dump/psql via docker compose exec
- SQLite: file copy (existing behavior)
- Export produces seed.sql (Postgres) or seed.db (SQLite)
- load-fixture restores from whichever format matches

https://claude.ai/code/session_01CRZhQCyC5u13CHsrqiMYmd
sunitj and others added 2 commits February 16, 2026 11:14
These contained internal planning documents and QA reports that are no
longer needed in the repository. Added both directories to .gitignore.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sunitj sunitj merged commit e08770b into main Feb 16, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants