Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
A live operations simulator for small events: watch a disruption ripple through the plan, then rescue it with NVIDIA Nemotron on Nebius and a constraint solver that checks every fix.
BusinessPython · TypeScriptGitHub @martiaaguileraOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
See the chain reaction. Fix the day. A live-event disruption simulator: NVIDIA Nemotron on Nebius Token Factory proposes fixes, a CP-SAT verifier proves them.
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗See the chain reaction. Fix the day. Built at the Nebius × NVIDIA Global AI Hackathon 2026, track Best Apps and Agents.
When one thing goes wrong at a live event, Ripple Room shows everything it affects and helps you find a recovery plan you can trust. NVIDIA Nemotron on Nebius Token Factory proposes, an OR-Tools CP-SAT verifier checks, and a human approves.
| Who | Does | Cannot |
|---|---|---|
| NVIDIA Nemotron 3 Super on Nebius Token Factory | reads the situation through tools, proposes typed fixes, revises after a rejection | change the plan, or call a fix "verified" |
| OR-Tools CP-SAT + an independent validator | decides whether a fix holds, and explains why not | be overruled: a timeout is "unknown", never green |
| You | set priorities, compare verified options, approve one or none | nothing changes until you approve |
Event coordinators run a day on one fixed opening time and many jobs that depend on each other. When a truck is late or a technician is out, they must work out quickly what else slips and what to change, usually from a spreadsheet that does not show the knock-on effects. Ripple Room shows the chain reaction, suggests fixes, and only offers a fix after a solver has checked that it really works. The coordinator stays in charge: nothing changes until they approve, and they get a list of who to tell.
Browser ──▶ FastAPI (stateless; client holds content-hashed revisions)
├─ impact: do-nothing propagation, causal waves, slack, driving path
├─ interpret: free text → typed incidents + priorities (Nemotron, one forced tool call) → human confirms
├─ recover (SSE): bounded agent loop ───▶ Nebius Token Factory ─▶ nvidia/nemotron-3-super-120b-a12b
│ tools: get_situation · inspect_task · list_interventions · evaluate_patch · submit_options
│ every proposal ─▶ verifier: patch checks → CP-SAT → independent validator → explanation
├─ playbook search (deterministic, labelled "no AI") and verified alternatives in the same pool
└─ apply: re-verifies from scratch; stale revision → 409; change notice
Claude Code was the development tool. At runtime the only AI is NVIDIA Nemotron served by Nebius Token Factory.
| Agent v2 | Agent v4 | Playbook search | Greedy | |
|---|---|---|---|---|
| Verified recovery found when one exists | 16/17 | 16/17 | 15/17 | 15/17 |
| Honest "none" when none exists | 3/3 | 3/3 | 3/3 | 3/3 |
| Options failing independent re-validation | 0 | 0 | 0 | 0 |
| Best option equals the exhaustive oracle's | 9/17 | 7/17 | 8/17 | 6/17 |
| Median latency | 19.5 s | 18.4 s | 0.08 s | 0.11 s |
| Cost of the 20 runs (list price) | $0.24 | $0.22 | 0 | 0 |
What this does and does not show:
docs/evaluation/CASES-c19-c09.md.docs/evaluation/. The current agent (hybrid, prompt v7) has not yet been measured live.An axe gate (WCAG 2.0/2.1/2.2 A and AA) runs on five journey states on desktop and mobile. Every control must be keyboard-reachable and named, and a keyboard-only journey test applies and undoes a recovery. Status is always written in words, not colour alone. Animations follow the system's reduced-motion setting, and the "Play animations" button under the venue scene opts back in.
Prerequisites: Python 3.13 with uv, Node 24.
cd services/api && uv sync && uv run uvicorn app.main:app --port 8000 # mock agent by default
cd apps/web && npm ci && NEXT_PUBLIC_API_BASE=http://localhost:8000 npm run dev # http://localhost:3000
Mock mode is labelled "simulated" in the UI. Live mode: copy .env.example to services/api/.env, set
AI_MODE=live and NEBIUS_API_KEY, then uv run python ../../scripts/smoke_nebius.py --probe. Spend
controls and the kill switch are in docs/operations.md.
cd services/api && uv run pytest -q && uv run ruff check . && uv run mypy app
cd apps/web && npm run typecheck && npm run lint && npm test && npm run build && npm run e2e # desktop, mobile, Firefox
uv run python scripts/check_judge_demo.py https://ripple-room-five.vercel.app # production judge path (makes live calls)
services/api/app/domain scheduling domain · app/solver CP-SAT, verifier, playbook search, greedy ·
app/agent tools, prompts, loop, interpretation · app/providers Nebius adapter + labelled mock ·
app/evaluation 20-case harness · apps/web Next.js app · docs/ architecture, decisions,
evaluation, operations, journal, feedback.
MIT. See LICENSE.