Benjamin Admin
440367b69d
feat(pitch-deck): USP font sizes match Solution slide, product modules updated
...
Build pitch-deck / build-push-deploy (push) Successful in 1m4s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 31s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 30s
USP slide:
- Title/subtitle same as Solution (text-4xl/text-lg)
- Card titles: text-base font-bold (was text-xs)
- Card descriptions: text-sm text-white/50 (was text-[10px])
- Circle text: text-sm (was text-[11px]/text-[9px])
- Cards 240px wide with GlassCard wrapper
Product slide:
- "Integration in Kundenprozesse" → "AI Act Compliance" (UCCA, Betriebsrat)
- "Cookie-Generator" → "Tender Matching" (RFQ gegen Codebase)
- Remove "FR" badge from deployment options
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 14:45:14 +02:00
Benjamin Admin
801a5a43f5
feat(pitch-deck): USP slide — larger circle, title back, infinity hub
...
Build pitch-deck / build-push-deploy (push) Successful in 1m6s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 34s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 34s
- USP as slide title (GradientText) above
- Circle doubled to 380px with spinning ring
- Infinity symbol (∞) in center hub instead of text
- Compliance left, Code right inside circle — larger font
- 4 cards in corners (220px wide, larger text, ~5 lines each)
- Cards spread to corners (top/bottom, left/right)
- Dashed SVG lines connecting circle to cards
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 14:33:28 +02:00
Benjamin Admin
9c23068a4f
feat(pitch-deck): USP slide — large circle with cards on sides
...
Build pitch-deck / build-push-deploy (push) Successful in 1m7s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 35s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 31s
- Large spinning circle (320px) with USP hub in center
- Compliance items left, Code items right inside circle
- 4 arrows pointing outward to capability cards
- 2 cards left (RFQ, Bidirectional), 2 cards right (Process, Continuous)
- Longer descriptions (~5 lines per card)
- Grid layout: cards | circle | cards
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 14:26:59 +02:00
Benjamin Admin
d359b7b734
fix(pitch-deck): HowItWorks line behind icons, remove France refs, SOM label
...
Build pitch-deck / build-push-deploy (push) Successful in 1m6s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 31s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 30s
- Connection line: starts/ends between icons, opaque icon background
- Remove all "oder Frankreich/or France/oder FR/or FR" references
- Market subtitle: remove "Der Maschinenbau"
- SOM label: add "(nur Maschinen- und Anlagenbauer als Kernmarkt)"
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 13:46:21 +02:00
Benjamin Admin
bd37ff807e
fix(pitch-deck): USP slide complete redesign — grid layout
...
Build pitch-deck / build-push-deploy (push) Successful in 1m7s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 31s
CI / test-bqas (push) Successful in 31s
Replace broken absolute positioning with clean grid layout:
- Top: Compliance card | BreakPilot hub (spinning) | Code card
- Arrows + sync labels between cards
- Bottom: 4 capability cards in a row
- No more floating text, no overlapping elements
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 13:25:03 +02:00
Benjamin Admin
40d2342086
fix(pitch-deck): fix JSX syntax error in USPSlide corner cards
...
Build pitch-deck / build-push-deploy (push) Successful in 1m3s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 29s
CI / test-bqas (push) Successful in 27s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 13:14:03 +02:00
Benjamin Admin
adf3bf8301
feat(pitch-deck): USP slide redesign + add to sidebar
...
Build pitch-deck / build-push-deploy (push) Failing after 20s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 31s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 33s
- USP added to slideNames (DE+EN) and chat display names
- Circular layout: BreakPilot hub center, rotating ring,
Compliance & Code sections inside circle
- 4 capability cards in corners connected by dashed lines
- Removed variant toggle (kept variant A design)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 13:04:06 +02:00
Benjamin Admin
1b5ccd4dec
feat(pitch-deck): solution text fixes + USP bridge 3 variants
...
Build pitch-deck / build-push-deploy (push) Successful in 1m5s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 36s
CI / test-python-voice (push) Successful in 38s
CI / test-bqas (push) Successful in 32s
- Solution: 30k → 15k+ EUR per year per application
- Solution: DE oder FR → Deutschland
- USP title: Unser USP → USP
- USP bridge: 3 switchable variants (A: circular loop,
B: infinity loop, C: hexagonal hub) with toggle buttons
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 12:57:30 +02:00
Benjamin Admin
b5d8f9aed3
feat(pitch-deck): add USP slide + update cover and problem texts
...
Build pitch-deck / build-push-deploy (push) Successful in 1m8s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 29s
CI / test-bqas (push) Successful in 28s
- Cover: remove "für den Maschinenbau" from tagline
- Problem subtitle: Maschinenbauer → Deutsche und europäische Unternehmen
- New USP slide after Solution: bridge between compliance docs/audits
and actual code implementation — RFQ verification, bidirectional sync,
automated process compliance, continuous instead of annual checks
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 12:44:32 +02:00
Benjamin Admin
c8171b0a1e
chore(pitch-deck): trigger rebuild 2
...
Build pitch-deck / build-push-deploy (push) Successful in 1m22s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 36s
CI / test-python-voice (push) Successful in 28s
CI / test-bqas (push) Successful in 28s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 11:05:40 +02:00
Benjamin Admin
7e15ef3725
chore(pitch-deck): trigger rebuild for i18n Problem slide changes
...
Build pitch-deck / build-push-deploy (push) Failing after 24s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Failing after 9s
CI / test-python-voice (push) Failing after 11s
CI / test-bqas (push) Failing after 10s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 08:54:03 +02:00
Benjamin Admin
93e319e9fb
feat(pitch-deck): rewrite Problem slide cards for investors
...
Build pitch-deck / build-push-deploy (push) Failing after 8s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Failing after 8s
CI / test-python-voice (push) Failing after 5s
CI / test-bqas (push) Failing after 5s
- Card 1 (KI-Dilemma): clearer framing of sovereignty vs competitiveness
- Card 2: Patriots Act → Patriot Act + FISA 702, Schrems II reference
- Card 3: 50.000+ EUR → Nicht tragbar / Unsustainable, focus on
AI Act, NIS2, CRA since 2024, competitive disadvantage vs US/Asia,
supply chain costs, geopolitical pressure
- Quote updated: Maschinenbauer → Produzierende Unternehmen
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 07:59:59 +02:00
Benjamin Admin
6626d2a8f9
fix(pitch-deck): fix ReferenceError in ChatFAB breaking 2nd message
...
Build pitch-deck / build-push-deploy (push) Successful in 1m4s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 28s
CI / test-bqas (push) Successful in 28s
faqMatch (undefined) → faqMatches[0]. The undefined variable caused
a ReferenceError after streaming completed, which the catch block
turned into "Verbindung fehlgeschlagen" for every subsequent message.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 00:53:42 +02:00
Benjamin Admin
e5d0386cfb
feat(pitch-deck): add FISA 702 FAQ entries for investor agent
...
Build pitch-deck / build-push-deploy (push) Successful in 1m1s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 26s
5 new FAQ entries covering:
- FISA 702 basics (PRISM, Upstream, Schrems II)
- EU cloud region myth (extraterritorial US law)
- DSFA contradiction (risk acceptance vs risk elimination)
- Market opportunity (structural independence)
- BreakPilot architecture (BSI, SysEleven, Hetzner)
Also: middleware fix to allow admin sessions on investor routes
(enables chat in preview mode)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 00:27:47 +02:00
Benjamin Admin
ff071af2a0
fix(pitch-deck): allow admin sessions to access investor routes
...
Build pitch-deck / build-push-deploy (push) Successful in 1m3s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 34s
Admins in preview mode can now use /api/chat and other investor
endpoints without needing a separate investor login.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-15 00:13:13 +02:00
Benjamin Admin
fcdcbc51e3
fix(pitch-deck): regulatory matrix header positioning
...
Build pitch-deck / build-push-deploy (push) Successful in 1m12s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 31s
CI / test-python-voice (push) Successful in 36s
CI / test-bqas (push) Successful in 30s
- Regulatorien + Branche moved to top header row
- Branche: white/70 instead of white/30 for readability
- Regulatorien: indigo color instead of grey
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 23:59:53 +02:00
Benjamin Admin
7b8f8d4b5a
fix(pitch-deck): regulatory matrix — remove legend, stagger headers
...
Build pitch-deck / build-push-deploy (push) Successful in 1m1s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 30s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 29s
- Remove colored dot legend row (redundant with column headers)
- Stagger column headers on 2 rows (odd/even) to save space
- Last column: Reg. → Regulatorien
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 23:54:59 +02:00
Benjamin Admin
f385c612f5
fix(pitch-deck): regulatory matrix header alignment + labels
...
Build pitch-deck / build-push-deploy (push) Successful in 1m4s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 32s
- Column headers: centered text labels instead of icons
- Remove colored dots from headers
- Last column: # → Reg. (Regulierungen)
- Consistent column width for last column
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 23:45:24 +02:00
Benjamin Admin
9166d9dade
fix(pitch-deck): resolve merge conflict in AIPipelineSlide — keep updated version
...
Build pitch-deck / build-push-deploy (push) Successful in 1m0s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 34s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 31s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 17:42:13 +02:00
Benjamin Admin
7ae5bc0fd5
feat(pitch-deck): overhaul AI Pipeline slide with real data
...
- Hero stats: 75+ sources, 70k+ controls, 47k+ obligations
- RAG tab: source categories with investor-friendly explanations
(why court rulings matter, why frameworks define state of art)
- Remove inflated numbers (was 110+ regulations, now accurate 75+)
- Quality tab: continuous expansion, cross-regulation mapping
- Remove NiBiS/education references (irrelevant for compliance)
- All numbers verified against production database
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 17:40:27 +02:00
Sharang Parnerkar
242ed1101e
style(team): tighter card layout — equal height, equity pill, GitHub/LinkedIn detection
...
Build pitch-deck / build-push-deploy (push) Successful in 1m11s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 33s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 31s
- grid items-stretch so cards match height
- Smaller avatar (16->64px) to free vertical space
- Equity moved to a top-right pill (compact); decimals collapsed via equityDisplay()
- Profile link icon auto-detects GitHub vs LinkedIn vs generic
- Expertise tags get their own divider strip at card bottom — cleaner hierarchy
- Card background lightened from 0.08 to 0.04 with subtle hover border
Bio text itself shortened on the data side (both draft versions via admin API).
2026-04-14 16:25:37 +02:00
Sharang Parnerkar
8b2e9ac328
content(pitch-deck): tidy slide text — remove OVH, generalize issue tracker, add live support, Mac Studio option
...
Build pitch-deck / build-push-deploy (push) Successful in 1m4s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 34s
CI / test-bqas (push) Successful in 32s
Solution slide:
- Continuous Code Security: "Jira tickets" -> "tickets in the issue tracker of your choice"
- German Cloud / Full Integration: removed OVH (now "BSI cloud DE or FR"),
removed "AI task creation from audio", added "Live support via Jitsi (video) and Matrix (chat)",
"Mac Mini" -> "Mac Mini/Studio"
Products / Modular toolkit slide:
- Regional bubble: "OVH FR" -> "FR"
How It Works:
- Cloud step: removed OVH and "pre-configured Mac Mini" mentions
Engineering deep dive:
- "Docker Containers" stat -> "Services"; "Coolify -> Hetzner" -> "orca -> Hetzner"
- "Dockerfiles / Fully containerized" stat -> "Infra Components / orca (Rust) + infisical + pg + qdrant"
- devopsStack: Coolify -> orca (Rust), Docker Compose -> Private Registry (registry.meghsakha.com),
HashiCorp Vault -> Infisical, EU-Cloud list drops OVH
- Service Architecture Infrastructure section: add orca (Rust), Infisical, Private Registry
- Footer note drops OVH
Chat / Presenter (consistency):
- chat/route.ts system prompt: OVH removed, Jira-Integration -> Issue-Tracker-Integration
- presenter-faq.ts + presenter-script.ts: OVH references removed across all answers,
Jira mentioned alongside GitLab/Linear/Gitea as examples, Mac Mini -> Mac Mini/Studio
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 16:14:40 +02:00
Benjamin Admin
084d09e9bd
fix(pitch-deck): revert banner test text back to Draft
...
Build pitch-deck / build-push-deploy (push) Successful in 13s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 31s
CI / test-bqas (push) Successful in 31s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 15:32:46 +02:00
Benjamin Admin
646143ce5a
Merge branch 'main' of ssh://gitea.meghsakha.com:22222/Benjamin_Boenisch/breakpilot-core
Build pitch-deck / build-push-deploy (push) Successful in 1m3s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 31s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 31s
2026-04-14 15:20:56 +02:00
Benjamin Admin
00d802f965
test(pitch-deck): banner text Draft → Draft V1 — deployment test
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-14 15:20:41 +02:00
Sharang Parnerkar
ebb7575f2c
test: retrigger with http:// webhook URL
Build pitch-deck / build-push-deploy (push) Successful in 15s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 33s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 30s
2026-04-14 09:32:36 +02:00
Sharang Parnerkar
8e92a93aa8
test: verify full CI pipeline with registry auth + orca webhook
Build pitch-deck / build-push-deploy (push) Failing after 14s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 34s
CI / test-python-voice (push) Successful in 34s
CI / test-bqas (push) Successful in 32s
2026-04-14 09:27:05 +02:00
Sharang Parnerkar
1af160eed0
test: trigger orca webhook via CI
Build pitch-deck / build-push-deploy (push) Failing after 10s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 33s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 32s
2026-04-14 09:22:10 +02:00
Benjamin Admin
d7ed5ce8c5
fix(pitch-deck): add 8 missing slides to renderSlide switch
...
Build pitch-deck / build-and-push (push) Failing after 1m4s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 33s
CI / test-python-voice (push) Successful in 35s
CI / test-bqas (push) Successful in 35s
CI / Deploy (push) Failing after 2s
ExecutiveSummary, RegulatoryLandscape, CapTable, Savings,
SDKDemo, Strategy, Finanzplan, Glossary
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 22:36:14 +02:00
Benjamin Admin
512088ab93
feat(pitch-deck): HTTPS via Nginx reverse proxy on port 3012
...
Build pitch-deck / build-and-push (push) Failing after 56s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 33s
CI / Deploy (push) Failing after 4s
- Add Nginx SSL server block for pitch-deck on port 3012
- Route through Nginx instead of direct container port
- Restore secure cookie flag (requires HTTPS)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 17:13:52 +02:00
Benjamin Admin
32b5e0223d
fix(pitch-deck): use explicit PITCH_SECURE_COOKIE flag for cookie security
...
HTTP access on local network was blocked by secure cookie flag when
NODE_ENV=production. Now requires explicit opt-in via env var.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 17:11:36 +02:00
Benjamin Admin
c02a7bd8a6
feat(pitch-deck): show version name + status in preview banner
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 12:21:59 +02:00
Sharang Parnerkar
27479ee553
docs(mcp-server): add README + gitignore .mcp.json
...
Build pitch-deck / build-and-push (push) Failing after 1m2s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 35s
CI / test-python-voice (push) Successful in 35s
CI / test-bqas (push) Successful in 34s
CI / Deploy (push) Failing after 3s
Setup instructions for the pitch version MCP server.
.mcp.json contains the admin secret and is gitignored.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 10:36:54 +02:00
Sharang Parnerkar
82a5d62f44
feat(pitch-deck): MCP server for pitch version management via Claude Code
...
Build pitch-deck / build-and-push (push) Failing after 1m8s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 36s
CI / test-python-voice (push) Successful in 42s
CI / test-bqas (push) Successful in 40s
CI / Deploy (push) Failing after 3s
Stdio MCP server that wraps the pitch-deck admin API, exposing 11 tools:
list_versions, create_version, get_version, get_table_data,
update_table_data, commit_version, fork_version, diff_versions,
list_investors, assign_version, invite_investor.
Authenticates via PITCH_ADMIN_SECRET bearer token against the deployed
pitch-deck API. All existing auth, validation, and audit logging is
reused — the MCP server is a thin adapter.
Usage: add to ~/.claude/settings.json mcpServers, set PITCH_API_URL
and PITCH_ADMIN_SECRET env vars. See mcp-server/README.md (to be added).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 10:32:45 +02:00
Sharang Parnerkar
ea752088f6
feat(pitch-admin): structured form editors, bilingual fields, version preview
...
Build pitch-deck / build-and-push (push) Failing after 59s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 32s
CI / Deploy (push) Failing after 4s
Replaces raw JSON textarea in version editor with proper form UIs:
- Company: single-record form with side-by-side DE/EN tagline + mission
- Team: expandable card list with bilingual role/bio, expertise tags
- Financials: year-by-year table with numeric inputs
- Market: TAM/SAM/SOM row table
- Competitors: card list with strengths/weaknesses tag arrays
- Features: card list with DE/EN names + checkbox matrix
- Milestones: card list with DE/EN title/description + status dropdown
- Metrics: card list with DE/EN labels
- Funding: form + nested use_of_funds table
- Products: card list with DE/EN capabilities + feature tag arrays
- FM Scenarios: card list with color picker
- FM Assumptions: row table
Shared editor primitives (components/pitch-admin/editors/):
BilingualField, FormField, ArrayField, RowTable, CardList
"Edit as JSON" toggle preserved as escape hatch on every tab.
Preview: admin clicks "Preview" on version editor → opens
/pitch-preview/[versionId] in new tab showing the full pitch deck
with that version's data. Admin-cookie gated (no investor auth).
Yellow "PREVIEW MODE" banner at top.
Also fixes the [object Object] inline table type cast in FM editor.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 10:34:42 +02:00
Sharang Parnerkar
edadf39445
fix(pitch-admin): render JSONB arrays as inline table editors
...
Build pitch-deck / build-and-push (push) Failing after 57s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 33s
CI / test-bqas (push) Successful in 30s
CI / Deploy (push) Failing after 3s
Arrays of objects (funding_schedule, founder_salary_schedule, etc.)
now render as editable tables with per-field inputs, add/remove row
buttons, instead of a raw JSON string in a single text input.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 10:09:26 +02:00
1c3cec2c06
feat(pitch-deck): full pitch versioning with git-style history ( #4 )
...
Build pitch-deck / build-and-push (push) Failing after 1m8s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 32s
CI / test-python-voice (push) Successful in 32s
CI / test-bqas (push) Successful in 32s
CI / Deploy (push) Failing after 4s
Full pitch versioning: 12 data tables versioned as JSONB snapshots,
git-style parent chain (draft→commit→fork), per-investor assignment,
side-by-side diff engine, version-aware /api/data + /api/financial-model.
Bug fixes: FM editor [object Object] for JSONB arrays, admin scroll.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 07:37:33 +00:00
Benjamin Admin
ee5241a7bc
merge: gitea/main — resolve pitch-deck conflicts (accept theirs)
...
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 45s
CI / test-python-voice (push) Successful in 37s
CI / test-bqas (push) Successful in 34s
CI / Deploy (push) Failing after 5s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-09 14:43:32 +02:00
c7ab569b2b
feat(pitch-deck): admin UI for investor + financial-model management ( #3 )
...
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 42s
CI / test-python-voice (push) Successful in 30s
CI / test-bqas (push) Successful in 30s
CI / Deploy (push) Successful in 2s
Adds /pitch-admin dashboard with real bcrypt admin accounts and full
audit attribution for every state-changing action.
- pitch_admins + pitch_admin_sessions tables (migration 002)
- pitch_audit_logs.admin_id + target_investor_id columns
- lib/admin-auth.ts: bcryptjs, single-session, jose JWT with audience claim
- middleware.ts: two-cookie gating with bearer-secret CLI fallback
- 14 new API routes (admin-auth, dashboard, investor detail/edit/resend,
admins CRUD, fm scenarios + assumptions PATCH)
- 9 admin pages: login, dashboard, investors list/new/[id], audit,
financial-model list/[id], admins
- Bootstrap CLI: npm run admin:create
- 36 vitest tests covering auth, admin-auth, rate-limit primitives
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-07 10:36:16 +00:00
645973141c
feat(pitch-deck): passwordless investor auth, audit logs, snapshots & PWA ( #2 )
...
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 27s
CI / test-python-voice (push) Successful in 25s
CI / test-bqas (push) Successful in 27s
CI / Deploy (push) Successful in 6s
Adds investor-facing access controls, persistence, and PWA support to the pitch deck:
- Passwordless magic-link auth (jose JWT + nodemailer SMTP)
- Per-investor audit logging (logins, slide views, assumption changes, chat)
- Financial model snapshot persistence (auto-save/restore per investor)
- PWA support (manifest, service worker, offline caching, branded icons)
- Safeguards: email watermark overlay, security headers, content protection,
rate limiting, IP/new-IP detection, single active session per investor
- Admin API: invite, list investors, revoke, query audit logs
- pitch-deck service added to docker-compose.coolify.yml
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-07 08:48:38 +00:00
Benjamin Admin
68692ade4e
fix: DB Pool 5→20 + KPI/Charts Skip DB-Load
...
Pool-Size von 5 auf 20 erhöht (Connection-Exhaustion bei
parallelen Finanzplan-Queries + Compute + API-Calls)
KPIs/Charts Tabs laden keine DB-Daten (virtual tabs,
Daten sind hardcoded) → sofortiges Rendering
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 23:56:40 +01:00
Benjamin Admin
49908d72d0
feat: Churn Rate in Kundenzahlen integriert
...
Churn Rates pro Segment (monatlich):
Startup: 3%, KMU klein: 2%, KMU mittel: 1.5%, Enterprise: 0.5%
Neukunden-Zahlen erhöht um Churn auszugleichen:
Dez 2026: 17 (statt 14), Dez 2027: 132 (statt 117)
Dez 2030: 1.322 (statt 1.200)
ARR steigt auf ~11,1M (höhere Neukunden kompensieren Abgang)
Onepager Unternehmensentwicklung synchronisiert.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 23:33:22 +01:00
Benjamin Admin
1b5c2a156c
feat: KPIs + Grafiken Reiter im Finanzplan + ROI korrigiert
...
KPIs Tab: 15 Kennzahlen pro Jahr (2026-2030)
MRR, ARR, Kunden, ARPU, Mitarbeiter, Umsatz/MA, Personalkosten,
EBIT, EBIT-Marge, Steuern, Jahresüberschuss, Serverkosten/Kunde,
Bruttomarge, Burn Rate, Runway
Grafiken Tab:
- MRR & Kundenentwicklung (Balkendiagramm, 5 Jahre)
- EBIT (Rot/Grün je nach Verlust/Gewinn)
- Personalaufbau (Balkendiagramm 5→35)
ROI korrigiert (Ersparnis ÷ Preis):
KMU: 3,5x, Mittelstand: 7,5x, Konzern: 20,8x
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 23:17:31 +01:00
Benjamin Admin
159d07efd5
feat: Glossar-Folie mit 27 Abkürzungen in 4 Kategorien
...
Letzte Folie "Glossar & Abkürzungen":
- Code Security & DevSecOps: SAST, DAST, SBOM, DevSecOps, SCA, CI/CD, AppSec
- Compliance & Datenschutz: DSGVO, VVT, TOMs, DSFA, DSR, DSB, ISMS
- EU-Regulierungen: AI Act, CRA, NIS2, MVO, TISAX
- Geschäftskennzahlen: ARR, MRR, CAC, LTV, ARPU, SaaS, ESOP, ROI
Jede Abkürzung mit ausgeschriebenem Namen + Kurzbeschreibung (DE+EN)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 23:03:27 +01:00
Benjamin Admin
06431be40d
feat: Kundenersparnis-Folie + Savings FAQ
...
Neue Folie "Kundenersparnis" mit 3 Unternehmenstypen:
KMU (25 MA): 97.750→44.530 = 53.220 EUR Ersparnis (ROI 9,1x)
Mittelstand (100 MA): 419.500→193.880 = 225.620 EUR (ROI 12,6x)
Konzern (500+ MA): 2.113.500→1.074.080 = 1.039.420 EUR (ROI 17,4x)
Detaillierte Aufschlüsselung pro Kostenposition:
Pentests pro Anwendung, CE-SW-Risiko pro Produkt,
Compliance-Team, Entwickler-Produktivität (IDC: 19% Zeitverlust),
TISAX/ISO, CRA/NIS2, Incident Response
2 neue FAQs: savings-detail (Priority 10) + savings-pentest
System-Prompt angepasst mit konkreten Zahlen
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 22:54:07 +01:00
Benjamin Admin
9f3e5bbf9f
fix: Summenzeile für Umsatz + Kunden, Kunden = Dezember-Wert
...
- Summenzeile auch für Umsatzerlöse und Kunden
- Kunden-Sheets: Jahresspalte zeigt Dezember-Wert (Bestand, nicht Summe)
- Bereits existierende Summenzeilen werden nicht doppelt gezählt
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 21:33:22 +01:00
Benjamin Admin
a66b76001b
fix: Sortierung Personalkosten + Umlaute DB + Summenzeilen
...
- Gründer immer sort_order 1+2, dann nach start_date
- Beide Gründer exakt gleiches Gehalt (7.000 EUR/Mo ab Jan 2027)
- Alle Pos-Namen durchnummeriert (Pos 3 bis Pos 35)
Umlaute in DB-Labels (Liquidität, GuV, Betriebliche):
Umsatzerloese→Umsatzerlöse, UEBERSCHUSS→ÜBERSCHUSS,
Koerperschaftsteuer→Körperschaftsteuer, etc.
Engine-Labels synchron aktualisiert.
Summenzeile (SUMME) als tfoot für:
Personalkosten, Materialaufwand, Betriebliche Aufwendungen,
Investitionen, Sonstige Erträge
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 21:22:45 +01:00
Benjamin Admin
3188054462
feat: Cap Table Folie + INVEST 20% + ESOP + Gründergehälter
...
Neue Folie "Investition & Cap Table" nach The Ask:
- Pie Chart: Gründer 75%, Investor 19,6%, ESOP 5,4%
- Pre-Seed Details: 4M Pre-Money, 975k Investment, 4,975M Post-Money
- Gründergehälter: 0 (2026) → 7k (2027) → 8k (2028) → 9,1k (2029+)
- Gewinnverwendung: 100% Reinvestition, kein Dividende bis Series A
- INVEST-Programm (BAFA): 20% Zuschuss = 195.000 EUR zurück
- ESOP: 5,4% für Schlüsselmitarbeiter, 4J Vesting, 1J Cliff
- Series A Ausblick: 15-25M Bewertung bei 3M+ ARR
Finanzplan: Gründer 7.000 EUR/Mo ab Jan 2027, 14% jährl. Erhöhung
FAQs: Cap Table + Gewinnverwendung als Fließtext
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 18:20:02 +01:00
Benjamin Admin
5fd65e8a38
feat: Steuerberechnung in GuV — KSt + GewSt + Verlustvortrag
...
Stockach 78333, Hebesatz 350%:
- Gewerbesteuer: 3,5% × 3,5 = 12,25%
- Körperschaftsteuer: 15% + 5,5% Soli = 15,825%
- Gesamt: ~28,08% auf den Gewinn
Verlustvortrag:
- Verluste werden kumuliert und mit künftigen Gewinnen verrechnet
- Bis 1 Mio EUR: 100% verrechenbar
- Über 1 Mio EUR: nur 60% (Mindestbesteuerung)
GuV-Zeilen: Gewerbesteuer, Körperschaftsteuer, Steuern gesamt,
Ergebnis nach Steuern, Jahresüberschuss
Liquidität: Steuern als monatliche Auszahlungen (1/12 des Jahres)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 17:07:09 +01:00
Benjamin Admin
34d2529e04
feat: Investor Agent — FAQ als LLM-Kontext statt Direkt-Streaming
...
Architektur-Umbau: FAQ-Antworten werden NICHT mehr direkt gestreamt.
Stattdessen werden die Top-3 relevanten FAQ-Einträge als Kontext
ans LLM übergeben. Das LLM interpretiert die Frage, kombiniert
mehrere FAQs bei komplexen Fragen und antwortet natürlich.
Vorher: Frage → Keyword-Match → FAQ direkt streamen (LLM umgangen)
Nachher: Frage → Top-3 FAQ-Matches → LLM-Prompt als Kontext → LLM antwortet
Neue Funktionen:
- matchFAQMultiple(): Top-N Matches statt nur bester
- buildFAQContext(): Baut Kontext-String für LLM-Injection
- faqContext statt faqAnswer im Request-Body
- System-Prompt Anweisung: "Kombiniere bei Bedarf, natürlicher Fließtext"
Behebt: Komplexe Fragen mit 2+ Themen werden jetzt korrekt beantwortet
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-28 10:57:47 +01:00