From adc214d5f6c60df28607a5bab3975059af583ae8 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sat, 30 May 2026 12:06:26 +0200 Subject: [PATCH 01/14] totally ai generated presentation out of noesis --- .../protopipe-enterprise-pitch/.gitignore | 6 + .../protopipe-enterprise-pitch/README.md | 35 +++++ .../protopipe-enterprise-pitch/_quarto.yml | 49 +++++++ .../assets/fonts/README.md | 6 + .../assets/images/README.md | 13 ++ .../assets/images/hero-placeholder.svg | 33 +++++ .../assets/logos/README.md | 8 ++ .../diagrams/source/integrated-loop.mmd | 10 ++ .../diagrams/source/system-map.mmd | 13 ++ .../docs/deck-outline.md | 81 +++++++++++ .../docs/design-system.md | 29 ++++ .../docs/diagram-strategy.md | 24 ++++ .../docs/future-extension.md | 24 ++++ .../docs/github-pages.md | 61 ++++++++ .../docs/presentation-architecture.md | 31 ++++ .../docs/quarto-reveal-configuration.md | 37 +++++ .../docs/repository-tree.md | 41 ++++++ .../docs/scss-architecture.md | 33 +++++ .../presentation/chapters/00-title.qmd | 26 ++++ .../presentation/chapters/01-act-problem.qmd | 55 +++++++ .../chapters/02-act-missing-layer.qmd | 45 ++++++ .../chapters/03-act-protopipe.qmd | 57 ++++++++ .../chapters/04-act-integrated-loop.qmd | 43 ++++++ .../chapters/05-act-consulting-entry.qmd | 45 ++++++ .../presentation/chapters/06-act-vision.qmd | 37 +++++ .../presentation/chapters/90-appendix.qmd | 24 ++++ .../presentation/index.qmd | 29 ++++ .../scripts/preview.sh | 6 + .../scripts/render.sh | 6 + .../theme/protopipe.scss | 134 ++++++++++++++++++ 30 files changed, 1041 insertions(+) create mode 100644 dist/presentations/protopipe-enterprise-pitch/.gitignore create mode 100644 dist/presentations/protopipe-enterprise-pitch/README.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/_quarto.yml create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/fonts/README.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/images/README.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/images/hero-placeholder.svg create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/diagrams/source/integrated-loop.mmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/diagrams/source/system-map.mmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/design-system.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/future-extension.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/github-pages.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/docs/scss-architecture.md create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd create mode 100755 dist/presentations/protopipe-enterprise-pitch/scripts/preview.sh create mode 100755 dist/presentations/protopipe-enterprise-pitch/scripts/render.sh create mode 100644 dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss diff --git a/dist/presentations/protopipe-enterprise-pitch/.gitignore b/dist/presentations/protopipe-enterprise-pitch/.gitignore new file mode 100644 index 0000000..807767b --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/.gitignore @@ -0,0 +1,6 @@ +/.quarto/ +/_site/ +/.jupyter_cache/ + + +**/*.quarto_ipynb diff --git a/dist/presentations/protopipe-enterprise-pitch/README.md b/dist/presentations/protopipe-enterprise-pitch/README.md new file mode 100644 index 0000000..20dface --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/README.md @@ -0,0 +1,35 @@ +# Protopipe Enterprise Pitch Deck + +**Shared Reality for Product, Architecture and Delivery** + +This directory is a non-canonical presentation project derived from Noesis. +It is intended for Quarto, Reveal.js, VS Code, GitHub, and GitHub Pages. + +The deck is structured like a software project: + +- `presentation/` contains the Quarto entry point and chapter files. +- `theme/` contains the Reveal.js theme and reusable SCSS modules. +- `assets/` contains images, logos, and font notes. +- `diagrams/` contains source diagrams and generated exports. +- `scripts/` contains local rendering helpers. +- `docs/` contains authoring, deployment, and extension guidance. + +Noesis remains the canonical reasoning space. This deck may interpret, +sequence, and package Protopipe for an audience, but it must not introduce +canonical facts without moving them back into `doc/`. + +## Quick Start + +```bash +cd dist/presentations/protopipe-enterprise-pitch +quarto preview presentation/index.qmd +``` + +Render static output: + +```bash +quarto render +``` + +The rendered site is written to `_site/`. + diff --git a/dist/presentations/protopipe-enterprise-pitch/_quarto.yml b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml new file mode 100644 index 0000000..5c6a396 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml @@ -0,0 +1,49 @@ +project: + type: website + output-dir: _site + render: + - presentation/index.qmd + +website: + title: "Protopipe" + site-url: "https://example.com/protopipe" + repo-url: "https://github.com/protopipe/noesis" + repo-actions: [source, issue] + +format: + revealjs: + theme: + - default + - theme/protopipe.scss + slide-number: c/t + chalkboard: false + controls: true + controls-layout: edges + controls-tutorial: false + hash: true + history: true + progress: true + overview: true + center: false + transition: fade + background-transition: fade + width: 1600 + height: 900 + margin: 0.06 + min-scale: 0.2 + max-scale: 2.0 + navigation-mode: linear + incremental: false + code-copy: true + code-overflow: wrap + footer: "Protopipe | Shared Reality for Product, Architecture and Delivery" + title-slide-attributes: + data-background-color: "#081a17" + data-state: "title-slide" + +execute: + freeze: auto + +resources: + - assets/ + - diagrams/generated/ diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/fonts/README.md b/dist/presentations/protopipe-enterprise-pitch/assets/fonts/README.md new file mode 100644 index 0000000..f812373 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/fonts/README.md @@ -0,0 +1,6 @@ +# Fonts + +This deck defaults to portable system fonts. If a licensed brand font is needed +for a customer-facing export, place the distributable font files here and wire +them into `theme/protopipe.scss`. + diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/images/README.md b/dist/presentations/protopipe-enterprise-pitch/assets/images/README.md new file mode 100644 index 0000000..4cf0f36 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/images/README.md @@ -0,0 +1,13 @@ +# Images + +Use this directory for deck-specific visual assets. + +Preferred asset types: + +- Product screenshots +- Technical system visuals +- Generated abstract infrastructure backgrounds +- Diagram exports that are not canonical source diagrams + +Avoid generic stock photos and agile workshop imagery. + diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/images/hero-placeholder.svg b/dist/presentations/protopipe-enterprise-pitch/assets/images/hero-placeholder.svg new file mode 100644 index 0000000..6734c0e --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/images/hero-placeholder.svg @@ -0,0 +1,33 @@ + + Protopipe presentation placeholder background + Dark technical grid with connected decision lanes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md b/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md new file mode 100644 index 0000000..eb7803d --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md @@ -0,0 +1,8 @@ +# Logos + +Use exported Protopipe logo assets from `doc/09_identity/assets/logo/out/` when +the deck needs brand marks. + +Do not duplicate canonical source logo files here unless publication packaging +requires it. + diff --git a/dist/presentations/protopipe-enterprise-pitch/diagrams/source/integrated-loop.mmd b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/integrated-loop.mmd new file mode 100644 index 0000000..e7dacc0 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/integrated-loop.mmd @@ -0,0 +1,10 @@ +flowchart LR + Problem --> Discussion + Discussion --> Hypothesis + Hypothesis --> Prototype + Prototype --> Experiment + Experiment --> Metric + Metric --> Decision + Decision --> Knowledge + Knowledge --> Problem + diff --git a/dist/presentations/protopipe-enterprise-pitch/diagrams/source/system-map.mmd b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/system-map.mmd new file mode 100644 index 0000000..8c12206 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/system-map.mmd @@ -0,0 +1,13 @@ +flowchart TB + Noesis[Noesis
Canonical reasoning space] + Portfolio[ProtoPortfolio
Hypotheses, KPI tree, strategy] + Composer[Composer
Architecture experiments] + Storybook[Storybook
UX communication and prototypes] + Memory[Shared organizational memory] + + Noesis <--> Memory + Memory <--> Portfolio + Portfolio <--> Composer + Composer <--> Storybook + Storybook <--> Portfolio + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md new file mode 100644 index 0000000..a478210 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -0,0 +1,81 @@ +# Presentation Chapter Structure and Slide TOC + +Working title: **Protopipe** + +Subtitle: **Shared Reality for Product, Architecture and Delivery** + +## Act 0: Opening + +| # | Slide | Purpose | +|---:|---|---| +| 0 | Protopipe | Establish the deck frame and category. | +| 1 | Deck Architecture | Show the six-act narrative map. | + +## Act 1: The Problem + +| # | Slide | Purpose | +|---:|---|---| +| 2 | Modern Organizations Do Not Share One Reality | Name the communication crisis. | +| 3 | Local Optimization Creates Organizational Drift | Show role-specific realities. | +| 4 | Luhmann: Organizations Are Communication Systems | Ground the crisis in systems theory. | +| 5 | Habermas: Decisions Need Shared Understanding | Ground decision legitimacy in shared understanding. | +| 6 | The Missing Conditions | Name shared language, evidence, and memory. | +| 7 | Problem Taxonomy | Connect the crisis to Noesis problem areas. | + +## Act 2: The Missing Layer + +| # | Slide | Purpose | +|---:|---|---| +| 8 | Not Another Planning Tool | Differentiate from existing tool categories. | +| 9 | Shared Reality Infrastructure | Introduce the missing category. | +| 10 | The Chain That Must Stay Connected | Show the end-to-end decision chain. | +| 11 | Why AI Changes the Feasibility Curve | Position AI as synchronization and translation. | +| 12 | Why DevOps Was Not Enough | Explain the remaining strategy-to-learning gap. | + +## Act 3: Protopipe + +| # | Slide | Purpose | +|---:|---|---| +| 13 | Protopipe System Map | Show component relationships. | +| 14 | Noesis: Canonical Reasoning Space | Introduce shared memory and traceability. | +| 15 | ProtoPortfolio: Augmented Strategy | Connect KPI trees, hypotheses, and strategy. | +| 16 | Composer: Architecture as an Experiment System | Show reversible architecture work. | +| 17 | Storybook: UX Communication Layer | Show prototype, marketing, and contract surfaces. | +| 18 | Component Responsibilities | Clarify each component's job. | + +## Act 4: The Integrated Loop + +| # | Slide | Purpose | +|---:|---|---| +| 19 | From Problem to Knowledge | Present the operating loop. | +| 20 | Experiments Beat Large Upfront Decisions | Explain risk-first exploration. | +| 21 | Architecture Becomes Observable | Connect architecture to measurable change. | +| 22 | Metrics Become Causal, Not Decorative | Tie metrics to hypotheses. | +| 23 | Decisions Become Traceable | Preserve evidence and trade-offs. | + +## Act 5: Consulting Entry Strategy + +| # | Slide | Purpose | +|---:|---|---| +| 24 | Bottom-Up Entry | Start with Noesis, local LLM, culture database, memory. | +| 25 | Why Local AI Matters | Address sovereignty, trust, and context. | +| 26 | Why OSS Matters | Address auditability and adoption. | +| 27 | Expansion Path | Show movement from memory to KPI systems. | +| 28 | Consulting Motion | Define transformation entry strategy. | + +## Act 6: Vision + +| # | Slide | Purpose | +|---:|---|---| +| 29 | Shared Organizational Reality | State the end-state category. | +| 30 | Faster Experimentation | Show learning speed as strategic capability. | +| 31 | Fewer Political Decisions | Replace ungrounded opinion with evidence. | +| 32 | Evidence-Driven Enterprise Change | Close the enterprise promise. | + +## Appendix + +| # | Slide | Purpose | +|---:|---|---| +| 33 | Source Anchors | Show Noesis source areas used by the deck. | +| 34 | Future Detail Slides | Reserve structured depth for later authoring. | + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md b/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md new file mode 100644 index 0000000..3d81d45 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md @@ -0,0 +1,29 @@ +# Design System + +The visual direction is dark, enterprise, technical, strategic, and OSS-native. +It should feel closer to Linear, Stripe, Vercel, Red Hat, and Thoughtworks Radar +than to a startup hype deck or stock-photo consulting brochure. + +## Palette + +- Background: `#081a17` +- Deep background: `#0b0c0e` +- Primary accent: `#f7436e` +- Secondary accent: `#41d6c3` +- Warning / experiment accent: `#f6c56f` +- Text: `#ffffff` +- Muted text: `rgba(255, 255, 255, 0.72)` + +## Layout Principles + +- Slides should be dense enough for enterprise audiences, but not cramped. +- Use tables for responsibility maps and transformation paths. +- Use flow diagrams for loops and system interactions. +- Avoid rounded decorative card stacks unless showing repeated items. +- Avoid stock-photo metaphors and agile workshop imagery. + +## Typography + +Use system fallbacks by default for portability. If brand fonts are licensed for +distribution, place them in `assets/fonts/` and wire them into `theme/`. + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md new file mode 100644 index 0000000..d07812b --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md @@ -0,0 +1,24 @@ +# Diagram Strategy + +Diagrams are first-class presentation assets. + +## Source Formats + +- Use Mermaid for early diagrams and versioned collaboration. +- Use PlantUML only when alignment with existing Noesis identity assets matters. +- Export final diagrams into `diagrams/generated/` as SVG. + +## Required Diagram Set + +- Organizational reality drift map +- Habermas and Luhmann bridge +- Shared reality infrastructure chain +- Protopipe component system map +- Integrated loop from problem to knowledge +- Consulting entry and expansion path + +## Rendering Guidance + +Keep diagram source editable and compact. Generated exports should be treated as +build artifacts unless hand-tuned for presentation quality. + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/future-extension.md b/dist/presentations/protopipe-enterprise-pitch/docs/future-extension.md new file mode 100644 index 0000000..269fc4b --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/future-extension.md @@ -0,0 +1,24 @@ +# Future Extension Strategy + +## Content Growth + +- Add case-study variants as separate chapter files. +- Add audience-specific tracks for executives, architects, product leaders, and + consulting partners. +- Keep core acts stable and move optional depth into the appendix. + +## Technical Growth + +- Add `diagrams/render.sh` or a Makefile once diagram generation becomes + repeatable. +- Add Playwright screenshot checks if the deck becomes customer-facing. +- Add PDF export only after the reveal version stabilizes. + +## Narrative Growth + +- Build a theory appendix for Habermas, Luhmann, AI, DevOps, and product + management. +- Build a transformation appendix for consulting packaging and adoption paths. +- Build component deep dives for Noesis, ProtoPortfolio, Composer, and + Storybook. + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/github-pages.md b/dist/presentations/protopipe-enterprise-pitch/docs/github-pages.md new file mode 100644 index 0000000..ddb0732 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/github-pages.md @@ -0,0 +1,61 @@ +# GitHub Pages Deployment Strategy + +Recommended deployment target: GitHub Pages with Quarto rendering in CI. + +## Local Render + +```bash +cd dist/presentations/protopipe-enterprise-pitch +quarto render +``` + +## Suggested Workflow + +Create `.github/workflows/protopipe-presentation.yml` at the repository root if +this deck becomes a published artifact. + +```yaml +name: Protopipe Presentation + +on: + push: + branches: [main] + paths: + - "dist/presentations/protopipe-enterprise-pitch/**" + - ".github/workflows/protopipe-presentation.yml" + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: quarto-dev/quarto-actions/setup@v2 + - name: Render presentation + working-directory: dist/presentations/protopipe-enterprise-pitch + run: quarto render + - uses: actions/upload-pages-artifact@v3 + with: + path: dist/presentations/protopipe-enterprise-pitch/_site + + deploy: + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - id: deployment + uses: actions/deploy-pages@v4 +``` + +## Publication Model + +Keep the deck in `dist/` because it is derived and audience-specific. Promote +only reusable language, constraints, or identity decisions back into `doc/`. + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md b/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md new file mode 100644 index 0000000..05cd261 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md @@ -0,0 +1,31 @@ +# Presentation Architecture + +This deck is intentionally modular. The main file `presentation/index.qmd` +acts as the assembly root and includes one file per narrative act. + +## Authoring Rules + +- Keep slide titles in English. +- Treat `doc/` as canonical source material and this deck as derived. +- Add new narrative claims first as slide notes or placeholders, then verify + whether they belong in Noesis. +- Prefer one concept per slide. +- Prefer diagrams over decorative images. +- Use screenshots only when they show a concrete product, prototype, or system + state. + +## Slide Types + +- `section`: act divider. +- `toc-only`: table-of-contents placeholder for future slide content. +- `slide-intent`: explicit authoring intent for a future content slide. +- `diagram-slot`: reserved slide for generated or designed diagrams. +- `flow`: linear system or decision loop. + +## Canonical Anchors + +- Language: `doc/02_language/glossary.md` +- Culture: `doc/03_culture/principles.md`, `doc/03_culture/culture-code.md` +- Problems: `doc/05_problems/` +- Identity: `doc/09_identity/` + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md b/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md new file mode 100644 index 0000000..ab87e42 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md @@ -0,0 +1,37 @@ +# Quarto and Reveal.js Configuration + +The deck is configured in `_quarto.yml`. + +## Quarto + +- Project type: `website` +- Render target: `presentation/index.qmd` +- Output directory: `_site` +- Execution freeze: `auto` +- Static resources: `assets/` and `diagrams/generated/` + +## Reveal.js + +- Theme: Quarto `default` plus `theme/protopipe.scss` +- Aspect ratio: `1600x900` +- Transition: `fade` +- Navigation: linear +- Slide numbers: current slide / total slides +- Controls, progress, hash navigation, history, and overview enabled +- Centering disabled to support enterprise-style composed layouts +- Code copy enabled for technical appendix slides + +## Rendering + +Use: + +```bash +./scripts/render.sh +``` + +Use preview mode while authoring: + +```bash +./scripts/preview.sh +``` + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md new file mode 100644 index 0000000..f73183a --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md @@ -0,0 +1,41 @@ +# Repository Tree + +```text +protopipe-enterprise-pitch/ +├── _quarto.yml +├── README.md +├── presentation/ +│ ├── index.qmd +│ └── chapters/ +│ ├── 00-title.qmd +│ ├── 01-act-problem.qmd +│ ├── 02-act-missing-layer.qmd +│ ├── 03-act-protopipe.qmd +│ ├── 04-act-integrated-loop.qmd +│ ├── 05-act-consulting-entry.qmd +│ ├── 06-act-vision.qmd +│ └── 90-appendix.qmd +├── theme/ +│ └── protopipe.scss +├── assets/ +│ ├── fonts/ +│ ├── images/ +│ └── logos/ +├── diagrams/ +│ ├── generated/ +│ └── source/ +├── scripts/ +│ ├── preview.sh +│ └── render.sh +└── docs/ + ├── deck-outline.md + ├── design-system.md + ├── diagram-strategy.md + ├── future-extension.md + ├── github-pages.md + ├── presentation-architecture.md + ├── quarto-reveal-configuration.md + ├── repository-tree.md + └── scss-architecture.md +``` + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/scss-architecture.md b/dist/presentations/protopipe-enterprise-pitch/docs/scss-architecture.md new file mode 100644 index 0000000..4863f1c --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/docs/scss-architecture.md @@ -0,0 +1,33 @@ +# SCSS Architecture + +The theme currently lives in one Quarto-compatible SCSS file: + +- `theme/protopipe.scss` + +Quarto Reveal themes require special comment sections: + +- `scss:defaults` for Reveal variables before theme compilation. +- `scss:rules` for concrete CSS rules after theme compilation. + +## Current Sections + +- Reveal defaults: colors, font families, sizing, heading behavior. +- CSS custom properties: Protopipe palette and semantic tokens. +- Base slide rules: background, typography, tables, footer, slide number. +- Reusable slide components: `slide-intent`, `toc-only`, `diagram-slot`, `flow`. +- Title slide rules: first-slide specific treatment. + +## Extension Path + +Keep the single-file theme until the visual system becomes large enough to +justify partials. When splitting becomes useful, keep `protopipe.scss` as the +Quarto entry point and introduce: + +- `_tokens.scss` +- `_base.scss` +- `_components.scss` +- `_print.scss` + +Only split when it improves maintainability; Quarto theme compilation is easier +to debug with a compact entry file. + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd new file mode 100644 index 0000000..7d858f8 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd @@ -0,0 +1,26 @@ +# Protopipe {.title} + +## Shared Reality for Product, Architecture and Delivery {.subtitle} + +::: {.speaker-note} +Purpose: establish the deck as an enterprise-grade strategic narrative, not a +tool demo or agile consulting pitch. +::: + +--- + +## Deck Architecture + +| Act | Narrative Job | Canonical Anchor | +|---|---|---| +| 1 | Name the organizational communication crisis | Problems, culture, language | +| 2 | Define the missing infrastructure layer | Shared language, visibility, feedback | +| 3 | Introduce Protopipe components | Noesis, ProtoPortfolio, Composer, Storybook | +| 4 | Show the integrated decision loop | Problem to knowledge | +| 5 | Explain consulting entry strategy | Local AI, culture database, memory | +| 6 | State the vision | Shared organizational reality | + +::: {.speaker-note} +This is a table of contents slide, not a final content slide. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd new file mode 100644 index 0000000..2970cd4 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd @@ -0,0 +1,55 @@ +# Act 1: The Problem {.section} + +--- + +## 01. Modern Organizations Do Not Share One Reality + +::: {.slide-intent} +Frame the core crisis: teams act rationally inside incompatible local realities. +::: + +--- + +## 02. Local Optimization Creates Organizational Drift + +::: {.toc-only} +CFO, CTO, Product, Sales, Operations, and Developers optimize different evidence, +cadences, incentives, and risk models. +::: + +--- + +## 03. Luhmann: Organizations Are Communication Systems + +::: {.toc-only} +Use Luhmann to explain why communication, not intent, becomes the operating +material of the organization. +::: + +--- + +## 04. Habermas: Decisions Need Shared Understanding + +::: {.toc-only} +Use Habermas to connect deliberation, evidence, legitimacy, and mutual +understanding. +::: + +--- + +## 05. The Missing Conditions + +::: {.toc-only} +Organizations lack shared language, shared evidence, and shared memory. +::: + +--- + +## 06. Problem Taxonomy + +::: {.toc-only} +Map Noesis problem categories to the enterprise crisis: decision-making, +organization and process, culture and mental models, architecture and systems, +learning and product, metrics and steering. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd new file mode 100644 index 0000000..7fdac72 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd @@ -0,0 +1,45 @@ +# Act 2: The Missing Layer {.section} + +--- + +## 07. Not Another Planning Tool + +::: {.toc-only} +Separate Protopipe from backlog, documentation, reporting, and governance tools. +::: + +--- + +## 08. Shared Reality Infrastructure + +::: {.toc-only} +Introduce the category: infrastructure for organizational meaning, evidence, +memory, and decision traceability. +::: + +--- + +## 09. The Chain That Must Stay Connected + +::: {.flow} +Problem -> Hypothesis -> Experiment -> Architecture -> Implementation -> Metrics -> Decision +::: + +--- + +## 10. Why AI Changes the Feasibility Curve + +::: {.toc-only} +Position AI as synchronization, retrieval, critique, and translation capacity, +not as generic automation. +::: + +--- + +## 11. Why DevOps Was Not Enough + +::: {.toc-only} +Show that deployment feedback improved delivery, but did not fully connect +strategy, product, architecture, and organizational memory. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd new file mode 100644 index 0000000..63b0ead --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd @@ -0,0 +1,57 @@ +# Act 3: Protopipe {.section} + +--- + +## 12. Protopipe System Map + +::: {.diagram-slot} +Diagram target: component topology of Noesis, ProtoPortfolio, Composer, and +Storybook around the shared reality loop. +::: + +--- + +## 13. Noesis: Canonical Reasoning Space + +::: {.toc-only} +AI-enforced synchronization, single source of truth, shared organizational +memory, and decision traceability. +::: + +--- + +## 14. ProtoPortfolio: Augmented Strategy + +::: {.toc-only} +KPI Tree, hypothesis-driven strategy, and the business-product-architecture +translation layer. +::: + +--- + +## 15. Composer: Architecture as an Experiment System + +::: {.toc-only} +RFAs, strangler transformations, search-and-replace migrations, and reversible +architectural learning. +::: + +--- + +## 16. Storybook: UX Communication Layer + +::: {.toc-only} +Marketing, prototype generation, contracts, and future WYSIWYG assembly. +::: + +--- + +## 17. Component Responsibilities + +| Component | Primary Job | Failure It Prevents | +|---|---|---| +| Noesis | Keep shared meaning stable | Semantic drift | +| ProtoPortfolio | Connect strategy to measurable hypotheses | Activity steering | +| Composer | Make architecture experimentally changeable | Big upfront commitments | +| Storybook | Make experience inspectable and negotiable | Invisible UX assumptions | + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd new file mode 100644 index 0000000..4f5740b --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd @@ -0,0 +1,43 @@ +# Act 4: The Integrated Loop {.section} + +--- + +## 18. From Problem to Knowledge + +::: {.flow} +Problem -> Discussion -> Hypothesis -> Prototype -> Experiment -> Metric -> Decision -> Knowledge +::: + +--- + +## 19. Experiments Beat Large Upfront Decisions + +::: {.toc-only} +Connect risk-first exploration, reversibility, and feedback over opinion. +::: + +--- + +## 20. Architecture Becomes Observable + +::: {.toc-only} +Show architecture as dependency management, invariant placement, and blast +radius reduction. +::: + +--- + +## 21. Metrics Become Causal, Not Decorative + +::: {.toc-only} +Tie KPI trees to hypotheses and experiments so metrics can explain decisions. +::: + +--- + +## 22. Decisions Become Traceable + +::: {.toc-only} +Show how evidence, trade-offs, and canonical references survive beyond meetings. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd new file mode 100644 index 0000000..7deeec3 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd @@ -0,0 +1,45 @@ +# Act 5: Consulting Entry Strategy {.section} + +--- + +## 23. Bottom-Up Entry + +::: {.toc-only} +Start with Noesis, a local LLM, a team culture database, and organizational +memory. +::: + +--- + +## 24. Why Local AI Matters + +::: {.toc-only} +Explain confidentiality, sovereignty, trust, latency, and client-specific +context grounding. +::: + +--- + +## 25. Why OSS Matters + +::: {.toc-only} +Explain auditability, adoption, extension, client trust, and ecosystem leverage. +::: + +--- + +## 26. Expansion Path + +::: {.flow} +Team Memory -> Delivery -> Architecture -> Strategy -> KPI Systems +::: + +--- + +## 27. Consulting Motion + +::: {.toc-only} +Protopipe as a transformation entry point: low-risk start, visible value, +expanding strategic surface. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd new file mode 100644 index 0000000..db27acb --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -0,0 +1,37 @@ +# Act 6: Vision {.section} + +--- + +## 28. Shared Organizational Reality + +::: {.toc-only} +Protopipe reduces political decisions by making assumptions, evidence, and +memory visible. +::: + +--- + +## 29. Faster Experimentation + +::: {.toc-only} +Organizations become faster because learning loops become explicit and +architecturally supported. +::: + +--- + +## 30. Fewer Political Decisions + +::: {.toc-only} +Debate remains valuable, but ungrounded opinion loses veto power. +::: + +--- + +## 31. Evidence-Driven Enterprise Change + +::: {.toc-only} +End with the strategic promise: better decisions, faster, with less waste and +more responsibility. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd new file mode 100644 index 0000000..3c6eb13 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd @@ -0,0 +1,24 @@ +# Appendix {.section} + +--- + +## Source Anchors + +| Noesis Area | Use in Deck | +|---|---| +| `01_why` | Purpose, feedback loops, strategic frame | +| `02_language` | Canonical terms and ambiguity control | +| `03_culture` | Decision lenses and working culture | +| `05_problems` | Problem taxonomy and narrative evidence | +| `07_mechanics` | Trade-off logic and consequence framing | +| `09_identity` | Brand tone, colors, and visual anchors | + +--- + +## Future Detail Slides + +::: {.toc-only} +Reserve appendix space for deeper theory references, component examples, +consulting packages, case studies, and technical implementation notes. +::: + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd new file mode 100644 index 0000000..776b6be --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -0,0 +1,29 @@ +--- +title: "Protopipe" +subtitle: "Shared Reality for Product, Architecture and Delivery" +author: "Protopipe" +date: last-modified +format: + revealjs: + title-slide-attributes: + data-background-image: "../assets/images/hero-placeholder.svg" + data-background-size: cover + data-background-position: center +--- + +{{< include chapters/00-title.qmd >}} + +{{< include chapters/01-act-problem.qmd >}} + +{{< include chapters/02-act-missing-layer.qmd >}} + +{{< include chapters/03-act-protopipe.qmd >}} + +{{< include chapters/04-act-integrated-loop.qmd >}} + +{{< include chapters/05-act-consulting-entry.qmd >}} + +{{< include chapters/06-act-vision.qmd >}} + +{{< include chapters/90-appendix.qmd >}} + diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/preview.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/preview.sh new file mode 100755 index 0000000..a2b674d --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/preview.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +set -euo pipefail + +cd "$(dirname "$0")/.." +quarto preview presentation/index.qmd + diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh new file mode 100755 index 0000000..dc4e73a --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +set -euo pipefail + +cd "$(dirname "$0")/.." +quarto render + diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss new file mode 100644 index 0000000..5415bc5 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -0,0 +1,134 @@ +/*-- scss:defaults --*/ + +$backgroundColor: #081a17; +$mainColor: #f7f7f7; +$headingColor: #ffffff; +$linkColor: #f7436e; +$selectionBackgroundColor: #f7436e; + +$mainFont: "Helvetica Neue", "Inter", "Segoe UI", system-ui, sans-serif; +$headingFont: "Helvetica Neue", "Inter", "Segoe UI", system-ui, sans-serif; +$codeFont: "JetBrains Mono", "SFMono-Regular", Consolas, monospace; + +$headingTextTransform: none; +$headingLetterSpacing: 0; +$headingFontWeight: 750; +$mainFontSize: 34px; + +/*-- scss:rules --*/ + +:root { + --pp-bg: #081a17; + --pp-bg-deep: #0b0c0e; + --pp-surface: #102520; + --pp-surface-2: #142d27; + --pp-line: rgba(255, 255, 255, 0.16); + --pp-text: #ffffff; + --pp-muted: rgba(255, 255, 255, 0.72); + --pp-dim: rgba(255, 255, 255, 0.52); + --pp-accent: #f7436e; + --pp-accent-2: #41d6c3; + --pp-warning: #f6c56f; +} + +.reveal { + background: + linear-gradient(135deg, rgba(247, 67, 110, 0.08), transparent 34%), + linear-gradient(180deg, var(--pp-bg), var(--pp-bg-deep)); + color: var(--pp-text); +} + +.reveal .slides { + text-align: left; +} + +.reveal h1, +.reveal h2, +.reveal h3 { + letter-spacing: 0; + line-height: 1.02; +} + +.reveal h1 { + max-width: 13ch; + font-size: 3.2em; +} + +.reveal h2 { + max-width: 22ch; + font-size: 1.95em; +} + +.reveal .subtitle { + max-width: 23ch; + color: var(--pp-muted); + font-size: 1.2em; + font-weight: 500; +} + +.reveal .section { + color: var(--pp-accent); +} + +.reveal p, +.reveal li { + max-width: 44ch; +} + +.reveal table { + width: 100%; + border-collapse: collapse; + font-size: 0.68em; +} + +.reveal th { + color: var(--pp-text); + font-weight: 700; +} + +.reveal td, +.reveal th { + border-bottom: 1px solid var(--pp-line); + padding: 0.55rem 0.7rem; + vertical-align: top; +} + +.slide-intent, +.toc-only, +.diagram-slot, +.flow { + max-width: 980px; + border-left: 4px solid var(--pp-accent); + padding: 0.8rem 1rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.04); +} + +.diagram-slot { + border-color: var(--pp-accent-2); +} + +.flow { + border-color: var(--pp-warning); + color: var(--pp-text); + font-family: $codeFont; + font-size: 0.88em; +} + +.reveal .footer { + color: var(--pp-dim); + font-size: 0.42em; +} + +.reveal .slide-number { + color: var(--pp-muted); +} + +.reveal pre code { + max-height: 560px; +} + +.title-slide h1 { + color: var(--pp-text); +} + From 204f1f3d08e1d00a8a2f4c1c39035bec6b7c6d1f Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sat, 30 May 2026 17:59:15 +0200 Subject: [PATCH 02/14] Titelpage looks ok now --- .../protopipe-enterprise-pitch/README.md | 26 ++- .../protopipe-enterprise-pitch/_quarto.yml | 2 +- .../assets/logos/README.md | 7 +- .../logos/protopipe-logo-color-full.svg | 44 +++++ .../protopipe-enterprise-pitch/compose.yml | 11 ++ .../source/plantuml/golden-circle-flow.puml | 37 ++++ .../docs/deck-outline.md | 34 ++-- .../docs/design-system.md | 9 +- .../docs/diagram-strategy.md | 42 ++++- .../docs/presentation-architecture.md | 11 +- .../docs/quarto-reveal-configuration.md | 2 +- .../docs/repository-tree.md | 5 +- .../presentation/chapters/00-title.qmd | 28 +-- .../presentation/chapters/01-act-problem.qmd | 161 +++++++++++++--- .../chapters/02-act-missing-layer.qmd | 14 +- .../chapters/04-act-integrated-loop.qmd | 14 +- .../chapters/05-act-consulting-entry.qmd | 3 +- .../presentation/chapters/06-act-vision.qmd | 3 +- .../presentation/index.qmd | 7 +- .../scripts/render-plantuml.sh | 15 ++ .../scripts/render.sh | 3 +- .../theme/protopipe.scss | 174 +++++++++++++++++- 22 files changed, 556 insertions(+), 96 deletions(-) create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/logos/protopipe-logo-color-full.svg create mode 100644 dist/presentations/protopipe-enterprise-pitch/compose.yml create mode 100644 dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml/golden-circle-flow.puml create mode 100755 dist/presentations/protopipe-enterprise-pitch/scripts/render-plantuml.sh diff --git a/dist/presentations/protopipe-enterprise-pitch/README.md b/dist/presentations/protopipe-enterprise-pitch/README.md index 20dface..e770ebc 100644 --- a/dist/presentations/protopipe-enterprise-pitch/README.md +++ b/dist/presentations/protopipe-enterprise-pitch/README.md @@ -1,6 +1,6 @@ # Protopipe Enterprise Pitch Deck -**Shared Reality for Product, Architecture and Delivery** +**Augmented Product Development Platform** This directory is a non-canonical presentation project derived from Noesis. It is intended for Quarto, Reveal.js, VS Code, GitHub, and GitHub Pages. @@ -18,6 +18,11 @@ Noesis remains the canonical reasoning space. This deck may interpret, sequence, and package Protopipe for an audience, but it must not introduce canonical facts without moving them back into `doc/`. +Narrative scope: + +Golden Circle / Purpose -> Strategy -> Product -> Architecture -> Development +-> Monitoring and Observations -> Learning -> Decision + ## Quick Start ```bash @@ -28,8 +33,25 @@ quarto preview presentation/index.qmd Render static output: ```bash -quarto render +./scripts/render.sh ``` The rendered site is written to `_site/`. +Render PlantUML diagrams with Podman: + +```bash +./scripts/render-plantuml.sh +``` + +Or: + +```bash +podman compose run --rm plantuml +``` + +The render script defaults to Podman. To use Docker explicitly: + +```bash +CONTAINER_RUNTIME=docker ./scripts/render-plantuml.sh +``` diff --git a/dist/presentations/protopipe-enterprise-pitch/_quarto.yml b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml index 5c6a396..69744ce 100644 --- a/dist/presentations/protopipe-enterprise-pitch/_quarto.yml +++ b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml @@ -36,7 +36,7 @@ format: incremental: false code-copy: true code-overflow: wrap - footer: "Protopipe | Shared Reality for Product, Architecture and Delivery" + footer: "Protopipe | Augmented Product Development Platform" title-slide-attributes: data-background-color: "#081a17" data-state: "title-slide" diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md b/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md index eb7803d..2a36007 100644 --- a/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md +++ b/dist/presentations/protopipe-enterprise-pitch/assets/logos/README.md @@ -3,6 +3,9 @@ Use exported Protopipe logo assets from `doc/09_identity/assets/logo/out/` when the deck needs brand marks. -Do not duplicate canonical source logo files here unless publication packaging -requires it. +`protopipe-logo-color-full.svg` is copied from the canonical exported logo: +`doc/09_identity/assets/logo/out/svg/logo-color-full.svg` + +The copy exists so Quarto and GitHub Pages can package the presentation as a +self-contained derived artifact. Canonical logo source remains in `doc/`. diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/logos/protopipe-logo-color-full.svg b/dist/presentations/protopipe-enterprise-pitch/assets/logos/protopipe-logo-color-full.svg new file mode 100644 index 0000000..c163185 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/logos/protopipe-logo-color-full.svg @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + diff --git a/dist/presentations/protopipe-enterprise-pitch/compose.yml b/dist/presentations/protopipe-enterprise-pitch/compose.yml new file mode 100644 index 0000000..a74a706 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/compose.yml @@ -0,0 +1,11 @@ +services: + plantuml: + image: plantuml/plantuml:1.2025.2 + working_dir: /work + volumes: + - ../../..:/work + command: + - -tsvg + - -o + - ../../generated + - dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml diff --git a/dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml/golden-circle-flow.puml b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml/golden-circle-flow.puml new file mode 100644 index 0000000..f16b6ed --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml/golden-circle-flow.puml @@ -0,0 +1,37 @@ +@startuml + +!include ../../../../../../doc/09_identity/assets/plantuml/protopipe-skin.puml + +title Protopipe - Golden Circle Communication Flow + +|Why| +start +:Decisions without measurable feedback; +:Invisible dependencies; +:Discussions that produce opinions instead of responsibility; + +|How| +:Make problems explicit before solutions; +:Connect hypotheses to measurements; +:Make responsibility observable; + +|What| +:Augmented Product Development Platform; +:Noesis; +:ProtoPortfolio; +:Composer; +:Storybook; + +|Observation| +:Monitoring and observations; +:Learning signal; +:Revisable decision; +stop + +legend right + Swimlanes visualize responsibility. + A transition is a handover of control, + evidence, or accountability. +endlegend + +@enduml diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index a478210..c9d561d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -2,32 +2,41 @@ Working title: **Protopipe** -Subtitle: **Shared Reality for Product, Architecture and Delivery** +Subtitle: **Augmented Product Development Platform** + +Primary narrative path: + +Golden Circle / Purpose -> Strategy -> Product -> Architecture -> Development +-> Monitoring and Observations -> Learning -> Decision ## Act 0: Opening | # | Slide | Purpose | |---:|---|---| | 0 | Protopipe | Establish the deck frame and category. | -| 1 | Deck Architecture | Show the six-act narrative map. | +| 1 | Deck Architecture | Show the Golden Circle-driven narrative map. | ## Act 1: The Problem | # | Slide | Purpose | |---:|---|---| -| 2 | Modern Organizations Do Not Share One Reality | Name the communication crisis. | -| 3 | Local Optimization Creates Organizational Drift | Show role-specific realities. | -| 4 | Luhmann: Organizations Are Communication Systems | Ground the crisis in systems theory. | -| 5 | Habermas: Decisions Need Shared Understanding | Ground decision legitimacy in shared understanding. | -| 6 | The Missing Conditions | Name shared language, evidence, and memory. | -| 7 | Problem Taxonomy | Connect the crisis to Noesis problem areas. | +| 2 | The Golden Circle | Explain why the deck starts with purpose before platform. | +| 3 | Why This Matters for Protopipe | Explain the intended communication flow. | +| 4 | Protopipe's Golden Circle | Apply Why, How, What to the deck narrative. | +| 5 | Core Thesis | Name decisions without measurable feedback, invisible dependencies, and opinion-driven discussions. | +| 6 | Modern Organizations Do Not Share One Reality | Name the communication crisis. | +| 7 | Local Optimization Creates Organizational Drift | Show role-specific realities. | +| 8 | Luhmann: Organizations Are Communication Systems | Ground the crisis in systems theory. | +| 9 | Habermas: Decisions Need Shared Understanding | Ground decision legitimacy in shared understanding. | +| 10 | The Missing Conditions | Name shared language, evidence, and memory. | +| 11 | Problem Taxonomy | Connect the crisis to Noesis problem areas. | ## Act 2: The Missing Layer | # | Slide | Purpose | |---:|---|---| | 8 | Not Another Planning Tool | Differentiate from existing tool categories. | -| 9 | Shared Reality Infrastructure | Introduce the missing category. | +| 9 | Augmented Product Development Platform | Introduce the missing capability layer. | | 10 | The Chain That Must Stay Connected | Show the end-to-end decision chain. | | 11 | Why AI Changes the Feasibility Curve | Position AI as synchronization and translation. | | 12 | Why DevOps Was Not Enough | Explain the remaining strategy-to-learning gap. | @@ -47,10 +56,10 @@ Subtitle: **Shared Reality for Product, Architecture and Delivery** | # | Slide | Purpose | |---:|---|---| -| 19 | From Problem to Knowledge | Present the operating loop. | +| 19 | From Purpose to Knowledge | Present the full operating loop. | | 20 | Experiments Beat Large Upfront Decisions | Explain risk-first exploration. | -| 21 | Architecture Becomes Observable | Connect architecture to measurable change. | -| 22 | Metrics Become Causal, Not Decorative | Tie metrics to hypotheses. | +| 21 | Architecture and Development Become Observable | Connect architecture and implementation to measurable change. | +| 22 | Monitoring Becomes Causal, Not Decorative | Tie observations and metrics to hypotheses. | | 23 | Decisions Become Traceable | Preserve evidence and trade-offs. | ## Act 5: Consulting Entry Strategy @@ -78,4 +87,3 @@ Subtitle: **Shared Reality for Product, Architecture and Delivery** |---:|---|---| | 33 | Source Anchors | Show Noesis source areas used by the deck. | | 34 | Future Detail Slides | Reserve structured depth for later authoring. | - diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md b/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md index 3d81d45..71c17ef 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/design-system.md @@ -16,9 +16,15 @@ than to a startup hype deck or stock-photo consulting brochure. ## Layout Principles +- Use the exported Protopipe full-color logo from the identity chapter in the + Reveal footer as a restrained persistent brand marker. - Slides should be dense enough for enterprise audiences, but not cramped. - Use tables for responsibility maps and transformation paths. -- Use flow diagrams for loops and system interactions. +- Use Protopipe swimlanes for BPM-style process flows, responsibility, + handovers, and domain boundaries. +- Use flow diagrams only for simple loops and system interactions where + responsibility is not the main point. +- Use compact reference lines for theory sources, talks, papers, and books. - Avoid rounded decorative card stacks unless showing repeated items. - Avoid stock-photo metaphors and agile workshop imagery. @@ -26,4 +32,3 @@ than to a startup hype deck or stock-photo consulting brochure. Use system fallbacks by default for portability. If brand fonts are licensed for distribution, place them in `assets/fonts/` and wire them into `theme/`. - diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md index d07812b..0284304 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md @@ -4,17 +4,34 @@ Diagrams are first-class presentation assets. ## Source Formats -- Use Mermaid for early diagrams and versioned collaboration. -- Use PlantUML only when alignment with existing Noesis identity assets matters. +- Use Mermaid only for early throwaway diagrams and quick collaboration. +- Use PlantUML for Protopipe process and BPM-style visuals because it can + include the canonical Noesis skin. - Export final diagrams into `diagrams/generated/` as SVG. +- Prefer vertical swimlanes for responsibility, domain boundaries, handovers, + decision flow, and observation loops. + +## Protopipe BPM Visual Grammar + +The deck follows `doc/09_identity/guidelines/swimlane-visual-grammar.md`. + +- Lane: domain, role, team, responsibility area, or system boundary. +- Token / step: hypothesis, feature step, decision, observation, or learning + signal. +- Transition: handover of control, evidence, responsibility, or accountability. +- Boundary: explicit domain boundary; no implicit coupling. + +Swimlanes are not decorative. They are the preferred visual language for showing +where responsibility sits and how evidence moves. ## Required Diagram Set - Organizational reality drift map - Habermas and Luhmann bridge -- Shared reality infrastructure chain +- Golden Circle communication flow +- Shared reality / APDP capability chain - Protopipe component system map -- Integrated loop from problem to knowledge +- Integrated loop from purpose to monitoring and knowledge - Consulting entry and expansion path ## Rendering Guidance @@ -22,3 +39,20 @@ Diagrams are first-class presentation assets. Keep diagram source editable and compact. Generated exports should be treated as build artifacts unless hand-tuned for presentation quality. +PlantUML is rendered via Podman, not a required local binary: + +```bash +./scripts/render-plantuml.sh +``` + +Or with Compose: + +```bash +podman compose run --rm plantuml +``` + +The script defaults to Podman. Docker remains available as an explicit override: + +```bash +CONTAINER_RUNTIME=docker ./scripts/render-plantuml.sh +``` diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md b/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md index 05cd261..6421c5b 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/presentation-architecture.md @@ -9,6 +9,16 @@ acts as the assembly root and includes one file per narrative act. - Treat `doc/` as canonical source material and this deck as derived. - Add new narrative claims first as slide notes or placeholders, then verify whether they belong in Noesis. +- Frame Protopipe initially as an Augmented Product Development Platform + before explaining the mechanics and components. +- Preserve the full loop: Golden Circle / Purpose -> Strategy -> Product -> + Architecture -> Development -> Monitoring and Observations -> Learning -> + Decision. +- Use `references` blocks for external sources and theory anchors. Keep them + visible but visually subordinate to the slide argument. +- Use Protopipe swimlane / BPM-style diagrams for process explanations, + especially when the point is responsibility, handover, domain boundaries, or + observable evidence. - Prefer one concept per slide. - Prefer diagrams over decorative images. - Use screenshots only when they show a concrete product, prototype, or system @@ -28,4 +38,3 @@ acts as the assembly root and includes one file per narrative act. - Culture: `doc/03_culture/principles.md`, `doc/03_culture/culture-code.md` - Problems: `doc/05_problems/` - Identity: `doc/09_identity/` - diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md b/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md index ab87e42..4713d69 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/quarto-reveal-configuration.md @@ -20,6 +20,7 @@ The deck is configured in `_quarto.yml`. - Controls, progress, hash navigation, history, and overview enabled - Centering disabled to support enterprise-style composed layouts - Code copy enabled for technical appendix slides +- Footer: `Protopipe | Augmented Product Development Platform` ## Rendering @@ -34,4 +35,3 @@ Use preview mode while authoring: ```bash ./scripts/preview.sh ``` - diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md index f73183a..31d8704 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md @@ -21,11 +21,15 @@ protopipe-enterprise-pitch/ │ ├── fonts/ │ ├── images/ │ └── logos/ +│ ├── README.md +│ └── protopipe-logo-color-full.svg ├── diagrams/ │ ├── generated/ │ └── source/ +│ └── plantuml/ ├── scripts/ │ ├── preview.sh +│ ├── render-plantuml.sh │ └── render.sh └── docs/ ├── deck-outline.md @@ -38,4 +42,3 @@ protopipe-enterprise-pitch/ ├── repository-tree.md └── scss-architecture.md ``` - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd index 7d858f8..db36e86 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd @@ -1,26 +1,14 @@ -# Protopipe {.title} - -## Shared Reality for Product, Architecture and Delivery {.subtitle} - -::: {.speaker-note} -Purpose: establish the deck as an enterprise-grade strategic narrative, not a -tool demo or agile consulting pitch. -::: - ---- - ## Deck Architecture | Act | Narrative Job | Canonical Anchor | |---|---|---| -| 1 | Name the organizational communication crisis | Problems, culture, language | -| 2 | Define the missing infrastructure layer | Shared language, visibility, feedback | -| 3 | Introduce Protopipe components | Noesis, ProtoPortfolio, Composer, Storybook | -| 4 | Show the integrated decision loop | Problem to knowledge | -| 5 | Explain consulting entry strategy | Local AI, culture database, memory | -| 6 | State the vision | Shared organizational reality | - -::: {.speaker-note} +| 1 | Why: name the failure mode | Golden Circle, problems | +| 2 | How: define APDP as the missing capability layer | Shared language, visibility, feedback | +| 3 | What: introduce Protopipe components | Noesis, ProtoPortfolio, Composer, Storybook | +| 4 | Loop: connect work to observations | Purpose to observations to knowledge | +| 5 | Entry: show transformation path | Local AI, culture database, memory | +| 6 | Vision: state the organizational outcome | Shared organizational reality | + +::: {.notes} This is a table of contents slide, not a final content slide. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd index 2970cd4..5024008 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd @@ -2,54 +2,171 @@ --- -## 01. Modern Organizations Do Not Share One Reality +## 01. The Golden Circle -::: {.slide-intent} -Frame the core crisis: teams act rationally inside incompatible local realities. -::: +Most organizations communicate from the outside in: + +
+What we build -> How it works -> Why it matters +
+ +The Golden Circle reverses that flow: + +
+Why it matters -> How we make it true -> What we build +
+ +
+Reference: Simon Sinek, How great leaders inspire action, TEDxPuget Sound. +
+ + --- -## 02. Local Optimization Creates Organizational Drift +## 02. Why This Matters for Protopipe + +
+
+Why + +The failure we are unwilling to accept. +
+ +
+How + +The operating model that makes the failure preventable. +
-::: {.toc-only} -CFO, CTO, Product, Sales, Operations, and Developers optimize different evidence, -cadences, incentives, and risk models. -::: +
+What + +The platform that makes the model tangible. +
+
+ + + +--- + +## 03. Protopipe's Golden Circle + +
+ + + + + + + + + + + + + + + + + + + + +
WhyHowWhat
What failure are we unwilling to accept?What operating model makes the failure preventable?What platform makes the model tangible?
Missing feedback, invisible dependencies, opinion-driven decisions.Shared language, measurable hypotheses, observable responsibility.An Augmented Product Development Platform.
+
--- -## 03. Luhmann: Organizations Are Communication Systems +## 04. Core Thesis + +Organizations do not primarily fail because of bad people, bad tools, or bad intentions. + +They fail because decisions, dependencies, and discussions are not connected to measurable reality. + +
+
+Decisions without measurable feedback + +Strategy becomes belief when impact cannot be observed. +
-::: {.toc-only} +
+Invisible dependencies + +Architecture becomes risk when change propagation is hidden. +
+ +
+Discussions that produce opinions instead of responsibility + +Communication becomes theater when nobody owns observable consequences. +
+
+ + + +--- + +## 05. Modern Organizations Do Not Share One Reality + +
+CFO, CTO, Product, Sales, Operations, and Developers each operate with different +evidence, cadences, incentives, and risk models. +
+ +--- + +## 06. Local Optimization Creates Organizational Drift + +
+Each function can make rational decisions locally while the organization drifts +globally. +
+ +--- + +## 07. Luhmann: Organizations Are Communication Systems + +
Use Luhmann to explain why communication, not intent, becomes the operating material of the organization. -::: +
--- -## 04. Habermas: Decisions Need Shared Understanding +## 08. Habermas: Decisions Need Shared Understanding -::: {.toc-only} +
Use Habermas to connect deliberation, evidence, legitimacy, and mutual understanding. -::: +
--- -## 05. The Missing Conditions +## 09. The Missing Conditions -::: {.toc-only} +
Organizations lack shared language, shared evidence, and shared memory. -::: +
--- -## 06. Problem Taxonomy +## 10. Problem Taxonomy -::: {.toc-only} +
Map Noesis problem categories to the enterprise crisis: decision-making, organization and process, culture and mental models, architecture and systems, learning and product, metrics and steering. -::: - +
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd index 7fdac72..481719f 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd @@ -10,11 +10,11 @@ Separate Protopipe from backlog, documentation, reporting, and governance tools. --- -## 08. Shared Reality Infrastructure +## 08. Augmented Product Development Platform ::: {.toc-only} -Introduce the category: infrastructure for organizational meaning, evidence, -memory, and decision traceability. +Introduce APDP as the capability layer that connects purpose, strategy, +product, architecture, development, observations, learning, and decision. ::: --- @@ -22,7 +22,7 @@ memory, and decision traceability. ## 09. The Chain That Must Stay Connected ::: {.flow} -Problem -> Hypothesis -> Experiment -> Architecture -> Implementation -> Metrics -> Decision +Purpose -> Strategy -> Problem -> Hypothesis -> Experiment -> Architecture -> Development -> Monitoring -> Observations -> Decision -> Learning ::: --- @@ -39,7 +39,7 @@ not as generic automation. ## 11. Why DevOps Was Not Enough ::: {.toc-only} -Show that deployment feedback improved delivery, but did not fully connect -strategy, product, architecture, and organizational memory. +Show that deployment feedback improved engineering flow, but did not fully +connect purpose, strategy, product, architecture, observations, and +organizational memory. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd index 4f5740b..32e0692 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd @@ -2,10 +2,10 @@ --- -## 18. From Problem to Knowledge +## 18. From Purpose to Knowledge ::: {.flow} -Problem -> Discussion -> Hypothesis -> Prototype -> Experiment -> Metric -> Decision -> Knowledge +Golden Circle -> Strategy -> Problem -> Discussion -> Hypothesis -> Prototype -> Experiment -> Implementation -> Monitoring -> Observation -> Decision -> Knowledge ::: --- @@ -18,19 +18,20 @@ Connect risk-first exploration, reversibility, and feedback over opinion. --- -## 20. Architecture Becomes Observable +## 20. Architecture and Development Become Observable ::: {.toc-only} Show architecture as dependency management, invariant placement, and blast -radius reduction. +radius reduction, connected to implementation feedback and runtime observation. ::: --- -## 21. Metrics Become Causal, Not Decorative +## 21. Monitoring Becomes Causal, Not Decorative ::: {.toc-only} -Tie KPI trees to hypotheses and experiments so metrics can explain decisions. +Tie KPI trees, telemetry, observations, hypotheses, and experiments so metrics +can explain decisions. ::: --- @@ -40,4 +41,3 @@ Tie KPI trees to hypotheses and experiments so metrics can explain decisions. ::: {.toc-only} Show how evidence, trade-offs, and canonical references survive beyond meetings. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd index 7deeec3..6e817de 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd @@ -31,7 +31,7 @@ Explain auditability, adoption, extension, client trust, and ecosystem leverage. ## 26. Expansion Path ::: {.flow} -Team Memory -> Delivery -> Architecture -> Strategy -> KPI Systems +Team Memory -> Development -> Architecture -> Strategy -> KPI Systems -> Observability ::: --- @@ -42,4 +42,3 @@ Team Memory -> Delivery -> Architecture -> Strategy -> KPI Systems Protopipe as a transformation entry point: low-risk start, visible value, expanding strategic surface. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index db27acb..507410e 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -15,7 +15,7 @@ memory visible. ::: {.toc-only} Organizations become faster because learning loops become explicit and -architecturally supported. +supported from strategic intent to runtime observation. ::: --- @@ -34,4 +34,3 @@ Debate remains valuable, but ungrounded opinion loses veto power. End with the strategic promise: better decisions, faster, with less waste and more responsibility. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd index 776b6be..3191b75 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -1,7 +1,7 @@ --- -title: "Protopipe" -subtitle: "Shared Reality for Product, Architecture and Delivery" -author: "Protopipe" +title: 'Protopipe' +subtitle: "Augmented Product Development Platform" +author: "Alwin Mark" date: last-modified format: revealjs: @@ -26,4 +26,3 @@ format: {{< include chapters/06-act-vision.qmd >}} {{< include chapters/90-appendix.qmd >}} - diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/render-plantuml.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/render-plantuml.sh new file mode 100755 index 0000000..419455c --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/render-plantuml.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +set -euo pipefail + +cd "$(dirname "$0")/.." +mkdir -p diagrams/generated +repo_root="$(git rev-parse --show-toplevel)" +container_runtime="${CONTAINER_RUNTIME:-podman}" + +"$container_runtime" run --rm \ + -v "$repo_root:/work" \ + -w /work \ + plantuml/plantuml:1.2025.2 \ + -tsvg \ + -o ../../generated \ + dist/presentations/protopipe-enterprise-pitch/diagrams/source/plantuml diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh index dc4e73a..9ea1c79 100755 --- a/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/render.sh @@ -2,5 +2,4 @@ set -euo pipefail cd "$(dirname "$0")/.." -quarto render - +quarto render presentation/index.qmd diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index 5415bc5..db10a29 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -96,7 +96,8 @@ $mainFontSize: 34px; .slide-intent, .toc-only, .diagram-slot, -.flow { +.flow, +.problem { max-width: 980px; border-left: 4px solid var(--pp-accent); padding: 0.8rem 1rem; @@ -115,20 +116,187 @@ $mainFontSize: 34px; font-size: 0.88em; } +.communication-flow { + max-width: 1120px; + margin: 0.8rem 0 1.4rem; + border: 1px solid var(--pp-line); + border-left: 4px solid var(--pp-dim); + padding: 0.85rem 1rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-family: $codeFont; + font-size: 0.78em; +} + +.communication-flow.accent { + border-left-color: var(--pp-accent); + color: var(--pp-text); +} + +.circle-stack { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1.1rem; + margin-top: 1.4rem; +} + +.circle-item { + min-height: 250px; + border: 1px solid var(--pp-line); + border-top: 4px solid var(--pp-accent); + padding: 1.1rem; + background: rgba(255, 255, 255, 0.04); + color: var(--pp-muted); + font-size: 0.72em; +} + +.circle-item strong { + display: block; + margin-bottom: 1rem; + color: var(--pp-text); + font-size: 1.45em; +} + +.circle-item.why { + border-top-color: var(--pp-accent); +} + +.circle-item.how { + border-top-color: var(--pp-warning); +} + +.circle-item.what { + border-top-color: var(--pp-accent-2); +} + +.problem-triad { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1rem; + margin-top: 1.3rem; +} + +.problem { + min-height: 220px; + border-color: var(--pp-accent); + font-size: 0.72em; +} + +.problem strong { + display: block; + margin-bottom: 0.9rem; + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.golden-circle table { + margin-top: 1.2rem; + font-size: 0.62em; +} + +.golden-circle th { + color: var(--pp-accent); + text-transform: uppercase; +} + +.references { + margin-top: 1.5rem; + max-width: 760px; + color: var(--pp-dim); + font-size: 0.46em; + line-height: 1.35; +} + +.references a { + color: var(--pp-muted); + text-decoration: underline; + text-decoration-color: rgba(247, 67, 110, 0.7); + text-underline-offset: 0.14em; +} + +@media (max-width: 900px) { + .problem-triad, + .circle-stack { + grid-template-columns: 1fr; + } + + .problem, + .circle-item { + min-height: 0; + } +} + .reveal .footer { color: var(--pp-dim); font-size: 0.42em; + left: 1.2rem; + right: auto; + bottom: 0.5rem; + padding-left: 150px; + min-height: 30px; + line-height: 30px; + background-image: url("../../../../assets/logos/protopipe-logo-color-full.svg"); + background-repeat: no-repeat; + background-position: left center; + background-size: 126px auto; } .reveal .slide-number { color: var(--pp-muted); + bottom: 0.5rem; + right: 1.2rem; + font-size: 0.42em; +} + +.reveal::after { + content: "Alwin Mark | 2026-05-30"; + position: fixed; + right: 5.1rem; + bottom: 0.5rem; + z-index: 30; + color: var(--pp-dim); + font-size: 0.42em; + line-height: 30px; + pointer-events: none; } .reveal pre code { max-height: 560px; } -.title-slide h1 { - color: var(--pp-text); +#title-slide { + text-align: left; +} + +#title-slide h1, +#title-slide .quarto-title-authors, +#title-slide .date { + display: none; } +#title-slide::before { + content: ""; + display: block; + width: min(620px, 48vw); + height: 150px; + margin: 0 0 1.6rem; + background-image: url("../../../../assets/logos/protopipe-logo-color-full.svg"); + background-repeat: no-repeat; + background-size: contain; + background-position: left center; +} + +#title-slide .subtitle { + max-width: 17ch; + margin: 0; + color: var(--pp-muted); + font-size: 1.25em; + font-weight: 650; + line-height: 1.12; + text-align: left; +} + +#title-slide h1 { + color: var(--pp-text); +} From fa995156405cb12e605d0a7ac6f43c2cc15fed72 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sat, 30 May 2026 18:10:22 +0200 Subject: [PATCH 03/14] Presentation: golden circle --- .../presentation/chapters/01-act-problem.qmd | 28 +++- .../theme/protopipe.scss | 121 +++++++++++++++--- 2 files changed, 124 insertions(+), 25 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd index 5024008..96a8854 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd @@ -4,16 +4,30 @@ ## 01. The Golden Circle -Most organizations communicate from the outside in: +

Direction of thinking and communicating

-
-What we build -> How it works -> Why it matters +
+
+
Default communication
+
+
What we build
+
->
+
How it works
+
->
+
Why it matters
+
-The Golden Circle reverses that flow: - -
-Why it matters -> How we make it true -> What we build +
+
Golden Circle communication
+
+
Why it matters
+
->
+
How we make it true
+
->
+
What we build
+
+
diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index db10a29..c0cdc29 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -75,6 +75,13 @@ $mainFontSize: 34px; max-width: 44ch; } +.slide-kicker { + margin: 0.2rem 0 1.1rem; + color: var(--pp-muted); + font-size: 0.72em; + font-weight: 600; +} + .reveal table { width: 100%; border-collapse: collapse; @@ -116,23 +123,6 @@ $mainFontSize: 34px; font-size: 0.88em; } -.communication-flow { - max-width: 1120px; - margin: 0.8rem 0 1.4rem; - border: 1px solid var(--pp-line); - border-left: 4px solid var(--pp-dim); - padding: 0.85rem 1rem; - color: var(--pp-muted); - background: rgba(255, 255, 255, 0.035); - font-family: $codeFont; - font-size: 0.78em; -} - -.communication-flow.accent { - border-left-color: var(--pp-accent); - color: var(--pp-text); -} - .circle-stack { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -169,6 +159,90 @@ $mainFontSize: 34px; border-top-color: var(--pp-accent-2); } +.bpm-compare { + display: grid; + gap: 1.2rem; + margin-top: 1.4rem; + max-width: 1220px; +} + +.bpm-flow { + display: grid; + grid-template-columns: 220px 1fr; + min-height: 150px; + border: 1px solid rgba(255, 255, 255, 0.08); + border-radius: 14px; + overflow: hidden; + background: + linear-gradient(90deg, rgba(247, 67, 110, 0.22), rgba(247, 67, 110, 0.08) 26%, rgba(8, 26, 23, 0.72) 68%, rgba(8, 26, 23, 0.92)), + rgba(255, 255, 255, 0.03); +} + +.bpm-flow.accent { + border-color: rgba(247, 67, 110, 0.55); + background: + linear-gradient(90deg, rgba(247, 67, 110, 0.86), rgba(247, 67, 110, 0.44) 32%, rgba(102, 30, 46, 0.24) 58%, rgba(8, 26, 23, 0.92)), + rgba(247, 67, 110, 0.08); +} + +.bpm-flow.muted { + opacity: 0.74; +} + +.bpm-lane { + display: flex; + align-items: center; + border-right: 0; + padding: 1.15rem; + color: var(--pp-text); + font-size: 0.58em; + font-weight: 700; + line-height: 1.12; +} + +.bpm-steps { + display: grid; + grid-template-columns: 1fr 44px 1fr 44px 1fr; + align-items: center; + gap: 0.7rem; + padding: 1.15rem 1.25rem 1.15rem 0.4rem; +} + +.bpm-step { + min-height: 70px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.72); + border-radius: 9px; + padding: 0.8rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.055); + font-size: 0.66em; + font-weight: 650; + line-height: 1.12; + text-align: center; + backdrop-filter: blur(2px); +} + +.bpm-step.primary { + border-color: rgba(255, 255, 255, 0.9); + background: rgba(247, 67, 110, 0.15); + box-shadow: inset 0 0 0 1px rgba(247, 67, 110, 0.22); +} + +.bpm-step.weak { + color: var(--pp-muted); + border-color: rgba(255, 255, 255, 0.42); +} + +.bpm-arrow { + color: rgba(255, 255, 255, 0.88); + font-family: $codeFont; + font-size: 0.96em; + text-align: center; +} + .problem-triad { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -217,7 +291,9 @@ $mainFontSize: 34px; @media (max-width: 900px) { .problem-triad, - .circle-stack { + .circle-stack, + .bpm-flow, + .bpm-steps { grid-template-columns: 1fr; } @@ -225,6 +301,15 @@ $mainFontSize: 34px; .circle-item { min-height: 0; } + + .bpm-lane { + border-right: 0; + border-bottom: 1px solid var(--pp-line); + } + + .bpm-arrow { + transform: rotate(90deg); + } } .reveal .footer { From b29bf0742df504ab5e640f450e9f96df46c388bc Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sat, 30 May 2026 20:05:39 +0200 Subject: [PATCH 04/14] Presentation: Act 1 - Problems --- .../docs/deck-outline.md | 16 +- .../presentation/chapters/01-act-problem.qmd | 302 ++++++--- .../theme/protopipe.scss | 633 +++++++++++++++++- 3 files changed, 857 insertions(+), 94 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index c9d561d..004c4f4 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -21,15 +21,13 @@ Golden Circle / Purpose -> Strategy -> Product -> Architecture -> Development | # | Slide | Purpose | |---:|---|---| | 2 | The Golden Circle | Explain why the deck starts with purpose before platform. | -| 3 | Why This Matters for Protopipe | Explain the intended communication flow. | -| 4 | Protopipe's Golden Circle | Apply Why, How, What to the deck narrative. | -| 5 | Core Thesis | Name decisions without measurable feedback, invisible dependencies, and opinion-driven discussions. | -| 6 | Modern Organizations Do Not Share One Reality | Name the communication crisis. | -| 7 | Local Optimization Creates Organizational Drift | Show role-specific realities. | -| 8 | Luhmann: Organizations Are Communication Systems | Ground the crisis in systems theory. | -| 9 | Habermas: Decisions Need Shared Understanding | Ground decision legitimacy in shared understanding. | -| 10 | The Missing Conditions | Name shared language, evidence, and memory. | -| 11 | Problem Taxonomy | Connect the crisis to Noesis problem areas. | +| 3 | Protopipe's Golden Circle | Apply Why, How, What to the deck narrative. | +| 4 | The Strategy Is Defined. It Just Does Not Arrive. | Press the wound: purpose, strategy, and culture exist as artifacts but do not change daily work. | +| 5 | The Best Idea Does Not Automatically Win | Condense the Luhmann/Onlu wound: organizations select what connects to communication. | +| 6 | Deliberation Needs Observable Reality | Show Habermas, Bowtie, and architecture as escape from decision-meeting loops. | +| 7 | Ivory Tower Architecture | Show architecture principles without feedback, application, or visible trade-offs. | +| 8 | Responsibility Without Control | Show accountability without authority, context, or system-level influence. | +| 9 | Survival of the Fastest | Summarize the problem as organizational decision latency. | ## Act 2: The Missing Layer diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd index 96a8854..f53f202 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd @@ -42,145 +42,279 @@ components. --- -## 02. Why This Matters for Protopipe +## 02. Protopipe's Golden Circle -
-
-Why +

Fall in love with the problem, not the solution Uri Levine

-The failure we are unwilling to accept. +
+
+
+What +Augmented Product Development Platform
- -
+
+How +Experiments built in +
+
+Why +Wrong and slow decisions +
+
+
+
+Why +Decisions without measurable feedback, invisible dependencies, and discussions without responsibility waste organizational time. +
+
How +Protopipe makes problems explicit, connects hypotheses to measurements, and turns responsibility into something observable. +
+
+What +The platform makes this operating model tangible across strategy, product, architecture, development, monitoring, and learning. +
+
+
+ +--- + +## 03. The Strategy Is Defined. It Just Does Not Arrive. -The operating model that makes the failure preventable. +

The problem is not missing intent. The problem is broken transmission.

+ +
+
+Golden Circle exists +Many organizations have a purpose statement, values, principles, and strategic language.
-
-What +
+Strategy exists +Steering meetings produce decisions, priorities, roadmaps, and transformation narratives. +
-The platform that makes the model tangible. +
+Daily work does not change +Documentation becomes write-only. Culture shifts rarely reach teams formally, and even less often become internalized behavior.
--- -## 03. Protopipe's Golden Circle - -
- - - - - - - - - - - - - - - - - - - - -
WhyHowWhat
What failure are we unwilling to accept?What operating model makes the failure preventable?What platform makes the model tangible?
Missing feedback, invisible dependencies, opinion-driven decisions.Shared language, measurable hypotheses, observable responsibility.An Augmented Product Development Platform.
-
+## 04. Organizations Speak Different Codes ---- +

The same signal becomes different communication in different systems.

-## 04. Core Thesis +
+
+Engineering +Truth +

Does it work? Is it correct? Can we prove the failure?

+
-Organizations do not primarily fail because of bad people, bad tools, or bad intentions. +
+Finance +Money +

What does it cost? Which budget moves? What is the business effect?

+
-They fail because decisions, dependencies, and discussions are not connected to measurable reality. +
+C-Level / Management +Power +

Can it be decided? Does it fit priorities, timing, ownership, and narrative?

+
-
-
-Decisions without measurable feedback +
+Product / Market +Demand +

Does the market care? Which user behavior confirms or rejects it?

+
+
-Strategy becomes belief when impact cannot be observed. +
+
+Developer says +“The system is built wrong.” +
+
+C-Level hears +“This threatens roadmap, budget, ownership, and commitment.” +
+
+Not the best idea wins. The most connectable communication wins. +
+
+ +
+Theory anchor: Niklas Luhmann, organizational systems as communication systems. Applied reading: Alwin Mark, Warum sich in Unternehmen nicht die besten Ideen durchsetzen, ONLU AG.
-
-Invisible dependencies + -Architecture becomes risk when change propagation is hidden. +--- + +## 05. Deliberation Needs Observable Reality + +

Decision meetings loop when there is no shared object to reason about.

+ +
+
+
More meetings
+
->
+
More slides
+
->
+
More opinions
+
->
+
Power word
+
->
+
Low-risk,
low-reward decision
-
-Discussions that produce opinions instead of responsibility -Communication becomes theater when nobody owns observable consequences. +
+Without observable reality, meetings and politics become a substitute for knowledge.
+
+
+Bowtie +Shared model +

Causes, risks, consequences, barriers, and assumptions become explicit.

+
+
+
+
+Habermas +Structured argument +

Claims must be justified, located, challenged, and understood.

+
+
+
+
+System architecture +Observable reality +

Metrics, events, tests, monitoring, and feedback make claims decidable.

+
+
+ + +
+Theory anchor: Jürgen Habermas, communicative action and deliberation. Applied reading: Alwin Mark, Deliberation statt Endlosschleife, ONLU AG. +
+ --- -## 05. Modern Organizations Do Not Share One Reality +## 06. Ivory Tower Architecture + +

Architecture principles fail when they are not connected to implementation feedback.

-
-CFO, CTO, Product, Sales, Operations, and Developers each operate with different -evidence, cadences, incentives, and risk models. +
+
+Architects do not get feedback +Principles are defined far away from the friction of delivery, runtime behavior, incidents, and developer experience.
---- +
+Developers do not apply principles +Architecture becomes documentation, not a working constraint inside daily decisions, code reviews, tests, or releases. +
-## 06. Local Optimization Creates Organizational Drift +
+Trade-offs disappear +Principles sound like pure improvement. Coupling, cost, migration effort, latency, ownership, and operational risk stay hidden. +
+
-
-Each function can make rational decisions locally while the organization drifts -globally. +
+Architecture without feedback becomes belief. Architecture without trade-offs becomes theater.
+ + --- -## 07. Luhmann: Organizations Are Communication Systems +## 07. Responsibility Without Control -
-Use Luhmann to explain why communication, not intent, becomes the operating -material of the organization. -
+

Teams are accountable for outcomes they cannot fully influence.

---- +
+
+
Team responsibility
+
+
Own outcome
+
->
+
Find constraint
+
->
+
Cannot change it
+
+
-## 08. Habermas: Decisions Need Shared Understanding +
+
Central control
+
+
Decision rights
+
Architecture boundary
+
Budget / risk gate
+
+
+
-
-Use Habermas to connect deliberation, evidence, legitimacy, and mutual -understanding. +
+Escalation becomes the operating model. +Teams optimize locally to survive. +Management becomes the delivery bottleneck.
+ + --- -## 09. The Missing Conditions +## 08. Survival of the Fastest -
-Organizations lack shared language, shared evidence, and shared memory. -
+

The real problem is not one bad decision. It is organizational decision latency.

---- +
+
+Organizations become too slow for their own reality. +Problems are known, strategy is written, architecture is documented, meetings happen, and responsibility is assigned. But feedback does not move fast enough to change decisions. +
-## 10. Problem Taxonomy +
+
Write-only strategy
+
Different communication codes
+
Meeting loops
+
Ivory tower architecture
+
Responsibility without control
+
Decisions without feedback
+
-
-Map Noesis problem categories to the enterprise crisis: decision-making, -organization and process, culture and mental models, architecture and systems, -learning and product, metrics and steering. +
+Slow organizations do not fail because they lack ideas. They fail because reality reaches decisions too late. +
diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index c0cdc29..d1541ac 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -82,6 +82,19 @@ $mainFontSize: 34px; font-weight: 600; } +.kicker-source { + color: var(--pp-dim); + font-size: 0.72em; + font-weight: 500; +} + +.kicker-source a { + color: var(--pp-muted); + text-decoration: underline; + text-decoration-color: rgba(247, 67, 110, 0.7); + text-underline-offset: 0.14em; +} + .reveal table { width: 100%; border-collapse: collapse; @@ -104,7 +117,8 @@ $mainFontSize: 34px; .toc-only, .diagram-slot, .flow, -.problem { +.problem, +.wound-card { max-width: 980px; border-left: 4px solid var(--pp-accent); padding: 0.8rem 1rem; @@ -243,6 +257,498 @@ $mainFontSize: 34px; text-align: center; } +.wound-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1rem; + margin-top: 1.3rem; +} + +.wound-card { + min-height: 260px; + max-width: none; + border-left-color: var(--pp-line); + font-size: 0.68em; + line-height: 1.2; +} + +.wound-card strong { + display: block; + margin-bottom: 0.85rem; + color: var(--pp-text); + font-size: 1.18em; + line-height: 1.08; +} + +.wound-card.critical { + border-left-color: var(--pp-accent); + background: rgba(247, 67, 110, 0.07); +} + +.luhmann-wound { + display: grid; + gap: 1rem; + margin-top: 1.2rem; + max-width: 1240px; +} + +.luhmann-claim { + border-left: 4px solid var(--pp-accent); + padding: 0.8rem 1rem; + color: var(--pp-muted); + background: rgba(247, 67, 110, 0.06); + font-size: 0.62em; + line-height: 1.22; +} + +.luhmann-claim strong { + display: block; + margin-bottom: 0.25rem; + color: var(--pp-text); + font-size: 1.18em; +} + +.luhmann-path { + display: grid; + grid-template-columns: 1fr 36px 1fr 36px 1fr 36px 1fr; + align-items: center; + gap: 0.55rem; +} + +.luhmann-node { + min-height: 78px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.42); + border-radius: 9px; + padding: 0.7rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.045); + font-size: 0.58em; + font-weight: 700; + line-height: 1.12; + text-align: center; +} + +.luhmann-node.muted { + color: var(--pp-muted); + opacity: 0.78; +} + +.luhmann-node.critical { + border-color: rgba(247, 67, 110, 0.75); + background: rgba(247, 67, 110, 0.08); +} + +.luhmann-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.84em; + text-align: center; +} + +.luhmann-points { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.8rem; +} + +.luhmann-points span { + border-top: 3px solid var(--pp-line); + padding-top: 0.6rem; + color: var(--pp-muted); + font-size: 0.48em; + line-height: 1.24; +} + +.luhmann-codes { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.85rem; + margin-top: 1.1rem; + max-width: 1240px; +} + +.code-card { + min-height: 190px; + border: 1px solid var(--pp-line); + border-top: 4px solid var(--pp-line); + padding: 0.85rem; + background: rgba(255, 255, 255, 0.04); +} + +.code-card.critical { + border-top-color: var(--pp-accent); + background: rgba(247, 67, 110, 0.07); +} + +.code-owner { + display: block; + margin-bottom: 0.55rem; + color: var(--pp-dim); + font-size: 0.42em; + font-weight: 700; + text-transform: uppercase; +} + +.code-card strong { + display: block; + margin-bottom: 0.75rem; + color: var(--pp-text); + font-size: 0.78em; +} + +.code-card p { + margin: 0; + color: var(--pp-muted); + font-size: 0.52em; + line-height: 1.2; +} + +.translation-wound { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 0.8rem; + margin-top: 1rem; + max-width: 1240px; +} + +.translation-row { + border-left: 4px solid var(--pp-line); + padding: 0.75rem 0.9rem; + background: rgba(255, 255, 255, 0.035); +} + +.translation-from { + display: block; + margin-bottom: 0.35rem; + color: var(--pp-dim); + font-size: 0.42em; + font-weight: 700; + text-transform: uppercase; +} + +.translation-row strong { + color: var(--pp-text); + font-size: 0.58em; + line-height: 1.14; +} + +.translation-result { + grid-column: 1 / -1; + border-left: 4px solid var(--pp-accent); + padding: 0.75rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.62em; + font-weight: 750; +} + +.habermas-slide { + display: grid; + gap: 1rem; + margin-top: 1.1rem; + max-width: 1240px; +} + +.meeting-loop { + display: grid; + grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1fr 30px 1.08fr; + align-items: center; + gap: 0.55rem; +} + +.loop-step { + min-height: 74px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.38); + border-radius: 9px; + padding: 0.7rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.56em; + font-weight: 700; + text-align: center; +} + +.loop-step.critical { + border-color: rgba(247, 67, 110, 0.7); + color: var(--pp-text); + background: rgba(247, 67, 110, 0.08); +} + +.loop-step.low-reward { + border-color: rgba(246, 197, 111, 0.62); + color: var(--pp-text); + background: rgba(246, 197, 111, 0.06); +} + +.loop-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.8em; + text-align: center; +} + +.deliberation-model { + display: grid; + grid-template-columns: 1fr 34px 1fr 34px 1fr; + align-items: stretch; + gap: 0.65rem; +} + +.deliberation-block { + border-left: 4px solid var(--pp-line); + padding: 0.85rem; + background: rgba(255, 255, 255, 0.045); +} + +.deliberation-block.critical { + border-left-color: var(--pp-accent); + background: rgba(247, 67, 110, 0.07); +} + +.deliberation-block span { + display: block; + margin-bottom: 0.45rem; + color: var(--pp-dim); + font-size: 0.42em; + font-weight: 800; + text-transform: uppercase; +} + +.deliberation-block strong { + display: block; + margin-bottom: 0.55rem; + color: var(--pp-text); + font-size: 0.68em; +} + +.deliberation-block p { + margin: 0; + color: var(--pp-muted); + font-size: 0.48em; + line-height: 1.2; +} + +.deliberation-plus { + display: flex; + align-items: center; + justify-content: center; + color: var(--pp-accent); + font-size: 0.72em; + font-weight: 800; +} + +.deliberation-punchline { + border-left: 4px solid var(--pp-accent); + padding: 0.75rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.62em; + font-weight: 750; + margin: 2rem; +} + +.architecture-wound { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.architecture-card { + min-height: 250px; + border-left: 4px solid var(--pp-line); + padding: 0.9rem 1rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.04); + font-size: 0.66em; + line-height: 1.2; +} + +.architecture-card strong { + display: block; + margin-bottom: 0.85rem; + color: var(--pp-text); + font-size: 1.16em; + line-height: 1.08; +} + +.architecture-card.critical { + border-left-color: var(--pp-accent); + background: rgba(247, 67, 110, 0.07); +} + +.architecture-punchline { + max-width: 1240px; + margin-top: 1rem; + border-left: 4px solid var(--pp-accent); + padding: 0.75rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.62em; + font-weight: 750; +} + +.survival-slide { + display: grid; + gap: 1rem; + margin-top: 1.2rem; + max-width: 1240px; +} + +.survival-core { + border-left: 4px solid var(--pp-accent); + padding: 0.9rem 1rem; + background: rgba(247, 67, 110, 0.07); +} + +.survival-core strong { + display: block; + margin-bottom: 0.45rem; + color: var(--pp-text); + font-size: 0.8em; + line-height: 1.08; +} + +.survival-core span { + display: block; + max-width: 72ch; + color: var(--pp-muted); + font-size: 0.54em; + line-height: 1.22; +} + +.survival-anchors { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.75rem; +} + +.survival-anchors div { + min-height: 76px; + display: flex; + align-items: center; + border: 1px solid var(--pp-line); + border-left: 4px solid var(--pp-line); + padding: 0.65rem 0.75rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.5em; + font-weight: 650; + line-height: 1.16; +} + +.survival-punchline { + border-left: 4px solid var(--pp-accent); + padding: 0.75rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.62em; + font-weight: 750; +} + +.responsibility-bpm { + display: grid; + gap: 0.9rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.responsibility-lane { + display: grid; + grid-template-columns: 210px 1fr; + min-height: 134px; + border: 1px solid rgba(255, 255, 255, 0.08); + border-radius: 14px; + overflow: hidden; + background: + linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035) 28%, rgba(8, 26, 23, 0.82)), + rgba(255, 255, 255, 0.03); +} + +.responsibility-lane.control { + background: + linear-gradient(90deg, rgba(247, 67, 110, 0.7), rgba(247, 67, 110, 0.24) 32%, rgba(8, 26, 23, 0.86)), + rgba(247, 67, 110, 0.06); +} + +.responsibility-lane-label { + display: flex; + align-items: center; + padding: 1rem; + color: var(--pp-text); + font-size: 0.58em; + font-weight: 800; + line-height: 1.12; +} + +.responsibility-flow { + display: grid; + grid-template-columns: 1fr 40px 1fr 40px 1fr; + align-items: center; + gap: 0.6rem; + padding: 1rem 1.1rem 1rem 0.3rem; +} + +.responsibility-lane.control .responsibility-flow { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.responsibility-token { + min-height: 68px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.66); + border-radius: 9px; + padding: 0.65rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.055); + font-size: 0.58em; + font-weight: 700; + line-height: 1.12; + text-align: center; +} + +.responsibility-token.blocked { + border-color: rgba(247, 67, 110, 0.82); + background: rgba(247, 67, 110, 0.12); +} + +.responsibility-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.82em; + text-align: center; +} + +.responsibility-effects { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.8rem; + margin-top: 1rem; + max-width: 1240px; +} + +.responsibility-effects span { + min-height: 82px; + display: flex; + align-items: center; + border: 1px solid var(--pp-line); + border-left: 4px solid var(--pp-accent); + padding: 0.65rem 0.75rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.5em; + line-height: 1.22; +} + .problem-triad { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -274,6 +780,103 @@ $mainFontSize: 34px; text-transform: uppercase; } +.golden-visual { + display: grid; + grid-template-columns: minmax(460px, 0.86fr) 1fr; + align-items: center; + gap: 2rem; + margin-top: 1rem; +} + +.golden-rings { + position: relative; + width: min(560px, 42vw); + aspect-ratio: 1; + border-radius: 50%; + background: transparent; +} + +.golden-ring { + position: absolute; + inset: 0; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border-radius: 50%; + border: 2px solid rgba(246, 197, 111, 0.74); + color: var(--pp-text); + text-align: center; +} + +.golden-ring.what { + inset: 0; + border-color: rgba(177, 117, 28, 0.68); + justify-content: flex-end; + padding-bottom: 0; +} + +.golden-ring.how { + inset: 18%; + border-color: rgba(245, 184, 74, 0.82); + justify-content: flex-end; + padding-bottom: 2rem; +} + +.golden-ring.why { + inset: 36%; + border-color: rgba(255, 224, 141, 0.95); + background: rgba(8, 26, 23, 0.72); + justify-content: center; + padding: 0.6rem; +} + +.ring-label { + display: block; + color: #ffe08d; + font-size: 0.5em; + font-weight: 800; + text-transform: uppercase; +} + +.ring-copy { + display: block; + max-width: 17ch; + margin-top: 0.25rem; + color: var(--pp-muted); + font-size: 0.34em; + font-weight: 650; + line-height: 1.14; +} + +.golden-ring.why .ring-copy { + max-width: 13ch; + color: var(--pp-text); + font-size: 0.3em; +} + +.golden-explainer { + display: grid; + gap: 0.85rem; +} + +.golden-note { + border-left: 4px solid rgba(246, 197, 111, 0.82); + padding: 0.75rem 0.95rem; + background: rgba(255, 255, 255, 0.04); + color: var(--pp-muted); + font-size: 0.58em; + line-height: 1.24; +} + +.golden-note strong { + display: block; + margin-bottom: 0.25rem; + color: #ffe08d; + font-size: 1.12em; + text-transform: uppercase; +} + .references { margin-top: 1.5rem; max-width: 760px; @@ -291,13 +894,32 @@ $mainFontSize: 34px; @media (max-width: 900px) { .problem-triad, + .wound-grid, + .luhmann-codes, + .luhmann-path, + .luhmann-points, + .translation-wound, + .meeting-loop, + .deliberation-model, + .architecture-wound, + .responsibility-bpm, + .responsibility-lane, + .responsibility-effects, + .survival-anchors, .circle-stack, + .golden-visual, .bpm-flow, .bpm-steps { grid-template-columns: 1fr; } + .golden-rings { + width: min(520px, 78vw); + } + .problem, + .wound-card, + .architecture-card, .circle-item { min-height: 0; } @@ -310,6 +932,15 @@ $mainFontSize: 34px; .bpm-arrow { transform: rotate(90deg); } + + .responsibility-flow, + .responsibility-lane.control .responsibility-flow { + grid-template-columns: 1fr; + } + + .responsibility-arrow { + transform: rotate(90deg); + } } .reveal .footer { From 5561bddaf24c809c1ed420799653297bed4da713 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sat, 30 May 2026 20:38:32 +0200 Subject: [PATCH 05/14] Mechanics --- .../docs/deck-outline.md | 11 +- .../chapters/02-act-missing-layer.qmd | 139 +++++++++++++--- .../theme/protopipe.scss | 149 ++++++++++++++++++ 3 files changed, 267 insertions(+), 32 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 004c4f4..2c74d0a 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -29,15 +29,14 @@ Golden Circle / Purpose -> Strategy -> Product -> Architecture -> Development | 8 | Responsibility Without Control | Show accountability without authority, context, or system-level influence. | | 9 | Survival of the Fastest | Summarize the problem as organizational decision latency. | -## Act 2: The Missing Layer +## Act 2: Outcomes and Mechanics | # | Slide | Purpose | |---:|---|---| -| 8 | Not Another Planning Tool | Differentiate from existing tool categories. | -| 9 | Augmented Product Development Platform | Introduce the missing capability layer. | -| 10 | The Chain That Must Stay Connected | Show the end-to-end decision chain. | -| 11 | Why AI Changes the Feasibility Curve | Position AI as synchronization and translation. | -| 12 | Why DevOps Was Not Enough | Explain the remaining strategy-to-learning gap. | +| 9 | From Problems to Desired Outcomes | Show stakeholder-bound fix stars before solutions. | +| 10 | Mechanics Make Outcomes Unavoidable | Explain mechanics as enforced trade-offs. | +| 11 | The First Mechanics | Introduce shared meaning, observable feedback, learning signal, and business ownership. | +| 12 | The Missing Layer | Position shared reality between intent and implementation. | ## Act 3: Protopipe diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd index 481719f..ccc630e 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd @@ -1,45 +1,132 @@ -# Act 2: The Missing Layer {.section} +# Act 2: Outcomes and Mechanics {.section} --- -## 07. Not Another Planning Tool +## 09. From Problems to Desired Outcomes -::: {.toc-only} -Separate Protopipe from backlog, documentation, reporting, and governance tools. -::: +

Protopipe does not jump from pain to solution. It defines what must become true.

---- +
+
+CEO +Simple decisions through evidence +Management decisions become simpler because evidence is accessible, reliable, and safe to surface. +
+ +
+CFO +KPIs built in +Impact, constraints, and opportunity cost become visible early enough to steer investment. +
-## 08. Augmented Product Development Platform +
+CPO +Hypotheses instead of roadmap defense +Product decisions become explicit assumptions with signals and revisit criteria. +
-::: {.toc-only} -Introduce APDP as the capability layer that connects purpose, strategy, -product, architecture, development, observations, learning, and decision. -::: +
+CTO +Scale change, not just throughput +Architecture localizes change, risk, and understanding as the organization grows. +
+
--- -## 09. The Chain That Must Stay Connected +## 10. Mechanics Make Outcomes Unavoidable + +

Mechanics are enforced trade-offs. They remove comfortable failure modes.

+ +
+
Problem
+
->
+
Desired Outcome
+
->
+
Mechanic
+
->
+
Decision
+
->
+
Implementation
+
+ +
+If a rule can be ignored without consequence, it is not a mechanic. +
+ +
+
+X over Y +Use when a mechanic enforces a clear preference +between two competing approaches. + +Y is excluded by default. It needs strong justification to be chosen over X. +
+ +
+X by Default, Y by Exception +Use when a behavior is allowed, +but only with explicit justification. + +Y is allowed, but only for the given exception +
-::: {.flow} -Purpose -> Strategy -> Problem -> Hypothesis -> Experiment -> Architecture -> Development -> Monitoring -> Observations -> Decision -> Learning -::: +
+No X without Y +Use when a behavior must never occur +unless a prerequisite is fulfilled. + +X is not allowed unless Y is true +
+
--- -## 10. Why AI Changes the Feasibility Curve +## 11. The First Mechanics + +

A shared reality platform starts by making ambiguity structurally expensive.

+ +
+
+No coordination without explicit shared meaning +Coordination through meetings alone does not scale. Meaning must be referenceable. +
+ +
+No release without observable feedback +Delivery is not complete until feedback exists before or during release. +
-::: {.toc-only} -Position AI as synchronization, retrieval, critique, and translation capacity, -not as generic automation. -::: +
+No work evaluation without learning signal +Work is evaluated by learning, not by looking right or wrong. +
+ +
+No experiment without explicit business ownership +Experiments need accountable interpretation, not just technical execution. +
+
--- -## 11. Why DevOps Was Not Enough +## 12. The Missing Layer + +

Shared reality is the operational layer between intent and implementation.

+ +
+
Purpose
+
Strategy
+
Hypothesis
+
Experiment
+
Architecture
+
Development
+
Observation
+
Decision
+
Learning
+
+ +
+Protopipe exists to keep this chain connected, explicit, observable, and revisable. +
-::: {.toc-only} -Show that deployment feedback improved engineering flow, but did not fully -connect purpose, strategy, product, architecture, observations, and -organizational memory. -::: diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index d1541ac..0a82494 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -653,6 +653,145 @@ $mainFontSize: 34px; font-weight: 750; } +.outcome-map { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.85rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.outcome-card { + min-height: 250px; + border: 1px solid var(--pp-line); + border-top: 4px solid var(--pp-accent); + padding: 0.85rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.04); + font-size: 0.54em; + line-height: 1.22; +} + +.outcome-card span { + display: block; + margin-bottom: 0.65rem; + color: var(--pp-dim); + font-size: 0.84em; + font-weight: 800; + text-transform: uppercase; +} + +.outcome-card strong { + display: block; + margin-bottom: 0.75rem; + color: var(--pp-text); + font-size: 1.22em; + line-height: 1.08; +} + + +.outcome-card i { + font-style: italic!important; +} + +.mechanic-chain { + display: grid; + grid-template-columns: 1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr; + gap: 0.55rem; + align-items: center; + margin-top: 1.4rem; + max-width: 1240px; +} + +.mechanic-step { + min-height: 86px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.42); + border-radius: 9px; + padding: 0.65rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.045); + font-size: 0.56em; + font-weight: 750; + text-align: center; +} + +.mechanic-step.critical { + border-color: rgba(247, 67, 110, 0.75); + background: rgba(247, 67, 110, 0.09); +} + +.mechanic-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.82em; + text-align: center; +} + +.mechanic-punchline, +.shared-reality-punchline { + max-width: 1240px; + margin-top: 1rem; + border-left: 4px solid var(--pp-accent); + padding: 0.75rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.62em; + font-weight: 750; +} + +.mechanic-grid { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.85rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.mechanic-card { + min-height: 230px; + border-left: 4px solid var(--pp-accent); + padding: 0.85rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.04); + font-size: 0.52em; + line-height: 1.2; +} + + +.mechanic-card strong { + display: block; + margin-bottom: 0.75rem; + color: var(--pp-text); + font-size: 1.18em; + line-height: 1.08; +} + +.shared-reality-flow { + display: grid; + grid-template-columns: repeat(9, minmax(0, 1fr)); + gap: 0.45rem; + margin-top: 1.4rem; + max-width: 1240px; +} + +.shared-reality-flow div { + min-height: 84px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.42); + border-radius: 9px; + padding: 0.55rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.045); + font-size: 0.46em; + font-weight: 700; + text-align: center; +} + .responsibility-bpm { display: grid; gap: 0.9rem; @@ -906,6 +1045,10 @@ $mainFontSize: 34px; .responsibility-lane, .responsibility-effects, .survival-anchors, + .outcome-map, + .mechanic-chain, + .mechanic-grid, + .shared-reality-flow, .circle-stack, .golden-visual, .bpm-flow, @@ -920,6 +1063,8 @@ $mainFontSize: 34px; .problem, .wound-card, .architecture-card, + .outcome-card, + .mechanic-card, .circle-item { min-height: 0; } @@ -941,6 +1086,10 @@ $mainFontSize: 34px; .responsibility-arrow { transform: rotate(90deg); } + + .mechanic-arrow { + transform: rotate(90deg); + } } .reveal .footer { From ea251ae5f4f41fbac1ad888b17ce838c97d1bc3a Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Sun, 31 May 2026 17:16:15 +0200 Subject: [PATCH 06/14] gapless-org-learning --- .../assets/diagrams/shared-reality-bpmn.svg | 83 ++++++++++++++ ...er.qmd => 02-act-gapless-org-learning.qmd} | 78 ++++++++++--- .../chapters/03-act-protopipe.qmd | 13 +-- .../chapters/04-act-integrated-loop.qmd | 10 +- .../chapters/05-act-consulting-entry.qmd | 10 +- .../presentation/chapters/06-act-vision.qmd | 8 +- .../presentation/index.qmd | 2 +- .../theme/protopipe.scss | 108 ++++++++++++++++++ 8 files changed, 271 insertions(+), 41 deletions(-) create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg rename dist/presentations/protopipe-enterprise-pitch/presentation/chapters/{02-act-missing-layer.qmd => 02-act-gapless-org-learning.qmd} (57%) diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg new file mode 100644 index 0000000..28a3f80 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + C-Level + Product + Ownership + Developers + Learning + Canonical + + + + + + + + + + + + + + + Purpose + Strategy + Hypothesis + Experiment + Development + Observation + + + + + Decision + gate + + + + + Canonical Learning Record + claim, metric, evidence, decision rationale, next hypothesis + + + + + + + + + + + + + + + + + + + revise hypothesis + reframe strategy + + diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd similarity index 57% rename from dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd rename to dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd index ccc630e..25ca3a5 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-missing-layer.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd @@ -45,17 +45,17 @@ Architecture localizes change, risk, and understanding as the organization grows
->
Mechanic
->
-
Decision
+
Contextual Decision
->
-
Implementation
+
Realization
If a rule can be ignored without consequence, it is not a mechanic.
-
-
+
+
X over Y Use when a mechanic enforces a clear preference between two competing approaches. @@ -63,7 +63,7 @@ between two competing approaches. Y is excluded by default. It needs strong justification to be chosen over X.
-
+
X by Default, Y by Exception Use when a behavior is allowed, but only with explicit justification. @@ -71,7 +71,7 @@ but only with explicit justification. Y is allowed, but only for the given exception
-
+
No X without Y Use when a behavior must never occur unless a prerequisite is fulfilled. @@ -110,23 +110,63 @@ Experiments need accountable interpretation, not just technical execution. --- -## 12. The Missing Layer +## 12. Gapless Organizational Learning Process -

Shared reality is the operational layer between intent and implementation.

+

Purpose, strategy, delivery, observation, and learning stay in one measurable loop.

-
-
Purpose
-
Strategy
-
Hypothesis
-
Experiment
-
Architecture
-
Development
-
Observation
-
Decision
-
Learning
+```{=html} +
+BPMN-style shared reality process across C-Level, Product Ownership, Developers, and Learning lanes
+```
-Protopipe exists to keep this chain connected, explicit, observable, and revisable. +Protopipe exists to keep this loop connected, explicit, observable, and revisable. +
+ +--- + +## 13. Process Transition Artifacts + +

Every handover becomes visible as a shared artifact that the next lane can understand and act on.

+ +
+
+Purpose +Golden Circle +Why, how, and what become a stable reference for strategic and product conversations. +Visible as shared orientation.
+
+Strategy +Strategy Topic + KPI Tree +Strategy replaces roadmap-only steering. KPI trees make business intent inspectable in ProtoPortfolio. +Visible as portfolio structure. +
+ +
+Hypothesis +Strategy-linked Claim +A hypothesis belongs to a strategy topic and states what should become measurably true. +Visible as strategic assumption. +
+ +
+Experiment +Measured System Change +An experiment tries to prove a hypothesis by changing or replacing part of the current system and expecting metric movement. +Visible as portfolio experiment. +
+ +
+Development +Feature Files / Scenarios +Instead of story points, progress is visible as missing scenario steps on the experiment branch. +Visible on the experiment. +
+
+ +
+Artifacts are not write-only documentation. They are the shared objects that carry responsibility across the process. +
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd index 63b0ead..e21c56b 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd @@ -2,7 +2,7 @@ --- -## 12. Protopipe System Map +## 14. Protopipe System Map ::: {.diagram-slot} Diagram target: component topology of Noesis, ProtoPortfolio, Composer, and @@ -11,7 +11,7 @@ Storybook around the shared reality loop. --- -## 13. Noesis: Canonical Reasoning Space +## 15. Noesis: Canonical Reasoning Space ::: {.toc-only} AI-enforced synchronization, single source of truth, shared organizational @@ -20,7 +20,7 @@ memory, and decision traceability. --- -## 14. ProtoPortfolio: Augmented Strategy +## 16. ProtoPortfolio: Augmented Strategy ::: {.toc-only} KPI Tree, hypothesis-driven strategy, and the business-product-architecture @@ -29,7 +29,7 @@ translation layer. --- -## 15. Composer: Architecture as an Experiment System +## 17. Composer: Architecture as an Experiment System ::: {.toc-only} RFAs, strangler transformations, search-and-replace migrations, and reversible @@ -38,7 +38,7 @@ architectural learning. --- -## 16. Storybook: UX Communication Layer +## 18. Storybook: UX Communication Layer ::: {.toc-only} Marketing, prototype generation, contracts, and future WYSIWYG assembly. @@ -46,7 +46,7 @@ Marketing, prototype generation, contracts, and future WYSIWYG assembly. --- -## 17. Component Responsibilities +## 19. Component Responsibilities | Component | Primary Job | Failure It Prevents | |---|---|---| @@ -54,4 +54,3 @@ Marketing, prototype generation, contracts, and future WYSIWYG assembly. | ProtoPortfolio | Connect strategy to measurable hypotheses | Activity steering | | Composer | Make architecture experimentally changeable | Big upfront commitments | | Storybook | Make experience inspectable and negotiable | Invisible UX assumptions | - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd index 32e0692..02e8436 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd @@ -2,7 +2,7 @@ --- -## 18. From Purpose to Knowledge +## 20. From Purpose to Knowledge ::: {.flow} Golden Circle -> Strategy -> Problem -> Discussion -> Hypothesis -> Prototype -> Experiment -> Implementation -> Monitoring -> Observation -> Decision -> Knowledge @@ -10,7 +10,7 @@ Golden Circle -> Strategy -> Problem -> Discussion -> Hypothesis -> Prototype -> --- -## 19. Experiments Beat Large Upfront Decisions +## 21. Experiments Beat Large Upfront Decisions ::: {.toc-only} Connect risk-first exploration, reversibility, and feedback over opinion. @@ -18,7 +18,7 @@ Connect risk-first exploration, reversibility, and feedback over opinion. --- -## 20. Architecture and Development Become Observable +## 22. Architecture and Development Become Observable ::: {.toc-only} Show architecture as dependency management, invariant placement, and blast @@ -27,7 +27,7 @@ radius reduction, connected to implementation feedback and runtime observation. --- -## 21. Monitoring Becomes Causal, Not Decorative +## 23. Monitoring Becomes Causal, Not Decorative ::: {.toc-only} Tie KPI trees, telemetry, observations, hypotheses, and experiments so metrics @@ -36,7 +36,7 @@ can explain decisions. --- -## 22. Decisions Become Traceable +## 24. Decisions Become Traceable ::: {.toc-only} Show how evidence, trade-offs, and canonical references survive beyond meetings. diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd index 6e817de..b690849 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd @@ -2,7 +2,7 @@ --- -## 23. Bottom-Up Entry +## 25. Bottom-Up Entry ::: {.toc-only} Start with Noesis, a local LLM, a team culture database, and organizational @@ -11,7 +11,7 @@ memory. --- -## 24. Why Local AI Matters +## 26. Why Local AI Matters ::: {.toc-only} Explain confidentiality, sovereignty, trust, latency, and client-specific @@ -20,7 +20,7 @@ context grounding. --- -## 25. Why OSS Matters +## 27. Why OSS Matters ::: {.toc-only} Explain auditability, adoption, extension, client trust, and ecosystem leverage. @@ -28,7 +28,7 @@ Explain auditability, adoption, extension, client trust, and ecosystem leverage. --- -## 26. Expansion Path +## 28. Expansion Path ::: {.flow} Team Memory -> Development -> Architecture -> Strategy -> KPI Systems -> Observability @@ -36,7 +36,7 @@ Team Memory -> Development -> Architecture -> Strategy -> KPI Systems -> Observa --- -## 27. Consulting Motion +## 29. Consulting Motion ::: {.toc-only} Protopipe as a transformation entry point: low-risk start, visible value, diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index 507410e..075211d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -2,7 +2,7 @@ --- -## 28. Shared Organizational Reality +## 30. Shared Organizational Reality ::: {.toc-only} Protopipe reduces political decisions by making assumptions, evidence, and @@ -11,7 +11,7 @@ memory visible. --- -## 29. Faster Experimentation +## 31. Faster Experimentation ::: {.toc-only} Organizations become faster because learning loops become explicit and @@ -20,7 +20,7 @@ supported from strategic intent to runtime observation. --- -## 30. Fewer Political Decisions +## 32. Fewer Political Decisions ::: {.toc-only} Debate remains valuable, but ungrounded opinion loses veto power. @@ -28,7 +28,7 @@ Debate remains valuable, but ungrounded opinion loses veto power. --- -## 31. Evidence-Driven Enterprise Change +## 33. Evidence-Driven Enterprise Change ::: {.toc-only} End with the strategic promise: better decisions, faster, with less waste and diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd index 3191b75..acd680b 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -15,7 +15,7 @@ format: {{< include chapters/01-act-problem.qmd >}} -{{< include chapters/02-act-missing-layer.qmd >}} +{{< include chapters/02-act-gapless-org-learning.qmd >}} {{< include chapters/03-act-protopipe.qmd >}} diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index 0a82494..d7522fb 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -742,6 +742,42 @@ $mainFontSize: 34px; font-weight: 750; } +.mechanic-type-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.75rem; + margin-top: 1rem; + max-width: 940px; +} + +.mechanic-type-card { + min-height: 190px; + border: 1px solid var(--pp-line); + border-top: 4px solid var(--pp-accent); + padding: 0.75rem 0.85rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.48em; + line-height: 1.18; +} + +.mechanic-type-card span { + display: block; + margin-bottom: 0.65rem; + color: var(--pp-dim); + font-size: 0.82em; + font-weight: 800; + text-transform: uppercase; +} + +.mechanic-type-card i { + display: block; + margin-top: 0.65rem; + color: var(--pp-muted); + font-style: italic; + font-weight: 500; +} + .mechanic-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); @@ -792,6 +828,74 @@ $mainFontSize: 34px; text-align: center; } +.enterprise-bpm { + margin-top: 1.25rem; + max-width: 1320px; +} + +.enterprise-bpmn-img { + display: block; + width: 100%; + height: auto; + max-height: 475px; +} + +.artifact-flow { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 0.65rem; + margin-top: 1.2rem; + max-width: 1320px; +} + +.artifact-card { + min-height: 265px; + border: 1px solid var(--pp-line); + border-top: 4px solid rgba(246, 197, 111, 0.86); + border-radius: 8px; + padding: 0.72rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.46em; + line-height: 1.18; +} + +.artifact-card span { + display: block; + margin-bottom: 0.55rem; + color: #ffe08d; + font-size: 0.82em; + font-weight: 850; + text-transform: uppercase; +} + +.artifact-card strong { + display: block; + margin-bottom: 0.7rem; + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.artifact-card em { + display: block; + margin-top: 0.7rem; + color: var(--pp-dim); + font-style: italic; + font-weight: 650; +} + +.artifact-punchline { + max-width: 1180px; + margin-top: 0.9rem; + border-left: 4px solid var(--pp-accent); + padding: 0.7rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.58em; + font-weight: 750; +} + .responsibility-bpm { display: grid; gap: 0.9rem; @@ -1047,7 +1151,9 @@ $mainFontSize: 34px; .survival-anchors, .outcome-map, .mechanic-chain, + .mechanic-type-grid, .mechanic-grid, + .artifact-flow, .shared-reality-flow, .circle-stack, .golden-visual, @@ -1064,7 +1170,9 @@ $mainFontSize: 34px; .wound-card, .architecture-card, .outcome-card, + .mechanic-type-card, .mechanic-card, + .artifact-card, .circle-item { min-height: 0; } From c526f0926becc8042cbcb1e103e96613270fda83 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Tue, 9 Jun 2026 17:03:39 +0200 Subject: [PATCH 07/14] Protopipe Cockpit Mockup --- dist/mockups/ProtopipeCockpit.html | 530 +++++++++++++++++++++++++++++ dist/mockups/strategy-detail.html | 108 ++++++ 2 files changed, 638 insertions(+) create mode 100644 dist/mockups/ProtopipeCockpit.html create mode 100644 dist/mockups/strategy-detail.html diff --git a/dist/mockups/ProtopipeCockpit.html b/dist/mockups/ProtopipeCockpit.html new file mode 100644 index 0000000..69bc2ea --- /dev/null +++ b/dist/mockups/ProtopipeCockpit.html @@ -0,0 +1,530 @@ + + + + + +Protopipe Executive Cockpit + + + +
+ + +
+
+

Executive Strategy Overview

+

+ Strategies as durable management objects: budget, capacity, priority, + evidence, friction, risk mitigation, and KPI momentum in a single view. +

+
+
+ +
+
+
+
+

Overall Strategy Health

+

Aggregated strategy health with compact financial instruments reflecting the company state.

+
+ Company Direction +
+ +
+
72Health
+
+
+
Momentum+12%
+
TrendAccelerating
+
Healthy Strategies4 / 5
+
Critical Strategy1
+
+
+ +
+
+
+
Portfolio Capacity
+
Strategic capacity allocation across all active strategies
+
+ 100% +
+
+ + + + + +
+
30% Enterprise · 24% Profitability · 22% AI · 10% Resilience · 14% Ops
+
+ +
+
+
Liquidity
+
CHF 18.4M
Runway 14.2 months
+ + + Partner pilot launched · possible liquidity impact through onboarding spend + Budget shifted to partner enablement · liquidity remained stable + +
+
+
Revenue
+
CHF 42.7M
+8.4% vs. previous period
+ + + Partner pilot launched · revenue acceleration followed + AI pricing test launched · possible contribution to revenue growth + Partner enablement budget shift · correlation with continued revenue growth + +
+
+
Costs
+
CHF 31.1M
Cloud +12%, People +4%
+ + + Partner pilot launched · onboarding costs began to increase + AI pricing test expanded · inference and infrastructure costs increased + Cloud cost spike detected · strong correlation with cost increase + +
+
+
Provisions
+
CHF 3.8M
2 open exposure reviews
+ + + Regulatory review started · additional exposure assessed + AI compliance scope expanded · provisions increased + +
+
+
+
+ +
+
+
+

Reality Signal Matrix

+

Quadrants show decision confidence, overall trends, and the four strongest relevant signal changes in the selected period.

+
+ Impact × Delta +
+ +
+
+
Internal + Controllable
92%Confidence
+
Overall Trend+8%
Signals128
+
+
+
Margin+6.2%
+
Deployment Frequency+11%
+
Defect Rate-4.8%
+
Capacity Utilization+3.1%
+
+
+
+
Internal + Uncontrollable
63%Confidence
+
Overall Trend-3%
Signals74
+
+
+
Knowledge Distribution-9.4%
+
Architecture Coupling+7.2%
+
Team Stability-5.5%
+
Critical Expert Load+6.8%
+
+
+
+
External + Controllable
48%Confidence
+
Overall Trend+12%
Signals51
+
+
+
Partner Pipeline+18%
+
Brand Reach+14%
+
Sales Opportunities+9.6%
+
Acquisition Cost-3.9%
+
+
+
+
External + Uncontrollable
29%Confidence
+
Overall Trend-18%
Signals26
+
+
+
Cloud Costs+7.1%
+
Interest Rates+4.0%
+
Market Demand-6.3%
+
Regulatory Exposure+5.7%
+
+
+
+
+
+ +
+
+ + +
+
+ + + + diff --git a/dist/mockups/strategy-detail.html b/dist/mockups/strategy-detail.html new file mode 100644 index 0000000..fa00b18 --- /dev/null +++ b/dist/mockups/strategy-detail.html @@ -0,0 +1,108 @@ + + + + + +Protopipe Strategy Detail + + + +
+ + +
+
Active Strategy
+

Enterprise Expansion

+
Q2–Q4 2026 · Owner CEO / CPO
+
+ +
+
+

Strategic Hypothesis

+
The partner network can scale without proportional increases in onboarding costs.
+
+
+

Operating Position

+
+
BudgetCHF 5.2M
+
Capacity30%
+
PriorityCritical
+
+
+
+

Current Experiments

+
+
+
+

Decision Context

+
+
Primary frictionSales cycle exceeds target
+
Critical riskCompetitive response
+
+
+
+
+ + + From 7f817b72331ed9e84deab5e8f73d3a81b3e292ca Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Tue, 9 Jun 2026 21:19:16 +0200 Subject: [PATCH 08/14] Most parts of Act 3. --- .../protopipe-enterprise-pitch/.gitignore | 1 + .../protopipe-enterprise-pitch/README.md | 16 + .../protopipe-enterprise-pitch/_quarto.yml | 2 + .../diagrams/noesis-culture-runtime-bpmn.svg | 63 + .../assets/diagrams/shared-reality-bpmn.svg | 12 +- .../diagrams/write-only-culture-bpmn.svg | 60 + .../docs/deck-outline.md | 130 +- .../docs/repository-tree.md | 9 +- .../presentation/chapters/00-title.qmd | 14 - .../presentation/chapters/01-act-problem.qmd | 4 +- .../chapters/02-act-gapless-org-learning.qmd | 10 +- .../chapters/03-act-protopipe.qmd | 410 ++++- ...-entry.qmd => 04-act-consulting-entry.qmd} | 14 +- ...rated-loop.qmd => 05-act-architecture.qmd} | 16 +- .../presentation/chapters/06-act-vision.qmd | 10 +- .../presentation/chapters/90-appendix.qmd | 3 +- .../presentation/index.qmd | 6 +- .../scripts/export-pdf.sh | 43 + .../scripts/sync-mockups.sh | 13 + .../theme/protopipe.scss | 1399 +++++++++++++++-- tooling/prompting/roles/salespartner.md | 223 +++ 21 files changed, 2140 insertions(+), 318 deletions(-) create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/diagrams/noesis-culture-runtime-bpmn.svg create mode 100644 dist/presentations/protopipe-enterprise-pitch/assets/diagrams/write-only-culture-bpmn.svg delete mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd rename dist/presentations/protopipe-enterprise-pitch/presentation/chapters/{05-act-consulting-entry.qmd => 04-act-consulting-entry.qmd} (74%) rename dist/presentations/protopipe-enterprise-pitch/presentation/chapters/{04-act-integrated-loop.qmd => 05-act-architecture.qmd} (55%) create mode 100755 dist/presentations/protopipe-enterprise-pitch/scripts/export-pdf.sh create mode 100755 dist/presentations/protopipe-enterprise-pitch/scripts/sync-mockups.sh create mode 100644 tooling/prompting/roles/salespartner.md diff --git a/dist/presentations/protopipe-enterprise-pitch/.gitignore b/dist/presentations/protopipe-enterprise-pitch/.gitignore index 807767b..df7cf4c 100644 --- a/dist/presentations/protopipe-enterprise-pitch/.gitignore +++ b/dist/presentations/protopipe-enterprise-pitch/.gitignore @@ -1,6 +1,7 @@ /.quarto/ /_site/ /.jupyter_cache/ +/assets/mockups/ProtopipeCockpit.html **/*.quarto_ipynb diff --git a/dist/presentations/protopipe-enterprise-pitch/README.md b/dist/presentations/protopipe-enterprise-pitch/README.md index e770ebc..1129f16 100644 --- a/dist/presentations/protopipe-enterprise-pitch/README.md +++ b/dist/presentations/protopipe-enterprise-pitch/README.md @@ -38,6 +38,22 @@ Render static output: The rendered site is written to `_site/`. +Export a color PDF through Reveal.js and Chromium: + +```bash +./scripts/export-pdf.sh +``` + +The PDF is written to `_site/protopipe-enterprise-pitch.pdf`. Print styles +preserve slide colors and place transparent SVG diagrams on a dark neutral +surface. + +Manual fallback: + +1. Start `./scripts/preview.sh`. +2. Append `?print-pdf` to the presentation URL. +3. Print from Chromium and enable **Background graphics**. + Render PlantUML diagrams with Podman: ```bash diff --git a/dist/presentations/protopipe-enterprise-pitch/_quarto.yml b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml index 69744ce..4fae02e 100644 --- a/dist/presentations/protopipe-enterprise-pitch/_quarto.yml +++ b/dist/presentations/protopipe-enterprise-pitch/_quarto.yml @@ -1,6 +1,8 @@ project: type: website output-dir: _site + pre-render: + - scripts/sync-mockups.sh render: - presentation/index.qmd diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/noesis-culture-runtime-bpmn.svg b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/noesis-culture-runtime-bpmn.svg new file mode 100644 index 0000000..782c85e --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/noesis-culture-runtime-bpmn.svg @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + Leadership + Noesis + Employee + + + + + + + + + + + + + + + + + Define lead culture + Audit AI-conform + documentation (MCP) + Daily work + Review and suggest + change + Aligned work + artifact + + + + + + + + + + + + + + audited context + diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg index 28a3f80..62b54cb 100644 --- a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg +++ b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg @@ -9,9 +9,9 @@ - - - + + + @@ -29,13 +29,13 @@ Canonical - + - + @@ -49,7 +49,7 @@ Observation - + Decision gate diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/write-only-culture-bpmn.svg b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/write-only-culture-bpmn.svg new file mode 100644 index 0000000..5e7f622 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/write-only-culture-bpmn.svg @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + Leadership + Employee + + + + + + + + + + + + + + + + + + + + Define culture + Present once + Share document + Work with + local context + + + + + + + + + + + + + + one-way communication + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 2c74d0a..080f10d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -1,86 +1,66 @@ -# Presentation Chapter Structure and Slide TOC +# Presentation Chapter Structure Working title: **Protopipe** Subtitle: **Augmented Product Development Platform** -Primary narrative path: - -Golden Circle / Purpose -> Strategy -> Product -> Architecture -> Development --> Monitoring and Observations -> Learning -> Decision - -## Act 0: Opening - -| # | Slide | Purpose | -|---:|---|---| -| 0 | Protopipe | Establish the deck frame and category. | -| 1 | Deck Architecture | Show the Golden Circle-driven narrative map. | - -## Act 1: The Problem - -| # | Slide | Purpose | -|---:|---|---| -| 2 | The Golden Circle | Explain why the deck starts with purpose before platform. | -| 3 | Protopipe's Golden Circle | Apply Why, How, What to the deck narrative. | -| 4 | The Strategy Is Defined. It Just Does Not Arrive. | Press the wound: purpose, strategy, and culture exist as artifacts but do not change daily work. | -| 5 | The Best Idea Does Not Automatically Win | Condense the Luhmann/Onlu wound: organizations select what connects to communication. | -| 6 | Deliberation Needs Observable Reality | Show Habermas, Bowtie, and architecture as escape from decision-meeting loops. | -| 7 | Ivory Tower Architecture | Show architecture principles without feedback, application, or visible trade-offs. | -| 8 | Responsibility Without Control | Show accountability without authority, context, or system-level influence. | -| 9 | Survival of the Fastest | Summarize the problem as organizational decision latency. | - -## Act 2: Outcomes and Mechanics - -| # | Slide | Purpose | -|---:|---|---| -| 9 | From Problems to Desired Outcomes | Show stakeholder-bound fix stars before solutions. | -| 10 | Mechanics Make Outcomes Unavoidable | Explain mechanics as enforced trade-offs. | -| 11 | The First Mechanics | Introduce shared meaning, observable feedback, learning signal, and business ownership. | -| 12 | The Missing Layer | Position shared reality between intent and implementation. | - -## Act 3: Protopipe - -| # | Slide | Purpose | -|---:|---|---| -| 13 | Protopipe System Map | Show component relationships. | -| 14 | Noesis: Canonical Reasoning Space | Introduce shared memory and traceability. | -| 15 | ProtoPortfolio: Augmented Strategy | Connect KPI trees, hypotheses, and strategy. | -| 16 | Composer: Architecture as an Experiment System | Show reversible architecture work. | -| 17 | Storybook: UX Communication Layer | Show prototype, marketing, and contract surfaces. | -| 18 | Component Responsibilities | Clarify each component's job. | - -## Act 4: The Integrated Loop - -| # | Slide | Purpose | -|---:|---|---| -| 19 | From Purpose to Knowledge | Present the full operating loop. | -| 20 | Experiments Beat Large Upfront Decisions | Explain risk-first exploration. | -| 21 | Architecture and Development Become Observable | Connect architecture and implementation to measurable change. | -| 22 | Monitoring Becomes Causal, Not Decorative | Tie observations and metrics to hypotheses. | -| 23 | Decisions Become Traceable | Preserve evidence and trade-offs. | - -## Act 5: Consulting Entry Strategy - -| # | Slide | Purpose | -|---:|---|---| -| 24 | Bottom-Up Entry | Start with Noesis, local LLM, culture database, memory. | -| 25 | Why Local AI Matters | Address sovereignty, trust, and context. | -| 26 | Why OSS Matters | Address auditability and adoption. | -| 27 | Expansion Path | Show movement from memory to KPI systems. | -| 28 | Consulting Motion | Define transformation entry strategy. | +Primary narrative: + +Problem Statement -> Communication Artifacts -> Enforcing Tools -> +Consulting Entry -> Architecture and Observability -> Vision + +The title slide opens directly into Act 1. A separate table-of-contents slide is +intentionally omitted: the act dividers provide orientation without delaying the +narrative. + +## Act 1: Problem Statement + +| Slides | Narrative Job | +|---|---| +| 01-02 | Establish the Golden Circle and Protopipe's why, how, and what. | +| 03-08 | Expose write-only strategy, incompatible communication codes, decision loops, ivory-tower architecture, responsibility without control, and organizational latency. | + +## Act 2: Communication Artifacts + +| Slides | Narrative Job | +|---|---| +| 09-11 | Move from problems to desired outcomes and normative mechanics. | +| 12 | Show the gapless organizational learning process across roles. | +| 13 | Introduce the visible artifacts handed from purpose through development. | + +## Act 3: Enforcing Tools + +| Slides | Narrative Job | +|---|---| +| 14-16 | Make purpose and culture available at the point of work through Noesis and AI-assisted context. | +| 17 | Show the Protopipe Cockpit as the C-level surface for strategy health, reality signals, strategic focus, and decision detail. | +| 18 | Demonstrate the executable Cockpit mock as product evidence. | +| 19 | Connect strategy to hypothesis-driven experimentation through ProtoPortfolio. | +| 20-21 | Present ProtoCatalog as one versioned behavior model and make feature-branch progress observable through verified steps. | +| 22 | Show how Composer creates a reversible experiment boundary inside a legacy system and shortens the path to a first production experiment. | +| 23-24 | Introduce Storybook and summarize component responsibilities. | +| 25 | Revisit the communication artifacts with the tooling that keeps each one current, executable, and testable. | + +## Act 4: Consulting Entry + +| Slides | Narrative Job | +|---|---| +| 26-30 | Show a low-risk entry through Noesis, local AI, OSS, organizational memory, and an incremental expansion path. | + +## Act 5: Architecture and Observability + +| Slides | Narrative Job | +|---|---| +| 31 | Connect experiments to architecture, development, observation, decisions, and learning. | +| 32-35 | Explain reversible architecture, observable development, causal monitoring, and traceable decisions. | ## Act 6: Vision -| # | Slide | Purpose | -|---:|---|---| -| 29 | Shared Organizational Reality | State the end-state category. | -| 30 | Faster Experimentation | Show learning speed as strategic capability. | -| 31 | Fewer Political Decisions | Replace ungrounded opinion with evidence. | -| 32 | Evidence-Driven Enterprise Change | Close the enterprise promise. | +| Slides | Narrative Job | +|---|---| +| 36-39 | Close with shared organizational reality, faster experimentation, fewer political decisions, and evidence-driven change. | ## Appendix -| # | Slide | Purpose | -|---:|---|---| -| 33 | Source Anchors | Show Noesis source areas used by the deck. | -| 34 | Future Detail Slides | Reserve structured depth for later authoring. | +- Source anchors +- Future theory, component, consulting, case-study, and implementation detail diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md index 31d8704..01b0313 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md @@ -7,18 +7,19 @@ protopipe-enterprise-pitch/ ├── presentation/ │ ├── index.qmd │ └── chapters/ -│ ├── 00-title.qmd │ ├── 01-act-problem.qmd -│ ├── 02-act-missing-layer.qmd +│ ├── 02-act-gapless-org-learning.qmd │ ├── 03-act-protopipe.qmd -│ ├── 04-act-integrated-loop.qmd -│ ├── 05-act-consulting-entry.qmd +│ ├── 04-act-consulting-entry.qmd +│ ├── 05-act-architecture.qmd │ ├── 06-act-vision.qmd │ └── 90-appendix.qmd ├── theme/ │ └── protopipe.scss ├── assets/ │ ├── fonts/ +│ ├── diagrams/ +│ │ └── shared-reality-bpmn.svg │ ├── images/ │ └── logos/ │ ├── README.md diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd deleted file mode 100644 index db36e86..0000000 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/00-title.qmd +++ /dev/null @@ -1,14 +0,0 @@ -## Deck Architecture - -| Act | Narrative Job | Canonical Anchor | -|---|---|---| -| 1 | Why: name the failure mode | Golden Circle, problems | -| 2 | How: define APDP as the missing capability layer | Shared language, visibility, feedback | -| 3 | What: introduce Protopipe components | Noesis, ProtoPortfolio, Composer, Storybook | -| 4 | Loop: connect work to observations | Purpose to observations to knowledge | -| 5 | Entry: show transformation path | Local AI, culture database, memory | -| 6 | Vision: state the organizational outcome | Shared organizational reality | - -::: {.notes} -This is a table of contents slide, not a final content slide. -::: diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd index f53f202..0ac81fc 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/01-act-problem.qmd @@ -1,4 +1,4 @@ -# Act 1: The Problem {.section} +# Act 1: Problem Statement {.section .focus-section} --- @@ -201,7 +201,7 @@ Without observable reality, meetings and politics become a substitute for knowle

Claims must be justified, located, challenged, and understood.

+
-
+
System architecture Observable reality

Metrics, events, tests, monitoring, and feedback make claims decidable.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd index 25ca3a5..d2eac17 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd @@ -1,4 +1,6 @@ -# Act 2: Outcomes and Mechanics {.section} +# Act 2: Communication Artifacts {.section .learning-section} + +

How shared meaning becomes visible, transferable, and actionable.

--- @@ -43,7 +45,7 @@ Architecture localizes change, risk, and understanding as the organization grows
->
Desired Outcome
->
-
Mechanic
+
Mechanic
->
Contextual Decision
->
@@ -138,7 +140,7 @@ Why, how, and what become a stable reference for strategic and product conversat Visible as shared orientation.
-
+
Strategy Strategy Topic + KPI Tree Strategy replaces roadmap-only steering. KPI trees make business intent inspectable in ProtoPortfolio. @@ -152,7 +154,7 @@ A hypothesis belongs to a strategy topic and states what should become measurabl Visible as strategic assumption.
-
+
Experiment Measured System Change An experiment tries to prove a hypothesis by changing or replacing part of the current system and expecting metric movement. diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd index e21c56b..aa5ad42 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd @@ -1,44 +1,348 @@ -# Act 3: Protopipe {.section} +# Act 3: Enforcing Tools {.section .focus-section} + +

How Protopipe keeps shared artifacts present, executable, and open to validation.

+ +--- + +## 14. Purpose and Culture at Runtime + +

Purpose only matters when it is present at the moment a decision becomes work.

+ +
+
+
+Write-only culture +Intent is communicated once, then disappears from the work. +
+Write-only culture BPMN process with separate Leadership and Employee processes +
+ +
+
+Noesis culture runtime +Canonical context travels with the decision and learns from its outcome. +
+Noesis culture runtime BPMN process across Leadership, Noesis, and Employee lanes +
+
+ + + +--- + +## 15. Culture at the Point of Work + +

Noesis turns canonical culture into concrete guidance inside everyday artifacts.

+ +
+
+Customer communication +Does this response express our purpose and shared language? +The agent reviews wording, commitments, and claims against canonical culture. +
+
+Ticket / Definition of Done +Is the work measurable, observable, and connected to a hypothesis? +The agent proposes missing acceptance criteria, feature scenarios, and learning signals. +
+
+ +
+Remember +Culture becomes operational when shared intent is present in every decision, review, and learning loop. +
+ +--- + +## 16. Noesis: Start Small, Scale the Governance + +

Noesis is a canonical reasoning space, not a platform commitment. Start with files; add automation when coordination demands it.

+ +
+
+Low tech / low commitment +Structured Markdown in Git +
    +
  • Purpose, language, culture, principles, and constraints as readable files
  • +
  • Folders, templates, front matter, and links provide structure
  • +
  • Pull requests make canonical changes explicit and reviewable
  • +
  • Humans and local AI use the same repository as context
  • +
+
Markdown + Git + search + optional local LLM
+
+ +
+Enterprise runtime +MCP + Continuous Knowledge Curation +
    +
  • MCP exposes approved context to agents and enterprise tools
  • +
  • Policies control scope, access, provenance, and versioning
  • +
  • AutoAudit detects stale, duplicate, orphaned, or contradictory content
  • +
  • Curation proposes merges, links, taxonomy changes, and structural cleanup
  • +
+
Planned as part of the OSS Protopipe package.
+
Knowledge graph + MCP + policy + AutoAudit
+
+
+ +
+Automation proposes. Accountable humans approve changes to canonical knowledge. +
--- -## 14. Protopipe System Map +## 17. Protopipe Cockpit: Strategy Meets Reality + +

The cockpit makes strategy, investment, evidence, and friction visible in one C-level decision surface.

+ +
+
+01 · Overall Health +Is the portfolio moving in the intended direction? +
+72 +
Momentum +12%
Healthy strategies 4 / 5
Capacity 100%
+
+
+ +
+02 · Reality Signal Matrix +Where does reality support or contradict strategy? +
+Internal + controllable +Internal + uncontrollable +External + controllable +External + uncontrollable +
+
+ +
+03 · Strategy Tiles +Which strategies require attention, budget, or intervention? +
+Enterprise Expansion +Profitability First +Market Resilience +
+
+ +
+04 · Strategy Detail +What must an executive know before deciding? +
+Budget and capacity +Primary friction +Largest open assumption +Most critical risk +
+
+
+ +
+The cockpit does not report activity. It forces strategy to remain connected to observable reality. +
+ +--- + +## 18. Cockpit in Action {data-state="cockpit-demo-slide"} + +

From the operating model to an executable executive decision surface.

+ +
+ +
+ +--- + +## 19. Proto-Portfolio: Strategy-Linked Experimentation ::: {.diagram-slot} -Diagram target: component topology of Noesis, ProtoPortfolio, Composer, and -Storybook around the shared reality loop. + Proto Portfolio connects strategy to experiments by making strategic hypotheses explicit, measurable, and continuously observable. ::: --- -## 15. Noesis: Canonical Reasoning Space +## 20. ProtoCatalog: One Behavior Model -::: {.toc-only} -AI-enforced synchronization, single source of truth, shared organizational -memory, and decision traceability. -::: +

Requirements, specifications, implementation, and tests drift when each role maintains a different model of the product.

+ +
+
+
+Product +Acceptance Criteria +What we expect +
+
+Analysis +Specification +What we mean +
+
+Development +Implementation +What the system does +
+
+Quality +Test Suite +What is verified +
+
+ + + +
+ProtoCatalog +Feature Files + Scenarios +

One versioned behavior model, written in domain language and executable through Cucumber.

+
+Readable by business +Executable by development +Verified by evidence +Traceable to the experiment +
+
+
+ +
+BDD is the communication protocol. The catalog is the living product knowledge it creates. +
+ +

Based on the Noesis feature model and From spec to BDD, Michael Küsters and Finies Fenske, 2018.

--- -## 16. ProtoPortfolio: Augmented Strategy +## 21. Progress Becomes Observable -::: {.toc-only} -KPI Tree, hypothesis-driven strategy, and the business-product-architecture -translation layer. -::: +

A feature branch is visible in the catalog while it belongs to an experiment and its strategic hypothesis.

+ +
+
+
+Strategy +Increase checkout completion +
+
+
+Hypothesis +Clear payment feedback reduces abandonment +
+
+
+Experiment +EXP-024 · Payment confirmation +
+
+ +
+
+
+Feature branch +experiment/EXP-024-payment-feedback +
+5 / 8 steps green +
+ +
+
+Feature +Customer receives reliable payment confirmation +
+
+Scenario · Successful card payment +Given an active basket +When payment is accepted +Then the order is placed +And confirmation is shown +
+
+Scenario · Delayed provider response +Given payment remains pending +When the provider times out +Then retry guidance is shown +And the event remains observable +
+
+
+
+ +
+Green +Not successful +Not implemented +A feature is green when all of its steps are verified. +
--- -## 17. Composer: Architecture as an Experiment System +## 22. Composer: Architecture as an Experiment System -::: {.toc-only} -RFAs, strangler transformations, search-and-replace migrations, and reversible -architectural learning. -::: +

Composer creates an experimental boundary inside the existing system before a migration program exists.

+ +
+
+01 · Install and mark +Composer becomes the legacy proxy +
+<!-- protopipe:slot checkout-cta --> + <button>Buy now</button> +<!-- /protopipe:slot --> +
+

Composer proxies the unchanged monolith response. HTML markers identify the first replaceable surface without a page rewrite.

+Planned bootstrap adapter +
+ +
+ +
+02 · Replace with artifacts +Route variants, not conditions +
+ControlLegacy fragment +VariantRFA from feature branch +
+

Composer assigns consenting users and replaces only the expected RFA within the experiment scope.

+Artifact-based experiment +
+ +
+ +
+03 · Observe and decide +Make impact and safety visible +
+Experiment analytics +Operational telemetry +Runtime context +Deterministic rendering +
+

Business effects and technical reliability remain separate, observable, and attributable to the variant.

+Evidence returns to the experiment +
+
+ +
+Install Composer as legacy proxy + +Mark one legacy surface + +Deploy one RFA + +0 → 1 experiment in < 1 week — potentially one day +
+ +

Derived from the Composer BDD feature suite: routing, partial rendering, scoped RFA overrides, assignment, consent, runtime context, analytics separation, and operational telemetry.

--- -## 18. Storybook: UX Communication Layer +## 23. Storybook: UX Communication Layer ::: {.toc-only} Marketing, prototype generation, contracts, and future WYSIWYG assembly. @@ -46,11 +350,75 @@ Marketing, prototype generation, contracts, and future WYSIWYG assembly. --- -## 19. Component Responsibilities +## 24. Component Responsibilities | Component | Primary Job | Failure It Prevents | |---|---|---| | Noesis | Keep shared meaning stable | Semantic drift | +| Cockpit | Keep strategy connected to reality | Strategy detachment | | ProtoPortfolio | Connect strategy to measurable hypotheses | Activity steering | +| ProtoCatalog | Make expected behavior explicit and testable | Invisible assumptions | | Composer | Make architecture experimentally changeable | Big upfront commitments | | Storybook | Make experience inspectable and negotiable | Invisible UX assumptions | + +--- + +## 25. How Shared Artifacts Stay Alive + +

The artifact defines shared meaning. The tooling keeps it connected, executable, and open to validation.

+ +
+
+Purpose +Golden Circle +The canonical why, how, and what remain available as organizational context. +
+Enforced by +Noesis +
+
+ +
+Strategy +Strategy Topic + KPI Tree +Strategic intent remains connected to measurable outcomes and portfolio governance. +
+Enforced by +Protopipe Cockpit +
+
+ +
+Hypothesis -> Experiment +Strategy-linked Experiment +Every experiment names the hypothesis, expected metric movement, and accountable owner. +
+Enforced by +ProtoPortfolio +
+
+ +
+Experiment -> Development +Feature Files + Scenarios +Expected behavior becomes an executable contract and progress becomes visible as remaining steps. +
+Enforced by +ProtoCatalog +
+
+ +
+Observation -> Learning +Evidence + Decision Record +Runtime signals validate the expected effect and update canonical organizational knowledge. +
+Enforced by +Composer +
+
+
+ +
+Shared reality survives daily operations because every artifact has a system that keeps it current and testable. +
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd similarity index 74% rename from dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd rename to dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd index b690849..996e072 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-consulting-entry.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd @@ -1,8 +1,8 @@ -# Act 5: Consulting Entry Strategy {.section} +# Act 4: Consulting Entry {.section .focus-section} --- -## 25. Bottom-Up Entry +## 26. Bottom-Up Entry ::: {.toc-only} Start with Noesis, a local LLM, a team culture database, and organizational @@ -11,7 +11,7 @@ memory. --- -## 26. Why Local AI Matters +## 27. Why Local AI Matters ::: {.toc-only} Explain confidentiality, sovereignty, trust, latency, and client-specific @@ -20,7 +20,7 @@ context grounding. --- -## 27. Why OSS Matters +## 28. Why OSS Matters ::: {.toc-only} Explain auditability, adoption, extension, client trust, and ecosystem leverage. @@ -28,15 +28,15 @@ Explain auditability, adoption, extension, client trust, and ecosystem leverage. --- -## 28. Expansion Path +## 29. Expansion Path -::: {.flow} +::: {.flow .focus-flow} Team Memory -> Development -> Architecture -> Strategy -> KPI Systems -> Observability ::: --- -## 29. Consulting Motion +## 30. Consulting Motion ::: {.toc-only} Protopipe as a transformation entry point: low-risk start, visible value, diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd similarity index 55% rename from dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd rename to dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd index 02e8436..fed0d9d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-integrated-loop.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd @@ -1,16 +1,16 @@ -# Act 4: The Integrated Loop {.section} +# Act 5: Architecture and Observability {.section .learning-section} --- -## 20. From Purpose to Knowledge +## 31. Architecture Carries the Experiment -::: {.flow} -Golden Circle -> Strategy -> Problem -> Discussion -> Hypothesis -> Prototype -> Experiment -> Implementation -> Monitoring -> Observation -> Decision -> Knowledge +::: {.flow .learning-flow} +Hypothesis -> Experiment -> Architecture -> Development -> Observation -> Decision -> Learning ::: --- -## 21. Experiments Beat Large Upfront Decisions +## 32. Experiments Beat Large Upfront Decisions ::: {.toc-only} Connect risk-first exploration, reversibility, and feedback over opinion. @@ -18,7 +18,7 @@ Connect risk-first exploration, reversibility, and feedback over opinion. --- -## 22. Architecture and Development Become Observable +## 33. Development Becomes Observable ::: {.toc-only} Show architecture as dependency management, invariant placement, and blast @@ -27,7 +27,7 @@ radius reduction, connected to implementation feedback and runtime observation. --- -## 23. Monitoring Becomes Causal, Not Decorative +## 34. Monitoring Becomes Causal, Not Decorative ::: {.toc-only} Tie KPI trees, telemetry, observations, hypotheses, and experiments so metrics @@ -36,7 +36,7 @@ can explain decisions. --- -## 24. Decisions Become Traceable +## 35. Decisions Become Traceable ::: {.toc-only} Show how evidence, trade-offs, and canonical references survive beyond meetings. diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index 075211d..dbed2d0 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -1,8 +1,8 @@ -# Act 6: Vision {.section} +# Act 6: Vision {.section .learning-section} --- -## 30. Shared Organizational Reality +## 36. Shared Organizational Reality ::: {.toc-only} Protopipe reduces political decisions by making assumptions, evidence, and @@ -11,7 +11,7 @@ memory visible. --- -## 31. Faster Experimentation +## 37. Faster Experimentation ::: {.toc-only} Organizations become faster because learning loops become explicit and @@ -20,7 +20,7 @@ supported from strategic intent to runtime observation. --- -## 32. Fewer Political Decisions +## 38. Fewer Political Decisions ::: {.toc-only} Debate remains valuable, but ungrounded opinion loses veto power. @@ -28,7 +28,7 @@ Debate remains valuable, but ungrounded opinion loses veto power. --- -## 33. Evidence-Driven Enterprise Change +## 39. Evidence-Driven Enterprise Change ::: {.toc-only} End with the strategic promise: better decisions, faster, with less waste and diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd index 3c6eb13..e4f31a3 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/90-appendix.qmd @@ -1,4 +1,4 @@ -# Appendix {.section} +# Appendix {.section .neutral-section} --- @@ -21,4 +21,3 @@ Reserve appendix space for deeper theory references, component examples, consulting packages, case studies, and technical implementation notes. ::: - diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd index acd680b..7ec4885 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -11,17 +11,15 @@ format: data-background-position: center --- -{{< include chapters/00-title.qmd >}} - {{< include chapters/01-act-problem.qmd >}} {{< include chapters/02-act-gapless-org-learning.qmd >}} {{< include chapters/03-act-protopipe.qmd >}} -{{< include chapters/04-act-integrated-loop.qmd >}} +{{< include chapters/04-act-consulting-entry.qmd >}} -{{< include chapters/05-act-consulting-entry.qmd >}} +{{< include chapters/05-act-architecture.qmd >}} {{< include chapters/06-act-vision.qmd >}} diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/export-pdf.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/export-pdf.sh new file mode 100755 index 0000000..ebb1329 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/export-pdf.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash +set -euo pipefail + +project_root="$(cd "$(dirname "$0")/.." && pwd)" +cd "$project_root" + +export XDG_CACHE_HOME="${XDG_CACHE_HOME:-/tmp/quarto-cache}" + +./scripts/render.sh + +browser="${BROWSER_BIN:-}" +if [[ -z "$browser" ]]; then + for candidate in chromium-browser chromium google-chrome google-chrome-stable; do + if command -v "$candidate" >/dev/null 2>&1; then + browser="$(command -v "$candidate")" + break + fi + done +fi + +if [[ -z "$browser" ]]; then + echo "No Chromium-compatible browser found." >&2 + echo "Set BROWSER_BIN to the browser executable." >&2 + exit 1 +fi + +output="${1:-$project_root/_site/protopipe-enterprise-pitch.pdf}" +mkdir -p "$(dirname "$output")" + +presentation_url="file://$project_root/_site/presentation/index.html?print-pdf" + +"$browser" \ + --headless \ + --no-sandbox \ + --disable-gpu \ + --disable-dev-shm-usage \ + --no-pdf-header-footer \ + --print-to-pdf="$output" \ + --run-all-compositor-stages-before-draw \ + --virtual-time-budget=10000 \ + "$presentation_url" + +echo "PDF created: $output" diff --git a/dist/presentations/protopipe-enterprise-pitch/scripts/sync-mockups.sh b/dist/presentations/protopipe-enterprise-pitch/scripts/sync-mockups.sh new file mode 100755 index 0000000..770f4ca --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/scripts/sync-mockups.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash +set -euo pipefail + +project_root="$(cd "$(dirname "$0")/.." && pwd)" +source_file="$project_root/../../mockups/ProtopipeCockpit.html" +target_dir="$project_root/assets/mockups" +target_file="$target_dir/ProtopipeCockpit.html" + +mkdir -p "$target_dir" + +sed \ + 's|https://raw.githubusercontent.com/protopipe/noesis/refs/heads/main/doc/09_identity/assets/logo/out/svg/logo-color-small.svg|../logos/protopipe-logo-color-full.svg|' \ + "$source_file" > "$target_file" diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index d7522fb..1a8e38a 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -3,8 +3,8 @@ $backgroundColor: #081a17; $mainColor: #f7f7f7; $headingColor: #ffffff; -$linkColor: #f7436e; -$selectionBackgroundColor: #f7436e; +$linkColor: #41d6c3; +$selectionBackgroundColor: #41d6c3; $mainFont: "Helvetica Neue", "Inter", "Segoe UI", system-ui, sans-serif; $headingFont: "Helvetica Neue", "Inter", "Segoe UI", system-ui, sans-serif; @@ -28,13 +28,13 @@ $mainFontSize: 34px; --pp-dim: rgba(255, 255, 255, 0.52); --pp-accent: #f7436e; --pp-accent-2: #41d6c3; - --pp-warning: #f6c56f; + --pp-focus: #f7436e; + --pp-learning: #f6c56f; + --pp-success: #4dde9b; } .reveal { - background: - linear-gradient(135deg, rgba(247, 67, 110, 0.08), transparent 34%), - linear-gradient(180deg, var(--pp-bg), var(--pp-bg-deep)); + background: linear-gradient(180deg, var(--pp-bg), var(--pp-bg-deep)); color: var(--pp-text); } @@ -67,7 +67,28 @@ $mainFontSize: 34px; } .reveal .section { - color: var(--pp-accent); + color: var(--pp-text); +} + +.reveal .focus-section { + color: var(--pp-focus); +} + +.reveal .learning-section { + color: var(--pp-learning); +} + +.reveal .neutral-section { + color: var(--pp-text); +} + +.section-subtitle { + max-width: 34ch; + margin-top: 0.8rem; + color: var(--pp-muted); + font-size: 0.78em; + font-weight: 600; + line-height: 1.25; } .reveal p, @@ -91,7 +112,7 @@ $mainFontSize: 34px; .kicker-source a { color: var(--pp-muted); text-decoration: underline; - text-decoration-color: rgba(247, 67, 110, 0.7); + text-decoration-color: rgba(65, 214, 195, 0.7); text-underline-offset: 0.14em; } @@ -120,7 +141,7 @@ $mainFontSize: 34px; .problem, .wound-card { max-width: 980px; - border-left: 4px solid var(--pp-accent); + border-left: 4px solid var(--pp-line); padding: 0.8rem 1rem; color: var(--pp-muted); background: rgba(255, 255, 255, 0.04); @@ -131,12 +152,22 @@ $mainFontSize: 34px; } .flow { - border-color: var(--pp-warning); + border-color: var(--pp-line); color: var(--pp-text); font-family: $codeFont; font-size: 0.88em; } +.flow.learning-flow { + border-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.055); +} + +.flow.focus-flow { + border-color: var(--pp-focus); + background: rgba(247, 67, 110, 0.055); +} + .circle-stack { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -166,7 +197,7 @@ $mainFontSize: 34px; } .circle-item.how { - border-top-color: var(--pp-warning); + border-top-color: var(--pp-learning); } .circle-item.what { @@ -474,17 +505,12 @@ $mainFontSize: 34px; text-align: center; } -.loop-step.critical { +.loop-step.critical, .loop-step.low-reward { border-color: rgba(247, 67, 110, 0.7); color: var(--pp-text); background: rgba(247, 67, 110, 0.08); } -.loop-step.low-reward { - border-color: rgba(246, 197, 111, 0.62); - color: var(--pp-text); - background: rgba(246, 197, 111, 0.06); -} .loop-arrow { color: var(--pp-accent); @@ -506,9 +532,13 @@ $mainFontSize: 34px; background: rgba(255, 255, 255, 0.045); } -.deliberation-block.critical { - border-left-color: var(--pp-accent); - background: rgba(247, 67, 110, 0.07); +.deliberation-block.learning { + border-left-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.07); +} + +.deliberation-block.learning span { + color: var(--pp-learning); } .deliberation-block span { @@ -538,7 +568,7 @@ $mainFontSize: 34px; display: flex; align-items: center; justify-content: center; - color: var(--pp-accent); + color: var(--pp-muted); font-size: 0.72em; font-weight: 800; } @@ -664,10 +694,10 @@ $mainFontSize: 34px; .outcome-card { min-height: 250px; border: 1px solid var(--pp-line); - border-top: 4px solid var(--pp-accent); + border-top: 4px solid var(--pp-learning); padding: 0.85rem; color: var(--pp-muted); - background: rgba(255, 255, 255, 0.04); + background: rgba(246, 197, 111, 0.055); font-size: 0.54em; line-height: 1.22; } @@ -675,7 +705,7 @@ $mainFontSize: 34px; .outcome-card span { display: block; margin-bottom: 0.65rem; - color: var(--pp-dim); + color: var(--pp-learning); font-size: 0.84em; font-weight: 800; text-transform: uppercase; @@ -718,9 +748,9 @@ $mainFontSize: 34px; text-align: center; } -.mechanic-step.critical { - border-color: rgba(247, 67, 110, 0.75); - background: rgba(247, 67, 110, 0.09); +.mechanic-step.learning { + border-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.09); } .mechanic-arrow { @@ -742,6 +772,11 @@ $mainFontSize: 34px; font-weight: 750; } +.shared-reality-punchline { + border-left-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.07); +} + .mechanic-type-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -753,10 +788,10 @@ $mainFontSize: 34px; .mechanic-type-card { min-height: 190px; border: 1px solid var(--pp-line); - border-top: 4px solid var(--pp-accent); + border-top: 4px solid var(--pp-learning); padding: 0.75rem 0.85rem; color: var(--pp-muted); - background: rgba(255, 255, 255, 0.035); + background: rgba(246, 197, 111, 0.045); font-size: 0.48em; line-height: 1.18; } @@ -764,7 +799,7 @@ $mainFontSize: 34px; .mechanic-type-card span { display: block; margin-bottom: 0.65rem; - color: var(--pp-dim); + color: var(--pp-learning); font-size: 0.82em; font-weight: 800; text-transform: uppercase; @@ -788,10 +823,10 @@ $mainFontSize: 34px; .mechanic-card { min-height: 230px; - border-left: 4px solid var(--pp-accent); + border-left: 4px solid var(--pp-learning); padding: 0.85rem; color: var(--pp-muted); - background: rgba(255, 255, 255, 0.04); + background: rgba(246, 197, 111, 0.055); font-size: 0.52em; line-height: 1.2; } @@ -840,210 +875,1201 @@ $mainFontSize: 34px; max-height: 475px; } -.artifact-flow { +.culture-runtime { display: grid; - grid-template-columns: repeat(5, minmax(0, 1fr)); + grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 0.65rem; - margin-top: 1.2rem; - max-width: 1320px; + margin-top: 0.62rem; + max-width: 1280px; } -.artifact-card { - min-height: 265px; +.culture-bpmn-block { + display: grid; + grid-template-columns: 250px minmax(0, 1fr); + align-items: center; + gap: 0.65rem; + min-height: 215px; border: 1px solid var(--pp-line); - border-top: 4px solid rgba(246, 197, 111, 0.86); - border-radius: 8px; - padding: 0.72rem; - color: var(--pp-muted); - background: rgba(255, 255, 255, 0.035); - font-size: 0.46em; - line-height: 1.18; + border-left: 4px solid var(--pp-focus); + padding: 0.7rem 0.8rem; + background: rgba(247, 67, 110, 0.045); } -.artifact-card span { +.culture-bpmn-heading { + padding-left: 0; +} + +.culture-bpmn-block.write-only .culture-bpmn-heading { + border-left: 0; +} + +.culture-bpmn-block.runtime { + border-left-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.055); +} + +.culture-bpmn-heading span, +.culture-example span, +.culture-punchline span { display: block; - margin-bottom: 0.55rem; - color: #ffe08d; - font-size: 0.82em; + margin-bottom: 0.24rem; + color: var(--pp-dim); + font-size: 0.72em; font-weight: 850; text-transform: uppercase; } -.artifact-card strong { +.culture-bpmn-block.write-only .culture-bpmn-heading span, +.culture-example span { + color: var(--pp-focus); +} + +.culture-bpmn-block.runtime .culture-bpmn-heading span, +.culture-punchline span { + color: var(--pp-learning); +} + +.culture-bpmn-heading strong, +.culture-example strong { display: block; - margin-bottom: 0.7rem; color: var(--pp-text); - font-size: 1.12em; - line-height: 1.08; + font-size: 0.48em; + line-height: 1.12; } -.artifact-card em { +.culture-bpmn-block img { display: block; - margin-top: 0.7rem; - color: var(--pp-dim); - font-style: italic; - font-weight: 650; + width: 100%; + max-height: 145px; + margin: 0; } -.artifact-punchline { - max-width: 1180px; - margin-top: 0.9rem; - border-left: 4px solid var(--pp-accent); +.culture-examples { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.85rem; + margin-top: 1.4rem; +} + +.culture-example { + min-height: 290px; + border: 1px solid var(--pp-line); + border-top: 3px solid rgba(247, 67, 110, 0.78); + border-radius: 8px; + padding: 1rem 1.1rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.58em; + line-height: 1.22; +} + +.culture-punchline { + max-width: none; + margin-top: 1rem; + border-left: 4px solid var(--pp-learning); padding: 0.7rem 0.9rem; color: var(--pp-text); - background: rgba(247, 67, 110, 0.07); + background: rgba(246, 197, 111, 0.07); font-size: 0.58em; - font-weight: 750; + font-weight: 760; } -.responsibility-bpm { - display: grid; - gap: 0.9rem; - margin-top: 1.3rem; - max-width: 1240px; +.culture-punchline span { + margin-bottom: 0.12rem; + font-size: 0.68em; } -.responsibility-lane { +.noesis-levels { display: grid; - grid-template-columns: 210px 1fr; - min-height: 134px; - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 14px; - overflow: hidden; - background: - linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035) 28%, rgba(8, 26, 23, 0.82)), - rgba(255, 255, 255, 0.03); + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.85rem; + margin-top: 1.15rem; + max-width: 1280px; } -.responsibility-lane.control { - background: - linear-gradient(90deg, rgba(247, 67, 110, 0.7), rgba(247, 67, 110, 0.24) 32%, rgba(8, 26, 23, 0.86)), - rgba(247, 67, 110, 0.06); +.noesis-level { + display: flex; + flex-direction: column; + min-height: 390px; + border: 1px solid var(--pp-line); + border-top: 4px solid rgba(255, 255, 255, 0.35); + padding: 0.9rem 1rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.49em; + line-height: 1.2; } -.responsibility-lane-label { - display: flex; - align-items: center; - padding: 1rem; +.noesis-level.enterprise { + border-top-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.055); +} + +.noesis-level > span { + display: block; + margin-bottom: 0.45rem; + color: var(--pp-dim); + font-size: 0.78em; + font-weight: 850; + text-transform: uppercase; +} + +.noesis-level.enterprise > span { + color: var(--pp-learning); +} + +.noesis-level strong { + display: block; + margin-bottom: 0.65rem; color: var(--pp-text); - font-size: 0.58em; - font-weight: 800; - line-height: 1.12; + font-size: 1.45em; + line-height: 1.08; } -.responsibility-flow { - display: grid; - grid-template-columns: 1fr 40px 1fr 40px 1fr; - align-items: center; - gap: 0.6rem; - padding: 1rem 1.1rem 1rem 0.3rem; +.noesis-level ul { + margin: 0; + padding-left: 1.05rem; } -.responsibility-lane.control .responsibility-flow { - grid-template-columns: repeat(3, minmax(0, 1fr)); +.noesis-level li { + margin-bottom: 0.45rem; } -.responsibility-token { - min-height: 68px; - display: flex; - align-items: center; - justify-content: center; - border: 1px solid rgba(255, 255, 255, 0.66); - border-radius: 9px; - padding: 0.65rem; +.noesis-oss-note { + margin-top: 0.45rem; + color: var(--pp-learning); + font-size: 0.88em; + font-weight: 800; +} + +.noesis-stack { + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.65rem; color: var(--pp-text); - background: rgba(255, 255, 255, 0.055); - font-size: 0.58em; + font-family: $codeFont; + font-size: 0.92em; font-weight: 700; - line-height: 1.12; - text-align: center; } -.responsibility-token.blocked { - border-color: rgba(247, 67, 110, 0.82); - background: rgba(247, 67, 110, 0.12); +.noesis-level.enterprise .noesis-stack { + border-top-color: rgba(246, 197, 111, 0.45); + color: var(--pp-learning); } -.responsibility-arrow { - color: var(--pp-accent); - font-family: $codeFont; - font-size: 0.82em; - text-align: center; +.noesis-governance { + max-width: 1280px; + margin-top: 0.8rem; + border-left: 4px solid var(--pp-learning); + padding: 0.62rem 0.85rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.07); + font-size: 0.54em; + font-weight: 760; } -.responsibility-effects { +.cockpit-map { display: grid; - grid-template-columns: repeat(3, minmax(0, 1fr)); - gap: 0.8rem; + grid-template-columns: 0.9fr 1.35fr; + grid-template-rows: 1fr 0.82fr; + gap: 0.75rem; margin-top: 1rem; - max-width: 1240px; + max-width: 1300px; } -.responsibility-effects span { - min-height: 82px; - display: flex; - align-items: center; +.cockpit-panel { + min-height: 180px; border: 1px solid var(--pp-line); - border-left: 4px solid var(--pp-accent); - padding: 0.65rem 0.75rem; + border-radius: 8px; + padding: 0.72rem 0.82rem; color: var(--pp-muted); background: rgba(255, 255, 255, 0.035); - font-size: 0.5em; - line-height: 1.22; -} - -.problem-triad { - display: grid; - grid-template-columns: repeat(3, minmax(0, 1fr)); - gap: 1rem; - margin-top: 1.3rem; + font-size: 0.43em; + line-height: 1.14; } -.problem { - min-height: 220px; - border-color: var(--pp-accent); - font-size: 0.72em; +.cockpit-panel > span { + display: block; + margin-bottom: 0.38rem; + color: var(--pp-dim); + font-size: 0.78em; + font-weight: 850; + text-transform: uppercase; } -.problem strong { +.cockpit-panel > strong { display: block; - margin-bottom: 0.9rem; + margin-bottom: 0.65rem; color: var(--pp-text); - font-size: 1.12em; + font-size: 1.08em; line-height: 1.08; } -.golden-circle table { - margin-top: 1.2rem; - font-size: 0.62em; +.cockpit-panel.health, +.cockpit-panel.signals { + border-top: 3px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.045); } -.golden-circle th { - color: var(--pp-accent); - text-transform: uppercase; +.cockpit-panel.health > span, +.cockpit-panel.signals > span { + color: var(--pp-learning); } -.golden-visual { - display: grid; - grid-template-columns: minmax(460px, 0.86fr) 1fr; - align-items: center; - gap: 2rem; - margin-top: 1rem; +.cockpit-panel.strategies, +.cockpit-panel.detail { + border-top: 3px solid var(--pp-focus); + background: rgba(247, 67, 110, 0.04); } -.golden-rings { - position: relative; - width: min(560px, 42vw); - aspect-ratio: 1; - border-radius: 50%; - background: transparent; +.cockpit-panel.strategies > span, +.cockpit-panel.detail > span { + color: var(--pp-focus); } -.golden-ring { - position: absolute; - inset: 0; +.cockpit-health-score { + display: grid; + grid-template-columns: 92px 1fr; + align-items: center; + gap: 0.7rem; +} + +.cockpit-health-score > b { display: flex; - flex-direction: column; + align-items: center; + justify-content: center; + width: 82px; + aspect-ratio: 1; + border: 8px solid var(--pp-focus); + border-radius: 50%; + color: var(--pp-text); + background: rgba(8, 26, 23, 0.7); + font-size: 2.2em; +} + +.cockpit-health-score div { + color: var(--pp-muted); + line-height: 1.5; +} + +.cockpit-health-score strong { + color: var(--pp-text); +} + +.cockpit-quadrants, +.cockpit-strategy-list, +.cockpit-detail-list { + display: grid; + gap: 0.42rem; +} + +.cockpit-quadrants > p, +.cockpit-strategy-list > p, +.cockpit-detail-list > p { + display: grid; + grid-column: 1 / -1; + width: 100%; + gap: 0.42rem; + margin: 0; +} + +.cockpit-quadrants { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.cockpit-quadrants > p { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.cockpit-quadrants i, +.cockpit-strategy-list i, +.cockpit-detail-list i { + display: flex; + align-items: center; + min-width: 0; + min-height: 42px; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.42rem 0.52rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.48); + font-style: normal; + font-weight: 700; + overflow-wrap: anywhere; +} + +.cockpit-quadrants i::before { + content: ""; + width: 7px; + aspect-ratio: 1; + margin-right: 0.38rem; + border-radius: 50%; + background: var(--pp-learning); +} + +.cockpit-strategy-list { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.cockpit-strategy-list > p { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.cockpit-strategy-list i { + border-color: rgba(247, 67, 110, 0.4); +} + +.cockpit-detail-list { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.cockpit-detail-list > p { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.cockpit-punchline { + max-width: 1180px; + margin-top: 0.8rem; + border-left: 4px solid var(--pp-focus); + padding: 0.65rem 0.85rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.065); + font-size: 0.56em; + font-weight: 760; +} + +.cockpit-demo-frame { + width: 100%; + height: 710px; + margin-top: 0.7rem; + overflow: hidden; + border: 1px solid rgba(246, 197, 111, 0.42); + border-radius: 8px; + background: var(--pp-bg); + box-shadow: 0 18px 55px rgba(0, 0, 0, 0.32); +} + +.cockpit-demo-frame iframe { + display: block; + width: 100%; + height: 100%; + border: 0; + background: var(--pp-bg); +} + +.cockpit-demo-slide .footer, +.cockpit-demo-slide .slide-number { + opacity: 0.32; +} + +.catalog-model { + display: grid; + grid-template-columns: minmax(0, 0.95fr) 70px minmax(0, 1.15fr); + align-items: center; + gap: 0.7rem; + max-width: 1320px; + margin-top: 1rem; +} + +.catalog-fragments { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.55rem; +} + +.catalog-fragment, +.catalog-contract { + border: 1px solid var(--pp-line); + border-radius: 8px; + background: rgba(255, 255, 255, 0.035); +} + +.catalog-fragment { + min-height: 115px; + padding: 0.65rem; +} + +.catalog-fragment > p, +.catalog-trace-node > p, +.catalog-branch-head p, +.catalog-feature-head > p, +.catalog-punchline > p { + margin: 0; +} + +.catalog-fragment span, +.catalog-contract > span, +.catalog-trace-node span, +.catalog-branch-head span, +.catalog-feature-head span { + display: block; + margin-bottom: 0.3rem; + color: var(--pp-dim); + font-size: 0.38em; + font-weight: 850; + text-transform: uppercase; +} + +.catalog-fragment strong { + display: block; + color: var(--pp-text); + font-size: 0.52em; + line-height: 1.08; +} + +.catalog-fragment small { + display: block; + margin-top: 0.45rem; + color: var(--pp-muted); + font-size: 0.38em; +} + +.catalog-convergence { + color: var(--pp-focus); + font-size: 1.5em; + font-weight: 800; + text-align: center; +} + +.catalog-contract { + min-height: 285px; + border-color: rgba(246, 197, 111, 0.5); + border-top: 4px solid var(--pp-learning); + padding: 0.85rem; + background: rgba(246, 197, 111, 0.055); +} + +.catalog-contract > span { + color: var(--pp-learning); +} + +.catalog-contract > strong { + display: block; + color: var(--pp-text); + font-size: 0.72em; + line-height: 1.08; +} + +.catalog-contract > p { + margin: 0.55rem 0 0; + color: var(--pp-muted); + font-size: 0.45em; + line-height: 1.22; +} + +.catalog-contract-properties { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.42rem; + margin-top: 0.7rem; +} + +.catalog-contract-properties > p { + display: contents; +} + +.catalog-contract-properties i { + min-width: 0; + border: 1px solid rgba(246, 197, 111, 0.28); + border-radius: 6px; + padding: 0.45rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.52); + font-size: 0.38em; + font-style: normal; + font-weight: 700; +} + +.catalog-punchline { + max-width: 1180px; + margin-top: 0.8rem; + border-left: 4px solid var(--pp-learning); + padding: 0.62rem 0.85rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.065); + font-size: 0.54em; + font-weight: 760; +} + +.source-note { + max-width: 1180px; + margin-top: 0.55rem !important; + color: var(--pp-dim); + font-size: 0.34em; + line-height: 1.2; +} + +.catalog-trace { + max-width: 1320px; + margin-top: 0.9rem; +} + +.catalog-trace-context { + display: grid; + grid-template-columns: 1fr 45px 1.15fr 45px 1fr; + align-items: center; + gap: 0.3rem; +} + +.catalog-trace-node { + min-height: 88px; + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.58rem 0.66rem; + background: rgba(255, 255, 255, 0.035); +} + +.catalog-trace-node.focus, +.catalog-trace-node.experiment { + border-color: rgba(247, 67, 110, 0.46); + background: rgba(247, 67, 110, 0.045); +} + +.catalog-trace-node.focus span, +.catalog-trace-node.experiment span { + color: var(--pp-focus); +} + +.catalog-trace-node strong { + display: block; + color: var(--pp-text); + font-size: 0.46em; + line-height: 1.12; +} + +.catalog-trace-arrow { + color: var(--pp-focus); + font-size: 0.8em; + font-weight: 850; + text-align: center; +} + +.catalog-branch { + position: relative; + margin-top: 0.65rem; + border: 1px solid rgba(246, 197, 111, 0.42); + border-radius: 8px; + padding: 0.7rem; + background: rgba(246, 197, 111, 0.035); +} + +.catalog-branch::before { + content: ""; + position: absolute; + top: -0.68rem; + left: 50%; + width: 1px; + height: 0.68rem; + background: var(--pp-focus); +} + +.catalog-branch-head { + display: flex; + align-items: flex-end; + justify-content: space-between; + gap: 1rem; + border-bottom: 1px solid var(--pp-line); + padding-bottom: 0.52rem; +} + +.catalog-branch-head strong { + color: var(--pp-text); + font-family: var(--r-code-font); + font-size: 0.44em; +} + +.catalog-branch-head b { + flex: 0 0 auto; + color: var(--pp-success); + font-size: 0.46em; +} + +.catalog-feature { + display: grid; + grid-template-columns: 0.8fr 1fr 1fr; + gap: 0.55rem; + margin-top: 0.6rem; +} + +.catalog-feature-head, +.catalog-scenario { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.55rem; + background: rgba(8, 26, 23, 0.55); +} + +.catalog-feature-head strong { + display: block; + color: var(--pp-text); + font-size: 0.48em; + line-height: 1.14; +} + +.catalog-scenario { + display: grid; + gap: 0.3rem; +} + +.catalog-scenario > p { + display: grid; + gap: 0.3rem; + margin: 0; +} + +.catalog-scenario > span { + color: var(--pp-text); + font-size: 0.4em; + font-weight: 800; +} + +.catalog-scenario > p > span { + color: var(--pp-text); + font-size: 0.4em; + font-weight: 800; +} + +.catalog-scenario i, +.catalog-status-legend i { + position: relative; + padding-left: 1.05rem; + color: var(--pp-muted); + font-size: 0.34em; + font-style: normal; + font-weight: 680; +} + +.catalog-scenario i::before, +.catalog-status-legend i::before { + content: ""; + position: absolute; + top: 50%; + left: 0; + width: 0.58rem; + aspect-ratio: 1; + border: 2px solid var(--pp-dim); + border-radius: 50%; + transform: translateY(-50%); +} + +.catalog-scenario i.green::before, +.catalog-status-legend i.green::before { + border-color: var(--pp-success); + background: var(--pp-success); +} + +.catalog-scenario i.green, +.catalog-status-legend i.green { + color: var(--pp-success); +} + +.catalog-scenario i.failed::before, +.catalog-status-legend i.failed::before { + border-color: var(--pp-focus); + background: var(--pp-focus); +} + +.catalog-scenario i.open::before, +.catalog-status-legend i.open::before { + border-color: var(--pp-dim); + background: transparent; +} + +.catalog-status-legend { + display: flex; + align-items: center; + gap: 1rem; + max-width: 1320px; + margin-top: 0.65rem; + border-top: 1px solid var(--pp-line); + padding-top: 0.55rem; +} + +.catalog-status-legend > p { + display: contents; +} + +.catalog-status-legend strong { + margin-left: auto; + color: var(--pp-success); + font-size: 0.42em; +} + +.composer-flow { + display: grid; + grid-template-columns: minmax(0, 1fr) 45px minmax(0, 1fr) 45px minmax(0, 1fr); + align-items: stretch; + gap: 0.38rem; + max-width: 1320px; + margin-top: 0.85rem; +} + +.composer-stage { + display: flex; + flex-direction: column; + min-width: 0; + min-height: 300px; + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.68rem; + background: rgba(255, 255, 255, 0.035); +} + +.composer-stage > span { + display: block; + margin-bottom: 0.38rem; + color: var(--pp-dim); + font-size: 0.34em; + font-weight: 850; + text-transform: uppercase; +} + +.composer-stage > strong { + display: block; + color: var(--pp-text); + font-size: 0.56em; + line-height: 1.08; +} + +.composer-stage > p { + margin: 0.55rem 0 0; + color: var(--pp-muted); + font-size: 0.37em; + line-height: 1.2; +} + +.composer-stage > em { + display: block; + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.45rem; + color: var(--pp-dim); + font-size: 0.34em; + font-style: italic; + font-weight: 700; +} + +.composer-marker { + display: grid; + gap: 0.2rem; + margin: 0.55rem 0 0; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.5rem; + background: rgba(8, 26, 23, 0.7); +} + +.composer-marker code { + display: block; + padding: 0; + color: var(--pp-text); + background: transparent; + font-size: 0.35em; + line-height: 1.3; + white-space: pre; +} + +.composer-stage > p:last-child { + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.45rem; +} + +.composer-stage > p:last-child > em { + color: var(--pp-dim); + font-size: 0.9em; + font-style: italic; + font-weight: 700; +} + +.composer-stage.experiment > p:last-child > em { + color: var(--pp-focus); +} + +.composer-stage.evidence > p:last-child > em { + color: var(--pp-learning); +} + +.composer-stage.experiment { + border-color: rgba(247, 67, 110, 0.48); + border-top: 4px solid var(--pp-focus); + background: rgba(247, 67, 110, 0.045); +} + +.composer-stage.experiment > span, +.composer-stage.experiment > em { + color: var(--pp-focus); +} + +.composer-stage.evidence { + border-color: rgba(246, 197, 111, 0.48); + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.045); +} + +.composer-stage.evidence > span, +.composer-stage.evidence > em { + color: var(--pp-learning); +} + +.composer-arrow { + display: flex; + align-items: center; + justify-content: center; + color: var(--pp-focus); + font-size: 0.85em; + font-weight: 850; +} + +.composer-variants, +.composer-signals { + display: grid; + gap: 0.38rem; + margin-top: 0.58rem; +} + +.composer-variants { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.composer-signals { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.composer-variants > p, +.composer-signals > p { + display: contents; +} + +.composer-variants i, +.composer-signals i { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.45rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.54); + font-size: 0.34em; + font-style: normal; + font-weight: 700; + line-height: 1.15; +} + +.composer-variants i b { + display: block; + margin-bottom: 0.28rem; + color: var(--pp-focus); + font-size: 0.9em; + text-transform: uppercase; +} + +.composer-zero-one { + display: grid; + grid-template-columns: 1fr auto 1.05fr auto 0.9fr auto 1.6fr; + align-items: center; + gap: 0.42rem; + max-width: 1320px; + margin-top: 0.65rem; + border: 1px solid rgba(246, 197, 111, 0.35); + border-radius: 8px; + padding: 0.58rem 0.7rem; + background: rgba(246, 197, 111, 0.045); +} + +.composer-zero-one > p { + display: contents; +} + +.composer-zero-one span { + color: var(--pp-muted); + font-size: 0.36em; + font-weight: 700; +} + +.composer-zero-one b { + color: var(--pp-focus); + font-size: 0.5em; +} + +.composer-zero-one strong { + color: var(--pp-learning); + font-size: 0.4em; + line-height: 1.15; +} + +.artifact-flow { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 0.65rem; + margin-top: 1.2rem; + max-width: 1320px; +} + +.artifact-card { + min-height: 265px; + border: 1px solid var(--pp-line); + border-top: 4px solid rgba(255, 255, 255, 0.2); + border-radius: 8px; + padding: 0.72rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.46em; + line-height: 1.18; +} + +.artifact-card span { + display: block; + margin-bottom: 0.55rem; + color: var(--pp-dim); + font-size: 0.82em; + font-weight: 850; + text-transform: uppercase; +} + +.artifact-card.focus, +.artifact-card.experiment { + border-top-color: var(--pp-focus); + background: rgba(247, 67, 110, 0.045); +} + +.artifact-card.focus span, +.artifact-card.experiment span { + color: var(--pp-focus); +} + +.artifact-card.learning { + border-top-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.055); +} + +.artifact-card.learning span { + color: var(--pp-learning); +} + +.artifact-card strong { + display: block; + margin-bottom: 0.7rem; + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.artifact-card em { + display: block; + margin-top: 0.7rem; + color: var(--pp-dim); + font-style: italic; + font-weight: 650; +} + +.artifact-flow.enforcement .artifact-card { + display: flex; + flex-direction: column; + min-height: 290px; +} + +.artifact-tool { + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.65rem; + color: var(--pp-text); + font-size: 1.03em; + font-weight: 780; + line-height: 1.14; +} + +.artifact-tool b { + display: block; + margin-bottom: 0.3rem; + color: var(--pp-dim); + font-size: 0.72em; + font-weight: 850; + text-transform: uppercase; +} + +.artifact-card.focus .artifact-tool, +.artifact-card.experiment .artifact-tool { + border-top-color: rgba(247, 67, 110, 0.38); +} + +.artifact-card.focus .artifact-tool b, +.artifact-card.experiment .artifact-tool b { + color: var(--pp-focus); +} + +.artifact-card.learning .artifact-tool { + border-top-color: rgba(246, 197, 111, 0.45); +} + +.artifact-card.learning .artifact-tool b { + color: var(--pp-learning); +} + +.artifact-punchline { + max-width: 1180px; + margin-top: 0.9rem; + border-left: 4px solid var(--pp-accent); + padding: 0.7rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.58em; + font-weight: 750; +} + +.artifact-punchline.learning { + border-left-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.07); +} + +.responsibility-bpm { + display: grid; + gap: 0.9rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.responsibility-lane { + display: grid; + grid-template-columns: 210px 1fr; + min-height: 134px; + border: 1px solid rgba(255, 255, 255, 0.08); + border-radius: 14px; + overflow: hidden; + background: + linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035) 28%, rgba(8, 26, 23, 0.82)), + rgba(255, 255, 255, 0.03); +} + +.responsibility-lane.control { + background: + linear-gradient(90deg, rgba(247, 67, 110, 0.7), rgba(247, 67, 110, 0.24) 32%, rgba(8, 26, 23, 0.86)), + rgba(247, 67, 110, 0.06); +} + +.responsibility-lane-label { + display: flex; + align-items: center; + padding: 1rem; + color: var(--pp-text); + font-size: 0.58em; + font-weight: 800; + line-height: 1.12; +} + +.responsibility-flow { + display: grid; + grid-template-columns: 1fr 40px 1fr 40px 1fr; + align-items: center; + gap: 0.6rem; + padding: 1rem 1.1rem 1rem 0.3rem; +} + +.responsibility-lane.control .responsibility-flow { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.responsibility-token { + min-height: 68px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.66); + border-radius: 9px; + padding: 0.65rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.055); + font-size: 0.58em; + font-weight: 700; + line-height: 1.12; + text-align: center; +} + +.responsibility-token.blocked { + border-color: rgba(247, 67, 110, 0.82); + background: rgba(247, 67, 110, 0.12); +} + +.responsibility-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.82em; + text-align: center; +} + +.responsibility-effects { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.8rem; + margin-top: 1rem; + max-width: 1240px; +} + +.responsibility-effects span { + min-height: 82px; + display: flex; + align-items: center; + border: 1px solid var(--pp-line); + border-left: 4px solid var(--pp-accent); + padding: 0.65rem 0.75rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.5em; + line-height: 1.22; +} + +.problem-triad { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 1rem; + margin-top: 1.3rem; +} + +.problem { + min-height: 220px; + border-color: var(--pp-accent); + font-size: 0.72em; +} + +.problem strong { + display: block; + margin-bottom: 0.9rem; + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.golden-circle table { + margin-top: 1.2rem; + font-size: 0.62em; +} + +.golden-circle th { + color: var(--pp-accent); + text-transform: uppercase; +} + +.golden-visual { + display: grid; + grid-template-columns: minmax(460px, 0.86fr) 1fr; + align-items: center; + gap: 2rem; + margin-top: 1rem; +} + +.golden-rings { + position: relative; + width: min(560px, 42vw); + aspect-ratio: 1; + border-radius: 50%; + background: transparent; +} + +.golden-ring { + position: absolute; + inset: 0; + display: flex; + flex-direction: column; align-items: center; justify-content: center; border-radius: 50%; @@ -1131,7 +2157,7 @@ $mainFontSize: 34px; .references a { color: var(--pp-muted); text-decoration: underline; - text-decoration-color: rgba(247, 67, 110, 0.7); + text-decoration-color: rgba(65, 214, 195, 0.7); text-underline-offset: 0.14em; } @@ -1153,6 +2179,14 @@ $mainFontSize: 34px; .mechanic-chain, .mechanic-type-grid, .mechanic-grid, + .culture-examples, + .noesis-levels, + .cockpit-map, + .catalog-model, + .catalog-trace-context, + .catalog-feature, + .composer-flow, + .composer-zero-one, .artifact-flow, .shared-reality-flow, .circle-stack, @@ -1172,6 +2206,9 @@ $mainFontSize: 34px; .outcome-card, .mechanic-type-card, .mechanic-card, + .culture-example, + .noesis-level, + .cockpit-panel, .artifact-card, .circle-item { min-height: 0; @@ -1198,6 +2235,36 @@ $mainFontSize: 34px; .mechanic-arrow { transform: rotate(90deg); } + + .culture-bpmn-block { + grid-template-columns: 1fr; + } + + .cockpit-quadrants, + .cockpit-quadrants > p, + .cockpit-strategy-list, + .cockpit-strategy-list > p, + .cockpit-detail-list, + .cockpit-detail-list > p { + grid-template-columns: 1fr; + } + + .catalog-convergence { + transform: rotate(90deg); + } + + .composer-arrow { + transform: rotate(90deg); + } + + .catalog-status-legend { + align-items: flex-start; + flex-direction: column; + } + + .catalog-status-legend strong { + margin-left: 0; + } } .reveal .footer { diff --git a/tooling/prompting/roles/salespartner.md b/tooling/prompting/roles/salespartner.md new file mode 100644 index 0000000..2cd99e4 --- /dev/null +++ b/tooling/prompting/roles/salespartner.md @@ -0,0 +1,223 @@ +# Role: Sales Partner (Tech-Savvy Agency Owner, OSS-Oriented) + +--- + +## 1. Cognitive Frame (Non-Negotiable) + +This role thinks in: + +* Sales pipelines +* Customer Acquisition Cost (CAC) +* Lifetime Value (LTV) +* Deal size / deal velocity +* Competitive positioning +* Differentiation vs. standard IT service providers + +Relevant reference domains: + +* IT consulting (project business, retainers, follow-up projects) +* BPM / workflow systems (e.g., Camunda) +* Integration architectures (APIs, middleware) +* Pre-sales / solution selling +* Business process digitization +* OSS strategies in enterprise environments +* Tech trends (cloud, AI, platform models) + +Signal: + +* Topics that are sellable +* Problems that trigger budget +* Approaches that enable larger deals +* Differentiation from competitors + +Noise: + +* Pure technical elegance without market relevance +* Internal optimizations without customer visibility +* Solutions without a clear entry point in sales +* Visions without short-term monetization perspective + +Abstractions are accepted only if they resolve to: + +* How does this get me into a customer conversation? +* How does this turn into a deal? + +--- + +## 2. Emotional Baseline (Mandatory) + +Target state: + +* Controlled curiosity +* Business pragmatism +* Mild skepticism toward non-monetizable ideas + +Expected tone: + +* Clear +* Neutral +* Business-oriented +* Not overly technical + +Avoid: + +* Hype (AI, OSS, platforms without substance) +* Vision-first argumentation +* Implicit expectations without business case +* Moral arguments (e.g., “OSS is better”) + +Emotional guideline: + +> “I could bring this to a client — but only if it holds.” + +--- + +## 3. Lived Reality Anchors (Mandatory) + +* A promising client conversation ends with: “This sounds interesting, but we don’t have budget for it right now.” + +* A project is sold, but no follow-up engagement emerges because no structural value was made visible + +* The client has delivery problems, but cannot articulate them clearly enough to justify an offer + +* Competitors offer similar services more standardized or cheaper + +* A technical topic is internally exciting but cannot be translated into a proposal + +* The client asks for “agility” but actually means faster delivery without structure + +* Pre-sales drags because no clear entry point can be defined + +* Existing clients run stable, but without upsell potential + +--- + +## 4. Who You Are Addressing + +This role is responsible for: + +* Revenue generation +* Pipeline creation and maintenance +* Closing deals +* Positioning the agency + +Cannot be delegated: + +* Building trust with clients +* Identifying sellable problems +* Translating technology into offers +* Deciding which topics to push in the market + +Failure looks like: + +* Full utilization without growth +* Projects without follow-up business +* Being interchangeable with other consultancies +* Margin pressure due to price competition + +Success is measured by: + +* Recurring business +* Increasing deal sizes +* Clear thematic positioning +* Access to strategic initiatives within clients + +Constraints: + +* Limited time for new topics +* Focus on short-term applicability +* Risk aversion toward hard-to-sell innovation + +--- + +## 5. Decision Translation Rules + +All content must be translated into: + +### 1. Entry point + +* What concrete situation triggers the conversation? +* Who owns the problem? + +### 2. Sellability + +* Can this be turned into an offer? +* Can it be explained in under 2 minutes? + +### 3. Business potential + +* One-off project or entry into long-term work? +* Scalable across multiple clients? + +### 4. Differentiation + +* Why can’t any other consultancy offer this? +* What is the visible difference? + +### 5. Risk + +* How hard is this to explain to a client? +* How dependent is it on non-established approaches? + +Not relevant: + +* Technical details without sales relevance +* Internal architecture decisions +* Optimizations without external impact + +--- + +## 6. Innovation / Technology Frame (Optional) + +Technology is understood as: + +* A positioning tool +* A lever to unlock new budgets +* A means to differentiate in sales + +Technology is not: + +* A goal in itself +* A selling point without a problem +* A long-term vision without a short-term entry point + +OSS is interpreted as: + +* Reduction of vendor lock-in +* Argument for flexibility and control +* Entry point for consulting instead of licensing + +--- + +## 7. Expected Output Shape + +Response structure: + +1. Short assessment (1–2 sentences) + + * Is this sellable or not? + +2. Sales translation + + * How would I phrase this to a client? + +3. Entry scenario + + * Concrete trigger in a client conversation + +4. Business potential + + * Deal type (one-off / transformation / retainer) + +5. Risks / obstacles + + * Why might this fail? + +6. Optional: Follow-up potential + + * What additional work can emerge? + +No long introductions. +No storytelling. +Directly decision-ready. + From 7e57ef4d536388f66620eabde0fac1d245f26335 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Tue, 9 Jun 2026 21:19:33 +0200 Subject: [PATCH 09/14] Color usage in noesis --- doc/09_identity/brand/brand-foundation.md | 20 +++++++++++++- .../guidelines/swimlane-visual-grammar.md | 9 +++++-- doc/09_identity/ui/ui-principles.md | 26 ++++++++++++++++++- 3 files changed, 51 insertions(+), 4 deletions(-) diff --git a/doc/09_identity/brand/brand-foundation.md b/doc/09_identity/brand/brand-foundation.md index c66f635..0406adc 100644 --- a/doc/09_identity/brand/brand-foundation.md +++ b/doc/09_identity/brand/brand-foundation.md @@ -23,11 +23,30 @@ Protopipe ist das Rückgrat moderner Unternehmensführung. Es verbindet strategi | Zweck | Farbe | Vorschau | |---------------|--------------|----------------------------------------| | **Primärfarbe** | `#f7436e` | ![#f7436e](https://placehold.co/15x15/f7436e/f7436e.png) | +| **Learning / Erfolg** | `#f6c56f` | ![#f6c56f](https://placehold.co/15x15/f6c56f/f6c56f.png) | | **Grundfläche** | `#081a17` | ![#081a17](https://placehold.co/15x15/081a17/081a17.png) | | **Dunkelgrau** | `#0b0c0e` | ![#0b0c0e](https://placehold.co/15x15/0b0c0e/0b0c0e.png) | | **Sektionen hell** | `#f7f7f7` | ![#f7f7f7](https://placehold.co/15x15/f7f7f7/f7f7f7.png) | | **Text / Weiß** | `#ffffff` | ![#ffffff](https://placehold.co/15x15/ffffff/ffffff.png) | +### Semantische Farbbedeutung + +Die Akzentfarben sind nicht austauschbare Dekoration. Sie tragen eine +wiederkehrende Bedeutung über Präsentationen, Diagramme und Produktoberflächen. + +| Farbe | Bedeutung | Typische Anwendung | +|---|---|---| +| **Protopipe Pink** (`#f7436e`) | Veränderung, Feedback, Spannung, Herausforderung und Problem | Probleme, Fokusthemen, Experimente, aktive Veränderung und kritische Rückkanäle | +| **Learning Gold** (`#f6c56f`) | Lernen, Evidenz, gewünschte Wirkung und sichtbarer Erfolg | Desired Outcomes, validierte Erkenntnisse, normative Mechanics, Learning Records und beobachtbare Realität | +| **Neutralfarben** | Kontext, Struktur und noch nicht bewertete Zustände | Purpose, Hypothesen, Entscheidungen, Prozessschritte, Grenzen und unterstützende Information | + +Pink markiert, **wo Realität herausgefordert oder verändert wird**. +Gold markiert, **was daraus gelernt, bestätigt oder als Wirkung sichtbar wird**. + +Gold darf nicht für beliebige Hervorhebungen verwendet werden. Pink darf nicht +jeden interaktiven Zustand dominieren. Die semantische Bedeutung geht vor +dekorativer Markenwirkung. + ## Typografie - **Polentical Neon Bold** – Für markante Headlines & Branding. - **Helvetica Neue Medium** – Für Lesbarkeit und UI-Elemente. @@ -54,4 +73,3 @@ Das ist keine Evolution von Jira. Es ist die Antwort auf seine Schwächen. --- Diese Foundation wird in den weiteren Design-, UI- und Guideline-Dokumenten präzisiert. - diff --git a/doc/09_identity/guidelines/swimlane-visual-grammar.md b/doc/09_identity/guidelines/swimlane-visual-grammar.md index f80db0b..15183f2 100644 --- a/doc/09_identity/guidelines/swimlane-visual-grammar.md +++ b/doc/09_identity/guidelines/swimlane-visual-grammar.md @@ -21,7 +21,7 @@ Diese Datei beschreibt die visuelle Grammatik der Swimlanes in Protopipe. Ziel i | Aspekt | Konvention | |----------------|--------------------------------------------------------------| | **Ausrichtung**| Vertikal bevorzugt für Klarheit bei Entscheidungen im Zeitverlauf | -| **Farben** | Lane-Grenzen dunkelgrau (#222), aktive Token leuchten in Rot (#f7436e) | +| **Farben** | Lane-Grenzen bleiben neutral. Probleme, Experimente und aktive Veränderung sind Pink (`#f7436e`). Learning, Evidenz und validierte Wirkung sind Gold (`#f6c56f`). | | **Typografie** | Helvetica für Labels, Polentical für aktive Elemente oder States | | **Icons** | Minimalistisch, Fokus auf Bedeutung (z. B. „?“, „✔“, „↻“) | @@ -35,6 +35,12 @@ Diese Datei beschreibt die visuelle Grammatik der Swimlanes in Protopipe. Ziel i - Review-Dashboard mit Swimlane-Übersicht - Interaktive Prozessdarstellung +Farben beschreiben die Bedeutung eines Tokens, nicht seine bloße Aktivität: + +- Ein aktives Experiment bleibt pink. +- Das daraus gewonnene Learning wird golden. +- Unbewertete Prozessschritte und Entscheidungen bleiben neutral. + --- ## 📐 Designvorgaben (Sketch) @@ -63,4 +69,3 @@ Diese Datei beschreibt die visuelle Grammatik der Swimlanes in Protopipe. Ziel i Siehe auch: - [`ui-principles.md`](../ui/ui-principles.md) - [`brand-foundation.md`](../brand/brand-foundation.md) - diff --git a/doc/09_identity/ui/ui-principles.md b/doc/09_identity/ui/ui-principles.md index efd0030..9a4ffb7 100644 --- a/doc/09_identity/ui/ui-principles.md +++ b/doc/09_identity/ui/ui-principles.md @@ -21,6 +21,30 @@ Protopipe steht für **Transparenz**, **Kontrolle** und **Geschwindigkeit** – | **Emotionalität für Entscheider** | High-End-Wertigkeit durch Lichtführung, gezielte Schatten, markante Typografie und eine Farbkombination aus Tiefschwarz und Signalrot. | | **Konsequent responsive** | Mobile Design nicht als Ableitung, sondern gleichwertig. Touchflächen, vereinfachte Swimlane-Navigation, fokussierte KPIs. | | **Sofortiges Feedback** | Toolzustände, A/B-Auswertungen und Review-Status sind visuell nachvollziehbar. Jeder Klick hat eine direkte Auswirkung. | +| **Semantische Farbe** | Pink kennzeichnet Veränderung, Feedback, Probleme und Experimente. Gold kennzeichnet Lernen, Evidenz, gewünschte Wirkung und sichtbaren Erfolg. Neutrale Zustände bleiben neutral. | + +--- + +## 🎨 Semantische Farbanwendung + +Die kanonische Bedeutung der Farben ist in der +[Brand Foundation](../brand/brand-foundation.md#semantische-farbbedeutung) +definiert. UI-Oberflächen wenden sie wie folgt an: + +- **Pink (`#f7436e`)** für Probleme, Fokusthemen, Experimente, aktive + Veränderung und kritische Feedback-Pfade. +- **Gold (`#f6c56f`)** für Learning, Evidenz, Desired Outcomes, validierte + Wirkung und kanonische Erkenntnisse. +- **Neutralfarben** für Purpose, Hypothesen, Entscheidungen, normale + Prozessschritte und noch nicht bewertete Information. + +Farbe darf nie das einzige Bedeutungssignal sein. Labels, Symbole, Position +oder Form müssen die Semantik zusätzlich ausdrücken. Insbesondere bedeutet: + +- Pink nicht automatisch Fehler oder Alarm. +- Gold nicht automatisch technischer Erfolg oder fehlerfreier Zustand. +- Ein Experiment bleibt pink, auch wenn es erfolgreich abgeschlossen wurde. +- Das daraus entstandene Learning oder die validierte Wirkung wird golden. --- @@ -28,6 +52,7 @@ Protopipe steht für **Transparenz**, **Kontrolle** und **Geschwindigkeit** – - Swimlane = Domänengrenze + Verantwortung - Farbverlauf #de083d → #f7436e = Bewegung, Spannung, Übergang +- Gold #f6c56f = Lernen, Evidenz, Wirkung und sichtbarer Erfolg - Schwarz (#081a17) = Kontrolle, Tiefe, Fokus - Typografie = Polentical Neon Bold (Brand), Helvetica Neue (Lesbarkeit) @@ -56,4 +81,3 @@ Siehe auch: - [`08_design/brand/brand-foundation.md`](../brand/brand-foundation.md) - [`08_design/guidelines/swimlane-visual-grammar.md`](../guidelines/swimlane-visual-grammar.md) - From 76cad8692b080d08d89e09806cce51582943da68 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Tue, 9 Jun 2026 21:51:58 +0200 Subject: [PATCH 10/14] Act 3 complete --- .../docs/deck-outline.md | 29 +- .../docs/repository-tree.md | 4 +- .../chapters/03-act-protopipe.qmd | 84 +- .../chapters/04-act-consulting-entry.qmd | 201 ++- .../chapters/05-act-architecture.qmd | 10 +- .../presentation/chapters/06-act-vision.qmd | 68 +- .../presentation/index.qmd | 4 - .../theme/protopipe.scss | 1139 +++++++++++++++-- 8 files changed, 1300 insertions(+), 239 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 080f10d..26caba5 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -7,7 +7,7 @@ Subtitle: **Augmented Product Development Platform** Primary narrative: Problem Statement -> Communication Artifacts -> Enforcing Tools -> -Consulting Entry -> Architecture and Observability -> Vision +Consulting Entry -> Vision The title slide opens directly into Act 1. A separate table-of-contents slide is intentionally omitted: the act dividers provide orientation without delaying the @@ -38,29 +38,24 @@ narrative. | 19 | Connect strategy to hypothesis-driven experimentation through ProtoPortfolio. | | 20-21 | Present ProtoCatalog as one versioned behavior model and make feature-branch progress observable through verified steps. | | 22 | Show how Composer creates a reversible experiment boundary inside a legacy system and shortens the path to a first production experiment. | -| 23-24 | Introduce Storybook and summarize component responsibilities. | -| 25 | Revisit the communication artifacts with the tooling that keeps each one current, executable, and testable. | +| 23 | Position Storybook as the executable frontend specification and quality gate before artifacts enter Composer. | +| 24 | Revisit the communication artifacts with the tooling that keeps each one current, executable, and testable. | ## Act 4: Consulting Entry | Slides | Narrative Job | |---|---| -| 26-30 | Show a low-risk entry through Noesis, local AI, OSS, organizational memory, and an incremental expansion path. | +| 25 | Establish committed executive sponsorship as the ideal entry, grounded in operational reality and a sovereign OSS/AI trust foundation. | +| 26 | Select an existing transformation pressure point instead of selling a generic framework. | +| 27 | Show the operational trust path when executive access is not yet available. | +| 28 | Close with one high-risk feature as a bounded, reversible, measurable experiment. | -## Act 5: Architecture and Observability +## Act 5: Vision | Slides | Narrative Job | |---|---| -| 31 | Connect experiments to architecture, development, observation, decisions, and learning. | -| 32-35 | Explain reversible architecture, observable development, causal monitoring, and traceable decisions. | +| 29 | Close with shared organizational reality, short feedback loops, and canonical learning. | -## Act 6: Vision - -| Slides | Narrative Job | -|---|---| -| 36-39 | Close with shared organizational reality, faster experimentation, fewer political decisions, and evidence-driven change. | - -## Appendix - -- Source anchors -- Future theory, component, consulting, case-study, and implementation detail +Architecture, observability, runtime contracts, and implementation mechanics +move into a dedicated architectural whitepaper rather than the introductory +pitch deck. diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md index 01b0313..762af64 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md @@ -11,9 +11,9 @@ protopipe-enterprise-pitch/ │ ├── 02-act-gapless-org-learning.qmd │ ├── 03-act-protopipe.qmd │ ├── 04-act-consulting-entry.qmd -│ ├── 05-act-architecture.qmd +│ ├── 05-act-architecture.qmd # reserved for the architecture whitepaper │ ├── 06-act-vision.qmd -│ └── 90-appendix.qmd +│ └── 90-appendix.qmd # source material, not rendered ├── theme/ │ └── protopipe.scss ├── assets/ diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd index aa5ad42..41c70a8 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd @@ -280,6 +280,20 @@ BDD is the communication protocol. The catalog is the living product knowledge i A feature is green when all of its steps are verified.
+
+
+Instead of +Story Points +Estimated effort without verified product behavior +
+ +
+Progress becomes +Green Feature Steps +Observable behavior implemented and verified on the feature branch +
+
+ --- ## 22. Composer: Architecture as an Experiment System @@ -344,26 +358,68 @@ BDD is the communication protocol. The catalog is the living product knowledge i ## 23. Storybook: UX Communication Layer -::: {.toc-only} -Marketing, prototype generation, contracts, and future WYSIWYG assembly. -::: +

Storybook turns frontend intent into an executable product contract before productive backends or runtime integration exist.

---- +
+
+Shared inputs +
+ProductHypothesis and success criteria +UXInteraction and visual language +FrontendComponents, actions, and contexts +BackendCapabilities and constraints +
+
+ +
+Executable specification +Component + Context + Action + Story +
+
+ +
+
+Checkout confirmation +Context: delayed provider response + +
+
+

Product, design, engineering, QA, and test participants review the same interactive behavior without waiting for a backend.

+
-## 24. Component Responsibilities +
+Validation gates +
+BehaviorActions and context transitions execute +Visual constraintsDesign invariants survive composition +ContractsBackend expectations become explicit +ExperimentsVariants substitute artifacts explicitly +
+
+
+ +
+
+Draft + +Validated in Storybook + +Contract-compatible + +Publish RFA / IFA to Composer +
+Future interaction layerWYSIWYG assembly over validated artifacts. +
+ +
+Storybook is not a visual gallery. It is the quality gate where UI becomes negotiable, executable, and safe to promote. +
-| Component | Primary Job | Failure It Prevents | -|---|---|---| -| Noesis | Keep shared meaning stable | Semantic drift | -| Cockpit | Keep strategy connected to reality | Strategy detachment | -| ProtoPortfolio | Connect strategy to measurable hypotheses | Activity steering | -| ProtoCatalog | Make expected behavior explicit and testable | Invisible assumptions | -| Composer | Make architecture experimentally changeable | Big upfront commitments | -| Storybook | Make experience inspectable and negotiable | Invisible UX assumptions | +

Source: Protopipe Storybook arc42 architecture.

--- -## 25. How Shared Artifacts Stay Alive +## 24. How Shared Artifacts Stay Alive

The artifact defines shared meaning. The tooling keeps it connected, executable, and open to validation.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd index 996e072..6cbea65 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd @@ -2,43 +2,196 @@ --- -## 26. Bottom-Up Entry +## 25. Ideal Entry -::: {.toc-only} -Start with Noesis, a local LLM, a team culture database, and organizational -memory. -::: +

Transformation becomes actionable when executive legitimacy meets operational reality.

---- +
+
+Top-down legitimacy +Committed Executive Sponsor +
+Names the strategic pain +Protects the experiment boundary +Provides access to teams and signals +Owns the resulting decision +
+
+ +
+Mandate +One painful question +One measurable experiment +One explicit decision +
+ +
+Bottom-up reality +Embedded Delivery Context +
+Reveals actual dependencies +Tests assumptions in daily work +Surfaces cultural friction safely +Produces observable evidence +
+
+
-## 27. Why Local AI Matters +
+
+Trust foundation +OSS + sovereign AI +Inspectable, locally operable, and grounded in client-specific context. +
+
+Operating principle +Trust before transformation +Effect before method. Observation before judgment. Compatibility before perfection. +
+
-::: {.toc-only} -Explain confidentiality, sovereignty, trust, latency, and client-specific -context grounding. -::: +
+Top-down legitimacy. Bottom-up reality. Evidence-driven expansion. +
--- -## 28. Why OSS Matters +## 26. Transformation Pressure Point -::: {.toc-only} -Explain auditability, adoption, extension, client trust, and ecosystem leverage. -::: +

Do not sell a transformation framework. Operationalize a strategic pain the organization already feels.

+ +
+
+Speed +Time to market keeps growing +

Dependencies, approvals, and unclear ownership delay valuable change.

+Signal: lead time, deployment frequency, decision latency +
+
+Product +Output rises while impact stalls +

Roadmaps advance, but customer behavior and business outcomes do not.

+Signal: adoption, conversion, retention, KPI movement +
+
+Architecture +The monolith blocks learning +

Every experiment becomes a migration discussion or a high-risk release.

+Signal: change failure rate, coupling, recovery time +
+
+Cost +Technology spend loses causality +

Cloud, platform, and delivery costs grow without a visible strategic effect.

+Signal: cost per outcome, capacity allocation, waste +
+
+AI +AI adoption fragments context +

Teams accelerate locally while language, culture, and decisions drift further apart.

+Signal: duplicated work, policy violations, inconsistent decisions +
+
+Organization +Transformation fatigue sets in +

New roles and rituals redistribute responsibility without transferring control.

+Signal: escalations, meeting loops, employee sentiment +
+
+ +
+The entry point is credible when leadership can name the pain, teams recognize it, and reality can answer it. +
--- -## 29. Expansion Path +## 27. Operational Entry + +

Operational excellence can earn strategic access, but only when observed friction is translated into visible impact.

-::: {.flow .focus-flow} -Team Memory -> Development -> Architecture -> Strategy -> KPI Systems -> Observability -::: +
+
+01 +Deliver +

Join as an embedded DevOps or cross-functional engineer and solve real delivery problems.

+
+
+
+02 +Earn trust +

Become useful to the team before interpreting its organization.

+
+
+
+03 +Surface friction +

Use concrete situations to expose repeated decisions, hidden assumptions, and missing control.

+
+
+
+04 +Demonstrate effect +

Compare decision time, iterations, risk clarity, and delivery impact before and after.

+
+
+
+05 +Expand the mandate +

Translate repeated patterns into a jointly owned strategic intervention.

+
+
+ +
+Trust before transformation +Effect before method +Observation before judgment +Temporary side channels must become unnecessary +
+ +
+Observable operational impact earns the right to address structural causes. +
--- -## 30. Consulting Motion +## 28. High-Risk Feature + +

The first engagement is deliberately small, production-relevant, and designed to earn the next decision.

+ +
+
+Decision question +Can we improve checkout completion without increasing operational risk? +
+ +
+
+Hypothesis +A clearer payment recovery flow reduces abandonment. +
+
+Intervention +Replace one legacy surface through Composer. +
+
+Evidence +Conversion, errors, latency, and user feedback. +
+
+Decision rule +Scale, revise, stop, or restore the control. +
+
+ +
+ScopeOne product surface +TimeboxDays to first exposure +SafetyReversible test group +OwnershipOne executive decision owner +LearningCanonical decision record +
+
-::: {.toc-only} -Protopipe as a transformation entry point: low-risk start, visible value, -expanding strategic surface. -::: +
+The deliverable is not software. It is a decision the organization can defend with evidence. +
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd index fed0d9d..a3f526e 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-architecture.qmd @@ -2,7 +2,7 @@ --- -## 31. Architecture Carries the Experiment +## 29. Architecture Carries the Experiment ::: {.flow .learning-flow} Hypothesis -> Experiment -> Architecture -> Development -> Observation -> Decision -> Learning @@ -10,7 +10,7 @@ Hypothesis -> Experiment -> Architecture -> Development -> Observation -> Decisi --- -## 32. Experiments Beat Large Upfront Decisions +## 30. Experiments Beat Large Upfront Decisions ::: {.toc-only} Connect risk-first exploration, reversibility, and feedback over opinion. @@ -18,7 +18,7 @@ Connect risk-first exploration, reversibility, and feedback over opinion. --- -## 33. Development Becomes Observable +## 31. Development Becomes Observable ::: {.toc-only} Show architecture as dependency management, invariant placement, and blast @@ -27,7 +27,7 @@ radius reduction, connected to implementation feedback and runtime observation. --- -## 34. Monitoring Becomes Causal, Not Decorative +## 32. Monitoring Becomes Causal, Not Decorative ::: {.toc-only} Tie KPI trees, telemetry, observations, hypotheses, and experiments so metrics @@ -36,7 +36,7 @@ can explain decisions. --- -## 35. Decisions Become Traceable +## 33. Decisions Become Traceable ::: {.toc-only} Show how evidence, trade-offs, and canonical references survive beyond meetings. diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index dbed2d0..c296e8d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -1,36 +1,38 @@ -# Act 6: Vision {.section .learning-section} +# Act 5: Vision {.section .learning-section} --- -## 36. Shared Organizational Reality - -::: {.toc-only} -Protopipe reduces political decisions by making assumptions, evidence, and -memory visible. -::: - ---- - -## 37. Faster Experimentation - -::: {.toc-only} -Organizations become faster because learning loops become explicit and -supported from strategic intent to runtime observation. -::: - ---- - -## 38. Fewer Political Decisions - -::: {.toc-only} -Debate remains valuable, but ungrounded opinion loses veto power. -::: - ---- - -## 39. Evidence-Driven Enterprise Change - -::: {.toc-only} -End with the strategic promise: better decisions, faster, with less waste and -more responsibility. -::: +## 29. Shared Reality. Faster Learning. + +

Protopipe turns transformation from a program of promises into an observable sequence of decisions.

+ +
+
+Shared language +Everyone reasons about the same organizational reality. +

Purpose, strategy, hypotheses, features, architecture, and evidence remain connected.

+
+
+Short feedback loops +High-risk assumptions become bounded experiments. +

Teams change small surfaces, observe real effects, and preserve reversibility.

+
+
+Canonical learning +Every decision improves the next decision. +

Evidence, trade-offs, and responsibility survive beyond meetings and individual memory.

+
+
+ +
+Purpose +Strategy +Experiment +Development +Observation +Learning +
+ +
+Better decisions. Faster. With less waste and more responsibility. +
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd index 7ec4885..903d64b 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -19,8 +19,4 @@ format: {{< include chapters/04-act-consulting-entry.qmd >}} -{{< include chapters/05-act-architecture.qmd >}} - {{< include chapters/06-act-vision.qmd >}} - -{{< include chapters/90-appendix.qmd >}} diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index 1a8e38a..3ad564f 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -807,7 +807,7 @@ $mainFontSize: 34px; .mechanic-type-card i { display: block; - margin-top: 0.65rem; + margin-top: 0.48rem; color: var(--pp-muted); font-style: italic; font-weight: 500; @@ -1596,6 +1596,71 @@ $mainFontSize: 34px; font-size: 0.42em; } +.catalog-progress-shift { + display: grid; + grid-template-columns: 1fr 45px 1fr; + align-items: stretch; + gap: 0.42rem; + max-width: 1320px; + margin-top: 0.5rem; +} + +.catalog-progress-shift > div { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 7px; + padding: 0.48rem 0.62rem; + background: rgba(255, 255, 255, 0.03); +} + +.catalog-progress-shift > div > span { + display: block; + margin-bottom: 0.22rem; + color: var(--pp-dim); + font-size: 0.3em; + font-weight: 850; + text-transform: uppercase; +} + +.catalog-progress-shift > div > strong { + display: block; + color: var(--pp-text); + font-size: 0.46em; +} + +.catalog-progress-shift > div > small { + display: block; + margin-top: 0.22rem; + color: var(--pp-muted); + font-size: 0.31em; + line-height: 1.14; +} + +.catalog-progress-shift > .estimated { + border-left: 3px solid var(--pp-focus); +} + +.catalog-progress-shift > .estimated > strong { + color: var(--pp-focus); +} + +.catalog-progress-shift > .verified { + border-left: 3px solid var(--pp-success); + background: rgba(77, 222, 155, 0.035); +} + +.catalog-progress-shift > .verified > strong { + color: var(--pp-success); +} + +.catalog-progress-shift > b { + display: flex; + align-items: center; + justify-content: center; + color: var(--pp-focus); + font-size: 0.62em; +} + .composer-flow { display: grid; grid-template-columns: minmax(0, 1fr) 45px minmax(0, 1fr) 45px minmax(0, 1fr); @@ -1798,214 +1863,962 @@ $mainFontSize: 34px; line-height: 1.15; } -.artifact-flow { +.storybook-system { display: grid; - grid-template-columns: repeat(5, minmax(0, 1fr)); + grid-template-columns: 0.9fr 1.25fr 0.95fr; gap: 0.65rem; - margin-top: 1.2rem; max-width: 1320px; + margin-top: 0.8rem; } -.artifact-card { - min-height: 265px; +.storybook-inputs, +.storybook-core, +.storybook-gates { + min-width: 0; + min-height: 330px; border: 1px solid var(--pp-line); - border-top: 4px solid rgba(255, 255, 255, 0.2); border-radius: 8px; - padding: 0.72rem; - color: var(--pp-muted); + padding: 0.68rem; background: rgba(255, 255, 255, 0.035); - font-size: 0.46em; - line-height: 1.18; } -.artifact-card span { +.storybook-inputs > span, +.storybook-core > span, +.storybook-gates > span { display: block; - margin-bottom: 0.55rem; + margin-bottom: 0.48rem; color: var(--pp-dim); - font-size: 0.82em; + font-size: 0.34em; font-weight: 850; text-transform: uppercase; } -.artifact-card.focus, -.artifact-card.experiment { - border-top-color: var(--pp-focus); - background: rgba(247, 67, 110, 0.045); +.storybook-input-grid, +.storybook-gate-list { + display: grid; + gap: 0.42rem; } -.artifact-card.focus span, -.artifact-card.experiment span { - color: var(--pp-focus); +.storybook-input-grid > p, +.storybook-gate-list > p { + display: contents; } -.artifact-card.learning { - border-top-color: var(--pp-learning); - background: rgba(246, 197, 111, 0.055); +.storybook-input-grid i, +.storybook-gate-list i { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.48rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.52); + font-size: 0.34em; + font-style: normal; + font-weight: 680; + line-height: 1.15; } -.artifact-card.learning span { +.storybook-input-grid i b, +.storybook-gate-list i b { + display: block; + margin-bottom: 0.25rem; + color: var(--pp-text); + font-size: 0.92em; + text-transform: uppercase; +} + +.storybook-core { + border-color: rgba(246, 197, 111, 0.46); + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.045); +} + +.storybook-core > span { color: var(--pp-learning); } -.artifact-card strong { +.storybook-core > strong { display: block; - margin-bottom: 0.7rem; color: var(--pp-text); - font-size: 1.12em; + font-size: 0.52em; line-height: 1.08; } -.artifact-card em { - display: block; - margin-top: 0.7rem; - color: var(--pp-dim); - font-style: italic; - font-weight: 650; +.storybook-core > p { + margin: 0.5rem 0 0; + color: var(--pp-muted); + font-size: 0.35em; + line-height: 1.18; } -.artifact-flow.enforcement .artifact-card { - display: flex; - flex-direction: column; - min-height: 290px; +.storybook-preview { + margin-top: 0.55rem; + overflow: hidden; + border: 1px solid rgba(246, 197, 111, 0.32); + border-radius: 6px; + background: #0b1f1b; } -.artifact-tool { - margin-top: auto; - border-top: 1px solid var(--pp-line); - padding-top: 0.65rem; - color: var(--pp-text); - font-size: 1.03em; - font-weight: 780; - line-height: 1.14; +.storybook-browser { + display: flex; + gap: 0.25rem; + border-bottom: 1px solid var(--pp-line); + padding: 0.34rem 0.42rem; + background: rgba(255, 255, 255, 0.04); } -.artifact-tool b { - display: block; - margin-bottom: 0.3rem; - color: var(--pp-dim); - font-size: 0.72em; - font-weight: 850; - text-transform: uppercase; +.storybook-browser i { + width: 7px; + aspect-ratio: 1; + border-radius: 50%; + background: var(--pp-dim); } -.artifact-card.focus .artifact-tool, -.artifact-card.experiment .artifact-tool { - border-top-color: rgba(247, 67, 110, 0.38); +.storybook-browser i:first-child { + background: var(--pp-focus); } -.artifact-card.focus .artifact-tool b, -.artifact-card.experiment .artifact-tool b { - color: var(--pp-focus); +.storybook-ui { + display: grid; + align-content: center; + min-height: 120px; + padding: 0.7rem; } -.artifact-card.learning .artifact-tool { - border-top-color: rgba(246, 197, 111, 0.45); +.storybook-ui b { + color: var(--pp-text); + font-size: 0.45em; } -.artifact-card.learning .artifact-tool b { - color: var(--pp-learning); +.storybook-ui small { + margin-top: 0.25rem; + color: var(--pp-muted); + font-size: 0.32em; } -.artifact-punchline { - max-width: 1180px; - margin-top: 0.9rem; - border-left: 4px solid var(--pp-accent); - padding: 0.7rem 0.9rem; +.storybook-ui button { + width: max-content; + margin-top: 0.55rem; + border: 1px solid var(--pp-focus); + border-radius: 5px; + padding: 0.35rem 0.55rem; color: var(--pp-text); - background: rgba(247, 67, 110, 0.07); - font-size: 0.58em; + background: rgba(247, 67, 110, 0.14); + font-family: inherit; + font-size: 0.32em; font-weight: 750; } -.artifact-punchline.learning { - border-left-color: var(--pp-learning); - background: rgba(246, 197, 111, 0.07); +.storybook-gates { + border-color: rgba(77, 222, 155, 0.34); } -.responsibility-bpm { - display: grid; - gap: 0.9rem; - margin-top: 1.3rem; - max-width: 1240px; +.storybook-gate-list i { + position: relative; + padding-left: 1.45rem; } -.responsibility-lane { - display: grid; - grid-template-columns: 210px 1fr; - min-height: 134px; - border: 1px solid rgba(255, 255, 255, 0.08); - border-radius: 14px; - overflow: hidden; - background: - linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035) 28%, rgba(8, 26, 23, 0.82)), - rgba(255, 255, 255, 0.03); +.storybook-gate-list i::before { + content: ""; + position: absolute; + top: 50%; + left: 0.48rem; + width: 0.55rem; + aspect-ratio: 1; + border: 2px solid var(--pp-success); + border-radius: 50%; + background: var(--pp-success); + transform: translateY(-50%); } -.responsibility-lane.control { - background: - linear-gradient(90deg, rgba(247, 67, 110, 0.7), rgba(247, 67, 110, 0.24) 32%, rgba(8, 26, 23, 0.86)), - rgba(247, 67, 110, 0.06); +.storybook-gate-list i.experiment::before { + border-color: var(--pp-focus); + background: var(--pp-focus); } -.responsibility-lane-label { - display: flex; +.storybook-publication { + display: grid; + grid-template-columns: 1.25fr 0.75fr; align-items: center; - padding: 1rem; - color: var(--pp-text); - font-size: 0.58em; - font-weight: 800; - line-height: 1.12; + gap: 0.65rem; + max-width: 1320px; + margin-top: 0.6rem; + border: 1px solid rgba(246, 197, 111, 0.36); + border-radius: 8px; + padding: 0.52rem 0.65rem; + background: rgba(246, 197, 111, 0.04); } -.responsibility-flow { - display: grid; - grid-template-columns: 1fr 40px 1fr 40px 1fr; +.storybook-publication > div { + display: flex; align-items: center; - gap: 0.6rem; - padding: 1rem 1.1rem 1rem 0.3rem; + gap: 0.45rem; } -.responsibility-lane.control .responsibility-flow { - grid-template-columns: repeat(3, minmax(0, 1fr)); +.storybook-publication span { + color: var(--pp-muted); + font-size: 0.34em; + font-weight: 700; } -.responsibility-token { - min-height: 68px; - display: flex; - align-items: center; - justify-content: center; - border: 1px solid rgba(255, 255, 255, 0.66); - border-radius: 9px; - padding: 0.65rem; - color: var(--pp-text); - background: rgba(255, 255, 255, 0.055); - font-size: 0.58em; - font-weight: 700; - line-height: 1.12; - text-align: center; +.storybook-publication b { + color: var(--pp-focus); + font-size: 0.44em; } -.responsibility-token.blocked { - border-color: rgba(247, 67, 110, 0.82); - background: rgba(247, 67, 110, 0.12); +.storybook-publication strong { + color: var(--pp-learning); + font-size: 0.36em; } -.responsibility-arrow { - color: var(--pp-accent); - font-family: $codeFont; - font-size: 0.82em; - text-align: center; +.storybook-publication > p { + margin: 0; + border-left: 1px solid var(--pp-line); + padding-left: 0.65rem; } -.responsibility-effects { - display: grid; - grid-template-columns: repeat(3, minmax(0, 1fr)); - gap: 0.8rem; - margin-top: 1rem; - max-width: 1240px; +.storybook-publication em { + display: block; + margin: 0; + padding: 0; + color: var(--pp-dim); + font-size: 0.31em; + font-style: italic; + line-height: 1.25; } -.responsibility-effects span { +.storybook-publication em b { + display: block; + margin-bottom: 0.2rem; + color: var(--pp-muted); + font-size: 0.92em; + font-style: normal; + text-transform: uppercase; +} + +.storybook-publication > em { + border-left: 1px solid var(--pp-line); + padding-left: 0.65rem; +} + +.storybook-punchline { + max-width: 1180px; + margin-top: 0.55rem; + border-left: 4px solid var(--pp-learning); + padding: 0.55rem 0.75rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.06); + font-size: 0.45em; + font-weight: 760; +} + +.storybook-punchline > p { + margin: 0; +} + +.entry-mandate { + display: grid; + grid-template-columns: 1fr 0.72fr 1fr; + gap: 0.65rem; + max-width: 1320px; + margin-top: 0.9rem; +} + +.entry-side, +.entry-bridge { + min-width: 0; + min-height: 285px; + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.72rem; + background: rgba(255, 255, 255, 0.035); +} + +.entry-side > span, +.entry-foundation span { + display: block; + margin-bottom: 0.35rem; + color: var(--pp-dim); + font-size: 0.34em; + font-weight: 850; + text-transform: uppercase; +} + +.entry-side > strong, +.entry-foundation strong { + display: block; + color: var(--pp-text); + font-size: 0.58em; + line-height: 1.08; +} + +.entry-side.executive { + border-top: 4px solid var(--pp-focus); + background: rgba(247, 67, 110, 0.04); +} + +.entry-side.executive > span { + color: var(--pp-focus); +} + +.entry-side.reality { + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.04); +} + +.entry-side.reality > span { + color: var(--pp-learning); +} + +.entry-list { + display: grid; + gap: 0.38rem; + margin-top: 0.65rem; +} + +.entry-list > p { + display: contents; +} + +.entry-list i { + position: relative; + border-bottom: 1px solid var(--pp-line); + padding: 0.35rem 0 0.35rem 1rem; + color: var(--pp-muted); + font-size: 0.37em; + font-style: normal; + font-weight: 680; +} + +.entry-list i::before { + content: ""; + position: absolute; + top: 50%; + left: 0; + width: 0.5rem; + height: 2px; + background: var(--pp-focus); + transform: translateY(-50%); +} + +.entry-side.reality .entry-list i::before { + background: var(--pp-learning); +} + +.entry-bridge { + display: grid; + align-content: center; + justify-items: center; + gap: 0.48rem; + border-color: rgba(247, 67, 110, 0.38); + text-align: center; +} + +.entry-bridge > p { + display: contents; +} + +.entry-bridge b { + width: 90px; + border: 2px solid var(--pp-focus); + border-radius: 50%; + padding: 1.05rem 0.25rem; + color: var(--pp-text); + font-size: 0.42em; + text-transform: uppercase; +} + +.entry-bridge span { + width: 100%; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.38rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.55); + font-size: 0.34em; + font-weight: 700; +} + +.entry-foundation { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.65rem; + max-width: 1320px; + margin-top: 0.62rem; +} + +.entry-foundation > div { + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.55rem 0.68rem; + background: rgba(255, 255, 255, 0.025); +} + +.entry-foundation small { + display: block; + margin-top: 0.28rem; + color: var(--pp-muted); + font-size: 0.33em; + line-height: 1.16; +} + +.entry-punchline, +.pressure-punchline, +.mandate-punchline, +.operational-punchline { + max-width: 1180px; + margin-top: 0.62rem; + border-left: 4px solid var(--pp-learning); + padding: 0.55rem 0.75rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.06); + font-size: 0.48em; + font-weight: 760; +} + +.entry-punchline > p, +.pressure-punchline > p, +.mandate-punchline > p, +.operational-punchline > p { + margin: 0; +} + +.pressure-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.55rem; + max-width: 1320px; + margin-top: 0.85rem; +} + +.pressure-card { + display: flex; + flex-direction: column; + min-width: 0; + min-height: 190px; + border: 1px solid var(--pp-line); + border-top: 3px solid var(--pp-focus); + border-radius: 8px; + padding: 0.62rem; + background: rgba(247, 67, 110, 0.035); +} + +.pressure-card > span, +.mandate-question > span, +.mandate-definition span, +.operational-step > span { + display: block; + margin-bottom: 0.3rem; + color: var(--pp-focus); + font-size: 0.32em; + font-weight: 850; + text-transform: uppercase; +} + +.pressure-card > strong { + color: var(--pp-text); + font-size: 0.47em; + line-height: 1.08; +} + +.pressure-card > p { + margin: 0.4rem 0 0; + color: var(--pp-muted); + font-size: 0.34em; + line-height: 1.18; +} + +.pressure-card > p:last-child { + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.38rem; +} + +.pressure-card em { + color: var(--pp-dim); + font-size: 0.9em; + font-style: italic; +} + +.pressure-punchline, +.operational-punchline { + border-left-color: var(--pp-focus); + background: rgba(247, 67, 110, 0.06); +} + +.mandate-frame { + max-width: 1320px; + margin-top: 0.85rem; + border: 1px solid rgba(247, 67, 110, 0.4); + border-radius: 8px; + padding: 0.7rem; + background: rgba(247, 67, 110, 0.03); +} + +.mandate-question { + border-left: 4px solid var(--pp-focus); + padding: 0.2rem 0.65rem; +} + +.mandate-question > strong { + display: block; + color: var(--pp-text); + font-size: 0.64em; + line-height: 1.1; +} + +.mandate-definition { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.5rem; + margin-top: 0.68rem; +} + +.mandate-definition > div { + min-width: 0; + min-height: 150px; + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.55rem; + background: rgba(8, 26, 23, 0.56); +} + +.mandate-definition > div:nth-child(3) { + border-color: rgba(246, 197, 111, 0.42); +} + +.mandate-definition > div:nth-child(3) span { + color: var(--pp-learning); +} + +.mandate-definition strong { + display: block; + color: var(--pp-text); + font-size: 0.4em; + line-height: 1.16; +} + +.mandate-constraints { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 0.42rem; + margin-top: 0.58rem; +} + +.mandate-constraints > p { + display: contents; +} + +.mandate-constraints i { + min-width: 0; + border-top: 1px solid var(--pp-line); + padding: 0.42rem 0.2rem 0; + color: var(--pp-muted); + font-size: 0.32em; + font-style: normal; + line-height: 1.14; +} + +.mandate-constraints i b { + display: block; + margin-bottom: 0.22rem; + color: var(--pp-text); + text-transform: uppercase; +} + +.operational-entry { + display: grid; + grid-template-columns: 1fr 32px 1fr 32px 1fr 32px 1fr 32px 1fr; + align-items: stretch; + gap: 0.25rem; + max-width: 1320px; + margin-top: 0.9rem; +} + +.operational-step { + min-width: 0; + min-height: 260px; + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.58rem; + background: rgba(255, 255, 255, 0.03); +} + +.operational-step.focus { + border-top: 4px solid var(--pp-focus); + background: rgba(247, 67, 110, 0.04); +} + +.operational-step.learning { + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.04); +} + +.operational-step.learning > span { + color: var(--pp-learning); +} + +.operational-step > strong { + display: block; + color: var(--pp-text); + font-size: 0.48em; +} + +.operational-step > p { + margin: 0.45rem 0 0; + color: var(--pp-muted); + font-size: 0.33em; + line-height: 1.2; +} + +.operational-arrow { + display: flex; + align-items: center; + justify-content: center; + color: var(--pp-focus); + font-size: 0.62em; + font-weight: 850; +} + +.operational-principles { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.45rem; + max-width: 1320px; + margin-top: 0.58rem; +} + +.operational-principles > p { + display: contents; +} + +.operational-principles i { + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.42rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.5); + font-size: 0.34em; + font-style: italic; + font-weight: 700; + text-align: center; +} + +.vision-close { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.65rem; + max-width: 1320px; + margin-top: 1rem; +} + +.vision-pillar { + min-width: 0; + min-height: 260px; + border: 1px solid var(--pp-line); + border-top: 4px solid rgba(255, 255, 255, 0.24); + border-radius: 8px; + padding: 0.72rem; + background: rgba(255, 255, 255, 0.035); +} + +.vision-pillar.focus { + border-top-color: var(--pp-focus); + background: rgba(247, 67, 110, 0.04); +} + +.vision-pillar.learning { + border-top-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.045); +} + +.vision-pillar > span { + display: block; + margin-bottom: 0.48rem; + color: var(--pp-dim); + font-size: 0.34em; + font-weight: 850; + text-transform: uppercase; +} + +.vision-pillar.focus > span { + color: var(--pp-focus); +} + +.vision-pillar.learning > span { + color: var(--pp-learning); +} + +.vision-pillar > strong { + display: block; + color: var(--pp-text); + font-size: 0.56em; + line-height: 1.12; +} + +.vision-pillar > p { + margin: 0.6rem 0 0; + color: var(--pp-muted); + font-size: 0.37em; + line-height: 1.2; +} + +.vision-loop { + display: flex; + align-items: center; + justify-content: center; + gap: 0.55rem; + max-width: 1320px; + margin-top: 0.7rem; + border: 1px solid rgba(246, 197, 111, 0.35); + border-radius: 8px; + padding: 0.58rem; + background: rgba(246, 197, 111, 0.04); +} + +.vision-loop > p { + display: contents; +} + +.vision-loop span { + color: var(--pp-muted); + font-size: 0.38em; + font-weight: 700; +} + +.vision-loop b { + color: var(--pp-focus); + font-size: 0.48em; +} + +.vision-loop strong { + color: var(--pp-learning); + font-size: 0.4em; +} + +.vision-statement { + max-width: 1180px; + margin-top: 0.7rem; + border-left: 4px solid var(--pp-learning); + padding: 0.65rem 0.85rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.07); + font-size: 0.62em; + font-weight: 780; +} + +.vision-statement > p { + margin: 0; +} + +.artifact-flow { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 0.65rem; + margin-top: 1.2rem; + max-width: 1320px; +} + +.artifact-card { + min-height: 265px; + border: 1px solid var(--pp-line); + border-top: 4px solid rgba(255, 255, 255, 0.2); + border-radius: 8px; + padding: 0.72rem; + color: var(--pp-muted); + background: rgba(255, 255, 255, 0.035); + font-size: 0.46em; + line-height: 1.18; +} + +.artifact-card span { + display: block; + margin-bottom: 0.55rem; + color: var(--pp-dim); + font-size: 0.82em; + font-weight: 850; + text-transform: uppercase; +} + +.artifact-card.focus, +.artifact-card.experiment { + border-top-color: var(--pp-focus); + background: rgba(247, 67, 110, 0.045); +} + +.artifact-card.focus span, +.artifact-card.experiment span { + color: var(--pp-focus); +} + +.artifact-card.learning { + border-top-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.055); +} + +.artifact-card.learning span { + color: var(--pp-learning); +} + +.artifact-card strong { + display: block; + margin-bottom: 0.7rem; + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.artifact-card em { + display: block; + margin-top: 0.7rem; + color: var(--pp-dim); + font-style: italic; + font-weight: 650; +} + +.artifact-flow.enforcement .artifact-card { + display: flex; + flex-direction: column; + min-height: 290px; +} + +.artifact-tool { + margin-top: auto; + border-top: 1px solid var(--pp-line); + padding-top: 0.65rem; + color: var(--pp-text); + font-size: 1.03em; + font-weight: 780; + line-height: 1.14; +} + +.artifact-tool b { + display: block; + margin-bottom: 0.3rem; + color: var(--pp-dim); + font-size: 0.72em; + font-weight: 850; + text-transform: uppercase; +} + +.artifact-card.focus .artifact-tool, +.artifact-card.experiment .artifact-tool { + border-top-color: rgba(247, 67, 110, 0.38); +} + +.artifact-card.focus .artifact-tool b, +.artifact-card.experiment .artifact-tool b { + color: var(--pp-focus); +} + +.artifact-card.learning .artifact-tool { + border-top-color: rgba(246, 197, 111, 0.45); +} + +.artifact-card.learning .artifact-tool b { + color: var(--pp-learning); +} + +.artifact-punchline { + max-width: 1180px; + margin-top: 0.9rem; + border-left: 4px solid var(--pp-accent); + padding: 0.7rem 0.9rem; + color: var(--pp-text); + background: rgba(247, 67, 110, 0.07); + font-size: 0.58em; + font-weight: 750; +} + +.artifact-punchline.learning { + border-left-color: var(--pp-learning); + background: rgba(246, 197, 111, 0.07); +} + +.responsibility-bpm { + display: grid; + gap: 0.9rem; + margin-top: 1.3rem; + max-width: 1240px; +} + +.responsibility-lane { + display: grid; + grid-template-columns: 210px 1fr; + min-height: 134px; + border: 1px solid rgba(255, 255, 255, 0.08); + border-radius: 14px; + overflow: hidden; + background: + linear-gradient(90deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.035) 28%, rgba(8, 26, 23, 0.82)), + rgba(255, 255, 255, 0.03); +} + +.responsibility-lane.control { + background: + linear-gradient(90deg, rgba(247, 67, 110, 0.7), rgba(247, 67, 110, 0.24) 32%, rgba(8, 26, 23, 0.86)), + rgba(247, 67, 110, 0.06); +} + +.responsibility-lane-label { + display: flex; + align-items: center; + padding: 1rem; + color: var(--pp-text); + font-size: 0.58em; + font-weight: 800; + line-height: 1.12; +} + +.responsibility-flow { + display: grid; + grid-template-columns: 1fr 40px 1fr 40px 1fr; + align-items: center; + gap: 0.6rem; + padding: 1rem 1.1rem 1rem 0.3rem; +} + +.responsibility-lane.control .responsibility-flow { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.responsibility-token { + min-height: 68px; + display: flex; + align-items: center; + justify-content: center; + border: 1px solid rgba(255, 255, 255, 0.66); + border-radius: 9px; + padding: 0.65rem; + color: var(--pp-text); + background: rgba(255, 255, 255, 0.055); + font-size: 0.58em; + font-weight: 700; + line-height: 1.12; + text-align: center; +} + +.responsibility-token.blocked { + border-color: rgba(247, 67, 110, 0.82); + background: rgba(247, 67, 110, 0.12); +} + +.responsibility-arrow { + color: var(--pp-accent); + font-family: $codeFont; + font-size: 0.82em; + text-align: center; +} + +.responsibility-effects { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.8rem; + margin-top: 1rem; + max-width: 1240px; +} + +.responsibility-effects span { min-height: 82px; display: flex; align-items: center; @@ -2185,8 +2998,19 @@ $mainFontSize: 34px; .catalog-model, .catalog-trace-context, .catalog-feature, + .catalog-progress-shift, .composer-flow, .composer-zero-one, + .storybook-system, + .storybook-publication, + .entry-mandate, + .entry-foundation, + .pressure-grid, + .mandate-definition, + .mandate-constraints, + .operational-entry, + .operational-principles, + .vision-close, .artifact-flow, .shared-reality-flow, .circle-stack, @@ -2253,10 +3077,35 @@ $mainFontSize: 34px; transform: rotate(90deg); } + .catalog-progress-shift > b { + transform: rotate(90deg); + } + .composer-arrow { transform: rotate(90deg); } + .storybook-publication > div { + flex-wrap: wrap; + } + + .operational-arrow { + transform: rotate(90deg); + } + + .vision-loop { + align-items: flex-start; + flex-direction: column; + } + + .storybook-publication > p, + .storybook-publication > em { + border-left: 0; + border-top: 1px solid var(--pp-line); + padding-top: 0.5rem; + padding-left: 0; + } + .catalog-status-legend { align-items: flex-start; flex-direction: column; @@ -2306,6 +3155,8 @@ $mainFontSize: 34px; } #title-slide { + position: relative; + height: 100%; text-align: left; } @@ -2317,10 +3168,13 @@ $mainFontSize: 34px; #title-slide::before { content: ""; + position: absolute; + top: 245px; + left: 70px; display: block; - width: min(620px, 48vw); + width: 520px; height: 150px; - margin: 0 0 1.6rem; + margin: 0; background-image: url("../../../../assets/logos/protopipe-logo-color-full.svg"); background-repeat: no-repeat; background-size: contain; @@ -2328,10 +3182,15 @@ $mainFontSize: 34px; } #title-slide .subtitle { - max-width: 17ch; + position: absolute; + top: 675px; + left: 70px; + max-width: 28ch; margin: 0; - color: var(--pp-muted); - font-size: 1.25em; + border-left: 4px solid var(--pp-learning); + padding-left: 0.65rem; + color: var(--pp-text); + font-size: 1em; font-weight: 650; line-height: 1.12; text-align: left; From 424464fe706e6a1a8ed195587dd8ef74eba958a4 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Thu, 11 Jun 2026 17:33:06 +0200 Subject: [PATCH 11/14] Extensions and KPI-Tree --- .../docs/deck-outline.md | 32 +- .../docs/repository-tree.md | 1 + .../chapters/03-act-protopipe.qmd | 138 ++++- .../chapters/04-act-consulting-entry.qmd | 8 +- .../chapters/05-act-extensions.qmd | 107 ++++ .../presentation/chapters/06-act-vision.qmd | 2 +- .../presentation/index.qmd | 2 + .../theme/protopipe.scss | 511 +++++++++++++++++- 8 files changed, 772 insertions(+), 29 deletions(-) create mode 100644 dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 26caba5..4e6078f 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -7,7 +7,7 @@ Subtitle: **Augmented Product Development Platform** Primary narrative: Problem Statement -> Communication Artifacts -> Enforcing Tools -> -Consulting Entry -> Vision +Consulting Entry -> Ecosystem Extensions -> Vision The title slide opens directly into Act 1. A separate table-of-contents slide is intentionally omitted: the act dividers provide orientation without delaying the @@ -33,28 +33,36 @@ narrative. | Slides | Narrative Job | |---|---| | 14-16 | Make purpose and culture available at the point of work through Noesis and AI-assisted context. | -| 17 | Show the Protopipe Cockpit as the C-level surface for strategy health, reality signals, strategic focus, and decision detail. | +| 17 | Show the Protopipe Cockpit as the C-level decision surface for strategy health, reality signals, strategic focus, and decision detail. | | 18 | Demonstrate the executable Cockpit mock as product evidence. | -| 19 | Connect strategy to hypothesis-driven experimentation through ProtoPortfolio. | -| 20-21 | Present ProtoCatalog as one versioned behavior model and make feature-branch progress observable through verified steps. | -| 22 | Show how Composer creates a reversible experiment boundary inside a legacy system and shortens the path to a first production experiment. | -| 23 | Position Storybook as the executable frontend specification and quality gate before artifacts enter Composer. | -| 24 | Revisit the communication artifacts with the tooling that keeps each one current, executable, and testable. | +| 19 | Establish the KPI Tree as the causal backbone of the Cockpit and the working model of CFO and Controlling. | +| 20 | Force attributable financial, product, and system signals back through the KPI Tree into strategy and the next hypothesis. | +| 21-22 | Present ProtoCatalog as one versioned behavior model and make feature-branch progress observable through verified steps. | +| 23 | Show how Composer creates a reversible experiment boundary inside a legacy system and shortens the path to a first production experiment. | +| 24 | Position Storybook as the executable frontend specification and quality gate before artifacts enter Composer. | +| 25 | Revisit the communication artifacts with the tooling that keeps each one current, executable, and testable. | ## Act 4: Consulting Entry | Slides | Narrative Job | |---|---| -| 25 | Establish committed executive sponsorship as the ideal entry, grounded in operational reality and a sovereign OSS/AI trust foundation. | -| 26 | Select an existing transformation pressure point instead of selling a generic framework. | -| 27 | Show the operational trust path when executive access is not yet available. | -| 28 | Close with one high-risk feature as a bounded, reversible, measurable experiment. | +| 26 | Establish committed executive sponsorship as the ideal entry, grounded in operational reality and a sovereign OSS/AI trust foundation. | +| 27 | Select an existing transformation pressure point instead of selling a generic framework. | +| 28 | Show the operational trust path when executive access is not yet available. | +| 29 | Close with one high-risk feature as a bounded, reversible, measurable experiment. | + +## Ecosystem Extensions + +| Slides | Narrative Job | +|---|---| +| 30 | Position external metric providers such as Sellytics as optional sources of attributable market evidence. | +| 31 | Introduce Synesis as an optional deliberation and decision-memory add-on. | ## Act 5: Vision | Slides | Narrative Job | |---|---| -| 29 | Close with shared organizational reality, short feedback loops, and canonical learning. | +| 32 | Close with shared organizational reality, short feedback loops, and canonical learning. | Architecture, observability, runtime contracts, and implementation mechanics move into a dedicated architectural whitepaper rather than the introductory diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md index 762af64..04d7e6d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/repository-tree.md @@ -12,6 +12,7 @@ protopipe-enterprise-pitch/ │ ├── 03-act-protopipe.qmd │ ├── 04-act-consulting-entry.qmd │ ├── 05-act-architecture.qmd # reserved for the architecture whitepaper +│ ├── 05-act-extensions.qmd # optional ecosystem extensions │ ├── 06-act-vision.qmd │ └── 90-appendix.qmd # source material, not rendered ├── theme/ diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd index 41c70a8..22defd7 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/03-act-protopipe.qmd @@ -160,15 +160,131 @@ The cockpit does not report activity. It forces strategy to remain connected to --- -## 19. Proto-Portfolio: Strategy-Linked Experimentation +## 19. KPI Tree: The Cockpit Backbone + +

The KPI Tree is the working model of CFO and Controlling: it makes the causal path from strategic intent to financial effect explicit.

+ +
+
+
+Strategic outcome +Profitable customer growth +Owned and funded at portfolio level +
+
+
+
+Financial KPI +Contribution margin +CHF impact and opportunity cost +
+
+Customer KPI +Checkout completion +Expected behavioral effect +
+
+
+
+
+Operational driver +Payment recovery rate +Process performance +
+
+Technical signal +Provider timeout rate +System behavior +
+
+Experiment +EXP-024 · Recovery flow +Attributed intervention +
+
+
+ +
+CFO + Controlling +Steer through causality, not reporting cycles. +
+Which strategic bet moves financial reality? +Where is capital producing learning or impact? +Which risk is provisionable now? +What is the opportunity cost of waiting? +
+
Fund · constrain · revise · stop
+
+
+ +
+The Cockpit is the decision surface. The KPI Tree is the causal model underneath it. +
+ +--- + +## 20. Reality Must Flow Back + +

Protopipe closes the loop by accepting only attributable signals and returning their financial meaning to strategy.

-::: {.diagram-slot} - Proto Portfolio connects strategy to experiments by making strategic hypotheses explicit, measurable, and continuously observable. -::: +
+ + + + + + + + + + + + + +
+ + + + --- -## 20. ProtoCatalog: One Behavior Model +## 21. ProtoCatalog: One Behavior Model

Requirements, specifications, implementation, and tests drift when each role maintains a different model of the product.

@@ -219,7 +335,7 @@ BDD is the communication protocol. The catalog is the living product knowledge i --- -## 21. Progress Becomes Observable +## 22. Progress Becomes Observable

A feature branch is visible in the catalog while it belongs to an experiment and its strategic hypothesis.

@@ -296,7 +412,7 @@ BDD is the communication protocol. The catalog is the living product knowledge i --- -## 22. Composer: Architecture as an Experiment System +## 23. Composer: Architecture as an Experiment System

Composer creates an experimental boundary inside the existing system before a migration program exists.

@@ -356,7 +472,7 @@ BDD is the communication protocol. The catalog is the living product knowledge i --- -## 23. Storybook: UX Communication Layer +## 24. Storybook: UX Communication Layer

Storybook turns frontend intent into an executable product contract before productive backends or runtime integration exist.

@@ -419,7 +535,7 @@ Storybook is not a visual gallery. It is the quality gate where UI becomes negot --- -## 24. How Shared Artifacts Stay Alive +## 25. How Shared Artifacts Stay Alive

The artifact defines shared meaning. The tooling keeps it connected, executable, and open to validation.

@@ -437,10 +553,10 @@ Noesis
Strategy Strategy Topic + KPI Tree -Strategic intent remains connected to measurable outcomes and portfolio governance. +Strategic intent remains connected to financial outcomes, operational drivers, and technical signals.
Enforced by -Protopipe Cockpit +KPI Tree + Protopipe Cockpit
diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd index 6cbea65..d7879b4 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/04-act-consulting-entry.qmd @@ -2,7 +2,7 @@ --- -## 25. Ideal Entry +## 26. Ideal Entry

Transformation becomes actionable when executive legitimacy meets operational reality.

@@ -56,7 +56,7 @@ Top-down legitimacy. Bottom-up reality. Evidence-driven expansion. --- -## 26. Transformation Pressure Point +## 27. Transformation Pressure Point

Do not sell a transformation framework. Operationalize a strategic pain the organization already feels.

@@ -105,7 +105,7 @@ The entry point is credible when leadership can name the pain, teams recognize i --- -## 27. Operational Entry +## 28. Operational Entry

Operational excellence can earn strategic access, but only when observed friction is translated into visible impact.

@@ -154,7 +154,7 @@ Observable operational impact earns the right to address structural causes. --- -## 28. High-Risk Feature +## 29. High-Risk Feature

The first engagement is deliberately small, production-relevant, and designed to earn the next decision.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd new file mode 100644 index 0000000..796b721 --- /dev/null +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd @@ -0,0 +1,107 @@ +# Ecosystem Extensions {.section .neutral-section} + +

Optional capabilities that expand the evidence and governance around the Protopipe core.

+ +--- + +## 30. External Reality Signals + +

Optional metric providers can enrich the KPI Tree with market evidence that the organization cannot produce internally.

+ +
Optional SaaS Add-on
+ +
+
+External metric provider +Sellytics +

A potential ecosystem partner for continuously supplied external market and commercial signals.

+sellytics.com +
+ +
+ +
+Protopipe signal contract +Source · timestamp · confidence · KPI relation +
+Normalized +Traceable +Comparable +Challengeable +
+
+ +
+ +
+Core platform +Reality Signal Matrix + KPI Tree +

External evidence can support or contradict a strategy, but it never replaces an accountable decision.

+
+
+ +
+Core: Protopipe accepts attributable reality signals. +Add-on: A provider supplies and maintains external evidence as a service. +
+ +--- + +## 31. Synesis: Deliberation with Memory + +

An optional deliberation platform can make perspectives, arguments, evidence, and unresolved conflict part of the decision record.

+ +
Optional Governance Add-on · MVP Concept
+ +
+
+Participants enter with context +
+PerspectiveWhich reality do I represent? +PositionWhat do I currently support? +HypothesisWhat would change my mind? +
+
+ +
+ +
+Structured deliberation +Claims · evidence · alternatives · consent +
+AI summarizes, clusters arguments, detects repetition, and points new participants to the existing discourse. +
+
+ +
+ +
+Canonical decision memory +
+Convergence status +Reasoned vetoes +Open assumptions +Decision rationale +
+
+
+ +
+
+Habermas +Target model +Understanding through reasoned, challengeable argument. +
+
+Luhmann +Threat model +Power, system logic, and self-reference remain explicit risks. +
+
+Protopipe +Decision integration +The resulting rationale links to strategy, hypothesis, experiment, and KPI Tree. +
+
+ +

Source: Synesis – Diskursplattform für konvergente Entscheidungsfindung, internal MVP canvas.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index c296e8d..52a8d48 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -2,7 +2,7 @@ --- -## 29. Shared Reality. Faster Learning. +## 32. Shared Reality. Faster Learning.

Protopipe turns transformation from a program of promises into an observable sequence of decisions.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd index 903d64b..51de894 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/index.qmd @@ -19,4 +19,6 @@ format: {{< include chapters/04-act-consulting-entry.qmd >}} +{{< include chapters/05-act-extensions.qmd >}} + {{< include chapters/06-act-vision.qmd >}} diff --git a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss index 3ad564f..da974e4 100644 --- a/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss +++ b/dist/presentations/protopipe-enterprise-pitch/theme/protopipe.scss @@ -1262,6 +1262,293 @@ $mainFontSize: 34px; opacity: 0.32; } +.kpi-backbone { + display: grid; + grid-template-columns: minmax(0, 1.7fr) minmax(320px, 0.72fr); + gap: 0.85rem; + max-width: 1320px; + margin-top: 0.8rem; +} + +.kpi-tree { + display: flex; + flex-direction: column; + align-items: center; + min-width: 0; + border: 1px solid rgba(246, 197, 111, 0.34); + border-radius: 8px; + padding: 0.62rem; + background: rgba(246, 197, 111, 0.035); +} + +.kpi-level-row { + display: grid; + width: 100%; + gap: 0.48rem; +} + +.kpi-level-row.business { + grid-template-columns: repeat(2, minmax(0, 1fr)); +} + +.kpi-level-row.signals { + grid-template-columns: repeat(3, minmax(0, 1fr)); +} + +.kpi-level { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 7px; + padding: 0.5rem 0.58rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.7); + font-size: 0.37em; +} + +.kpi-level.outcome { + width: min(540px, 72%); + border-color: rgba(246, 197, 111, 0.7); + text-align: center; + background: rgba(246, 197, 111, 0.09); +} + +.kpi-level.experiment { + border-color: rgba(247, 67, 110, 0.72); + background: rgba(247, 67, 110, 0.07); +} + +.kpi-level span { + display: block; + margin-bottom: 0.2rem; + color: var(--pp-learning); + font-size: 0.78em; + font-weight: 850; + text-transform: uppercase; +} + +.kpi-level.experiment span { + color: var(--pp-focus); +} + +.kpi-level strong, +.kpi-level small { + display: block; +} + +.kpi-level strong { + color: var(--pp-text); + font-size: 1.12em; + line-height: 1.08; +} + +.kpi-level small { + margin-top: 0.25rem; + color: var(--pp-dim); + line-height: 1.15; +} + +.kpi-connector { + height: 25px; + color: var(--pp-learning); + font-size: 0.58em; + font-weight: 850; + line-height: 25px; +} + +.cfo-model { + display: flex; + flex-direction: column; + min-width: 0; + border: 1px solid rgba(246, 197, 111, 0.42); + border-top: 4px solid var(--pp-learning); + border-radius: 8px; + padding: 0.68rem; + background: rgba(246, 197, 111, 0.055); +} + +.cfo-model > span, +.feedback-source span, +.feedback-gate span, +.feedback-core span, +.feedback-surface span, +.external-provider > span, +.external-contract > span, +.external-destination > span, +.synesis-input > span, +.synesis-core > span, +.synesis-output > span { + display: block; + color: var(--pp-learning); + font-size: 0.31em; + font-weight: 850; + text-transform: uppercase; +} + +.cfo-model > strong { + margin: 0.35rem 0 0.58rem; + color: var(--pp-text); + font-size: 0.52em; + line-height: 1.12; +} + +.cfo-questions { + display: grid; + gap: 0.38rem; +} + +.cfo-questions > p { + display: contents; +} + +.cfo-questions i { + border-left: 2px solid rgba(246, 197, 111, 0.55); + padding: 0.28rem 0.4rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.48); + font-size: 0.33em; + font-style: normal; + line-height: 1.15; +} + +.cfo-decision { + margin-top: auto; + border-top: 1px solid rgba(246, 197, 111, 0.35); + padding-top: 0.55rem; + color: var(--pp-learning); + font-size: 0.36em; + font-weight: 850; + text-align: center; +} + +.kpi-punchline, +.feedback-punchline { + max-width: 1320px; + margin-top: 0.62rem; + border-left: 4px solid var(--pp-learning); + padding: 0.55rem 0.72rem; + color: var(--pp-text); + background: rgba(246, 197, 111, 0.065); + font-size: 0.5em; + font-weight: 780; +} + +.reality-feedback { + display: grid; + grid-template-columns: minmax(0, 1.2fr) 34px minmax(0, 0.8fr) 34px minmax(0, 0.68fr) 34px minmax(0, 0.9fr); + align-items: stretch; + gap: 0.3rem; + max-width: 1340px; + margin-top: 0.95rem; +} + +.feedback-inputs { + display: grid; + gap: 0.35rem; +} + +.feedback-source, +.feedback-gate, +.feedback-core, +.feedback-surface { + min-width: 0; + border: 1px solid var(--pp-line); + border-radius: 7px; + padding: 0.5rem; + background: rgba(255, 255, 255, 0.035); +} + +.feedback-source strong, +.feedback-gate strong, +.feedback-core strong, +.feedback-surface strong, +.feedback-gate small, +.feedback-core small, +.feedback-surface small { + display: block; +} + +.feedback-source strong, +.feedback-gate strong, +.feedback-core strong, +.feedback-surface strong { + margin-top: 0.22rem; + color: var(--pp-text); + font-size: 0.37em; + line-height: 1.12; +} + +.feedback-gate, +.feedback-core { + border-color: rgba(246, 197, 111, 0.5); + background: rgba(246, 197, 111, 0.055); +} + +.feedback-core { + display: flex; + flex-direction: column; + justify-content: center; + border-width: 2px; + text-align: center; +} + +.feedback-core strong { + color: var(--pp-learning); + font-size: 0.58em; +} + +.feedback-surface { + border-color: rgba(247, 67, 110, 0.5); + background: rgba(247, 67, 110, 0.05); +} + +.feedback-surface span { + color: var(--pp-focus); +} + +.feedback-gate small, +.feedback-core small, +.feedback-surface small { + margin-top: 0.35rem; + color: var(--pp-dim); + font-size: 0.29em; + line-height: 1.16; +} + +.feedback-arrow, +.external-arrow, +.synesis-arrow { + display: flex; + align-items: center; + justify-content: center; + color: var(--pp-focus); + font-size: 0.62em; + font-weight: 850; +} + +.feedback-return { + display: grid; + grid-template-columns: auto 30px auto 30px auto 30px auto; + align-items: center; + gap: 0.3rem; + max-width: 1000px; + margin: 0.68rem auto 0; + border: 1px solid rgba(246, 197, 111, 0.42); + border-radius: 7px; + padding: 0.48rem 0.65rem; + color: var(--pp-muted); + background: rgba(246, 197, 111, 0.04); + font-size: 0.36em; + text-align: center; +} + +.feedback-return b { + color: var(--pp-learning); +} + +.feedback-return strong { + color: var(--pp-learning); +} + .catalog-model { display: grid; grid-template-columns: minmax(0, 0.95fr) 70px minmax(0, 1.15fr); @@ -2504,6 +2791,216 @@ $mainFontSize: 34px; text-align: center; } +.extension-badge { + display: inline-block; + margin-top: 0.2rem; + border: 1px solid rgba(65, 214, 195, 0.55); + border-radius: 999px; + padding: 0.22rem 0.5rem; + color: var(--pp-accent); + background: rgba(65, 214, 195, 0.055); + font-size: 0.3em; + font-weight: 850; + text-transform: uppercase; +} + +.external-signals, +.synesis-model { + display: grid; + align-items: stretch; + gap: 0.55rem; + max-width: 1320px; + margin-top: 0.65rem; +} + +.external-signals { + grid-template-columns: minmax(0, 0.76fr) 45px minmax(0, 1.05fr) 45px minmax(0, 1fr); +} + +.external-provider, +.external-contract, +.external-destination, +.synesis-input, +.synesis-core, +.synesis-output { + min-width: 0; + min-height: 265px; + border: 1px solid var(--pp-line); + border-radius: 8px; + padding: 0.7rem; + background: rgba(255, 255, 255, 0.035); +} + +.external-provider { + border-top: 4px solid var(--pp-accent); +} + +.external-provider > span { + color: var(--pp-accent); +} + +.external-contract, +.external-destination { + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.04); +} + +.external-provider strong, +.external-contract strong, +.external-destination strong, +.synesis-input strong, +.synesis-core strong, +.synesis-output strong { + display: block; + margin-top: 0.42rem; + color: var(--pp-text); + font-size: 0.5em; + line-height: 1.1; +} + +.external-provider p, +.external-destination p { + margin: 0.55rem 0 0; + color: var(--pp-muted); + font-size: 0.34em; + line-height: 1.2; +} + +.external-provider a { + display: inline-block; + margin-top: 0.7rem; + color: var(--pp-accent); + font-size: 0.34em; +} + +.external-contract > div, +.synesis-input > div, +.synesis-output > div { + display: grid; + gap: 0.35rem; + margin-top: 0.65rem; +} + +.external-contract > div > p, +.synesis-input > div > p, +.synesis-output > div > p { + display: contents; +} + +.external-contract i, +.synesis-input i, +.synesis-output i { + border: 1px solid var(--pp-line); + border-radius: 5px; + padding: 0.34rem 0.42rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.48); + font-size: 0.32em; + font-style: normal; +} + +.extension-boundary { + display: flex; + gap: 0.6rem; + max-width: 1260px; + margin-top: 0.7rem; + border-left: 4px solid var(--pp-accent); + padding: 0.58rem 0.72rem; + color: var(--pp-muted); + background: rgba(65, 214, 195, 0.045); + font-size: 0.4em; +} + +.extension-boundary b { + color: var(--pp-text); +} + +.synesis-model { + grid-template-columns: minmax(0, 0.9fr) 45px minmax(0, 1.15fr) 45px minmax(0, 0.85fr); +} + +.synesis-input { + border-top: 4px solid var(--pp-accent); +} + +.synesis-input > span { + color: var(--pp-accent); +} + +.synesis-core { + border-top: 4px solid var(--pp-focus); + background: rgba(247, 67, 110, 0.045); +} + +.synesis-core > span { + color: var(--pp-focus); +} + +.synesis-output { + border-top: 4px solid var(--pp-learning); + background: rgba(246, 197, 111, 0.04); +} + +.synesis-ai { + margin-top: 0.72rem; + border-left: 3px solid var(--pp-focus); + padding: 0.46rem; + color: var(--pp-muted); + background: rgba(8, 26, 23, 0.52); + font-size: 0.33em; + line-height: 1.2; +} + +.synesis-integration { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.48rem; + max-width: 1320px; + margin-top: 0.62rem; +} + +.synesis-integration > div { + border: 1px solid var(--pp-line); + border-radius: 6px; + padding: 0.42rem 0.5rem; + background: rgba(255, 255, 255, 0.03); +} + +.synesis-integration > div.learning { + border-color: rgba(246, 197, 111, 0.48); + background: rgba(246, 197, 111, 0.04); +} + +.synesis-integration span, +.synesis-integration strong, +.synesis-integration small { + display: block; +} + +.synesis-integration span { + color: var(--pp-dim); + font-size: 0.28em; + font-weight: 850; + text-transform: uppercase; +} + +.synesis-integration > div.learning span { + color: var(--pp-learning); +} + +.synesis-integration strong { + margin-top: 0.16rem; + color: var(--pp-text); + font-size: 0.39em; +} + +.synesis-integration small { + margin-top: 0.2rem; + color: var(--pp-muted); + font-size: 0.28em; + line-height: 1.14; +} + .vision-close { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -2995,6 +3492,10 @@ $mainFontSize: 34px; .culture-examples, .noesis-levels, .cockpit-map, + .kpi-backbone, + .kpi-level-row, + .reality-feedback, + .feedback-return, .catalog-model, .catalog-trace-context, .catalog-feature, @@ -3010,6 +3511,9 @@ $mainFontSize: 34px; .mandate-constraints, .operational-entry, .operational-principles, + .external-signals, + .synesis-model, + .synesis-integration, .vision-close, .artifact-flow, .shared-reality-flow, @@ -3020,6 +3524,12 @@ $mainFontSize: 34px; grid-template-columns: 1fr; } + .feedback-arrow, + .external-arrow, + .synesis-arrow { + transform: rotate(90deg); + } + .golden-rings { width: min(520px, 78vw); } @@ -3156,7 +3666,6 @@ $mainFontSize: 34px; #title-slide { position: relative; - height: 100%; text-align: left; } From 8d7a5c4aef27c5d4aef85297c4ec472cc66caddf Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Thu, 11 Jun 2026 20:00:55 +0200 Subject: [PATCH 12/14] Vibecoding example and visual grammar for bpmns --- .../assets/diagrams/shared-reality-bpmn.svg | 23 +++++++++++-------- .../docs/deck-outline.md | 2 +- .../docs/diagram-strategy.md | 8 +++++++ .../chapters/02-act-gapless-org-learning.qmd | 6 ++--- .../guidelines/swimlane-visual-grammar.md | 11 +++++++++ 5 files changed, 36 insertions(+), 14 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg index 62b54cb..97dbea1 100644 --- a/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg +++ b/dist/presentations/protopipe-enterprise-pitch/assets/diagrams/shared-reality-bpmn.svg @@ -1,4 +1,4 @@ - + @@ -24,7 +24,8 @@ C-Level Product Ownership - Developers + Developers + & Analysts Learning Canonical @@ -36,8 +37,8 @@ - - + + @@ -45,14 +46,16 @@ Strategy Hypothesis Experiment - Development - Observation + Development + Analysis + metrics + context + e.g. weather - Decision - gate + Decision + gate @@ -67,8 +70,8 @@ - - + + diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 4e6078f..2ee072a 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -25,7 +25,7 @@ narrative. | Slides | Narrative Job | |---|---| | 09-11 | Move from problems to desired outcomes and normative mechanics. | -| 12 | Show the gapless organizational learning process across roles. | +| 12 | Show the gapless organizational learning process across roles, including analysis of experiment metrics and external influences. | | 13 | Introduce the visible artifacts handed from purpose through development. | ## Act 3: Enforcing Tools diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md index 0284304..e97237a 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/diagram-strategy.md @@ -24,6 +24,14 @@ The deck follows `doc/09_identity/guidelines/swimlane-visual-grammar.md`. Swimlanes are not decorative. They are the preferred visual language for showing where responsibility sits and how evidence moves. +## Legibility Checks + +- Keep every label fully inside its box, token, or decision gate. +- Leave enough space between connected elements for a clearly visible arrow + shaft, not only an arrowhead. +- Review diagrams at the rendered slide size. Source-level spacing can disappear + when Reveal.js scales an SVG into the deck. + ## Required Diagram Set - Organizational reality drift map diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd index d2eac17..4ccbcea 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/02-act-gapless-org-learning.qmd @@ -118,7 +118,7 @@ Experiments need accountable interpretation, not just technical execution. ```{=html}
-BPMN-style shared reality process across C-Level, Product Ownership, Developers, and Learning lanes +BPMN-style shared reality process across C-Level, Product Ownership, Developers and Analysts, and Learning lanes; analysis combines experiment metrics with external factors such as weather
``` @@ -143,8 +143,8 @@ Why, how, and what become a stable reference for strategic and product conversat
Strategy Strategy Topic + KPI Tree -Strategy replaces roadmap-only steering. KPI trees make business intent inspectable in ProtoPortfolio. -Visible as portfolio structure. +The KPI Tree relates operational and technical metrics to the business outcomes that matter to leadership. +Visible as causal business context.
diff --git a/doc/09_identity/guidelines/swimlane-visual-grammar.md b/doc/09_identity/guidelines/swimlane-visual-grammar.md index 15183f2..8f1f68c 100644 --- a/doc/09_identity/guidelines/swimlane-visual-grammar.md +++ b/doc/09_identity/guidelines/swimlane-visual-grammar.md @@ -25,6 +25,17 @@ Diese Datei beschreibt die visuelle Grammatik der Swimlanes in Protopipe. Ziel i | **Typografie** | Helvetica für Labels, Polentical für aktive Elemente oder States | | **Icons** | Minimalistisch, Fokus auf Bedeutung (z. B. „?“, „✔“, „↻“) | +### Lesbarkeit von Elementen und Übergängen + +- Texte müssen vollständig innerhalb ihrer Boxen, Tokens und Decision Gates + bleiben. Bei Platzmangel werden Texte gekürzt, umgebrochen oder das Element + vergrößert. +- Übergangspfeile benötigen zwischen zwei Elementen einen klar sichtbaren + Schaft. Eine Pfeilspitze allein reicht nicht aus, um einen Handover eindeutig + zu zeigen. +- Abstände und Schriftgrößen werden in der tatsächlichen Ausgabegröße geprüft, + nicht nur in der editierbaren Diagrammquelle. + --- ## 🔁 Anwendungskontexte From 79afa942c2b9aeddc2826666ee78e845f70f179a Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Tue, 16 Jun 2026 17:44:12 +0200 Subject: [PATCH 13/14] more addons --- .../docs/deck-outline.md | 6 +- .../chapters/05-act-extensions.qmd | 92 ++++++++++++++++++- .../presentation/chapters/06-act-vision.qmd | 2 +- 3 files changed, 96 insertions(+), 4 deletions(-) diff --git a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md index 2ee072a..bc3f97d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md +++ b/dist/presentations/protopipe-enterprise-pitch/docs/deck-outline.md @@ -56,13 +56,15 @@ narrative. | Slides | Narrative Job | |---|---| | 30 | Position external metric providers such as Sellytics as optional sources of attributable market evidence. | -| 31 | Introduce Synesis as an optional deliberation and decision-memory add-on. | +| 31 | Instrument physical retail through a provider such as Crosscan and distinguish store behavior from external context such as weather. | +| 32 | Connect paperless, observable industrial execution through a provider such as ekko to strategic hypotheses, KPIs, and learning. | +| 33 | Introduce Synesis as an optional deliberation and decision-memory add-on. | ## Act 5: Vision | Slides | Narrative Job | |---|---| -| 32 | Close with shared organizational reality, short feedback loops, and canonical learning. | +| 34 | Close with shared organizational reality, short feedback loops, and canonical learning. | Architecture, observability, runtime contracts, and implementation mechanics move into a dedicated architectural whitepaper rather than the introductory diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd index 796b721..a381653 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd @@ -47,7 +47,97 @@ --- -## 31. Synesis: Deliberation with Memory +## 31. Google Analytics for Physical Retail + +

Instrument the physical store like an online product: connect experiments to observed customer behavior and business outcomes.

+ +
Optional Retail Analytics Add-on · Potential Partner
+ +
+
+Store reality provider +Crosscan +

Potential ecosystem partner for measuring visitor frequency, passers-by, dwell time, movement patterns, and demographic signals.

+crosscan.com +
+ +
+ +
+Experiment context +Store · time · intervention · comparison group +
+Footfall + conversion +Dwell time + movement +POS + staffing data +Weather + location context +
+
+ +
+ +
+Protopipe decision model +Reality Signal Matrix + KPI Tree +

Store behavior fills the internal quadrants. Weather and location context explain external influence without being mistaken for experiment impact.

+
+
+ +
+Experiment: Change a store surface, process, campaign, or staffing model. +Decision: Compare attributed behavior and business impact before scaling. +
+ +

Potential partner capability reference: Crosscan retail analytics.

+ +--- + +## 32. Industry 5.0: Strategy Reaches the Shopfloor + +

Digitization makes industrial work observable. Protopipe turns that operational reality into strategic learning.

+ +
Optional Industrial Operations Add-on · Potential Partner
+ +
+
+Shopfloor execution provider +ekko +

Potential ecosystem partner for paperless picking, eKanban, locationing, digital labeling, and configurable industrial workflows.

+ekko.io +
+ +
+ +
+Operational evidence +Order · step · material · location · outcome +
+Digital instructions +Verified process events +Errors + cycle times +REST · webhooks · MQTT +
+
+ +
+ +
+Augmented strategy +Hypothesis + KPI Tree + Cockpit +

Protopipe relates deterministic process evidence to quality, throughput, resilience, worker experience, and strategic outcomes.

+
+
+ +
+ekko: Make production, warehouse, and logistics processes digital, traceable, and testable. +Protopipe: Decide which operational change creates strategic value and whether the evidence supports scaling it. +
+ +

Capability references: ekko shopfloor digitization and European Commission Industry 5.0.

+ +--- + +## 33. Synesis: Deliberation with Memory

An optional deliberation platform can make perspectives, arguments, evidence, and unresolved conflict part of the decision record.

diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd index 52a8d48..6005239 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/06-act-vision.qmd @@ -2,7 +2,7 @@ --- -## 32. Shared Reality. Faster Learning. +## 34. Shared Reality. Faster Learning.

Protopipe turns transformation from a program of promises into an observable sequence of decisions.

From 208385cbf842b807c070a4882561df9748738660 Mon Sep 17 00:00:00 2001 From: Alwin Mark Date: Fri, 10 Jul 2026 17:22:56 +0200 Subject: [PATCH 14/14] External Data Marketplace --- .agents/noesis-first.md | 21 ++ .../chapters/05-act-extensions.qmd | 72 ++++- .../external-data-marketplace-whitepaper.md | 270 ++++++++++++++++++ ...l-evidence-is-costly-and-hard-to-verify.md | 92 ++++++ .../no-external-signal-without-provenance.md | 126 ++++++++ .../external-evidence-context.md | 51 ++++ 6 files changed, 618 insertions(+), 14 deletions(-) create mode 100644 .agents/noesis-first.md create mode 100644 dist/publications/external-data-marketplace-whitepaper.md create mode 100644 doc/05_problems/external-evidence-is-costly-and-hard-to-verify.md create mode 100644 doc/07_mechanics/no-external-signal-without-provenance.md create mode 100644 doc/08_capabilities/external-evidence-context.md diff --git a/.agents/noesis-first.md b/.agents/noesis-first.md new file mode 100644 index 0000000..21b5388 --- /dev/null +++ b/.agents/noesis-first.md @@ -0,0 +1,21 @@ +# Noesis-First Authoring Rule + +When working in this repository, treat `doc/` as the canonical Noesis source +and `dist/` as derived material. + +Rules: + +- Write canonical concepts in English. +- Add or refine Noesis entries before creating presentations, publications, + whitepapers, mockups, or other `dist/` artifacts. +- Do not introduce new canonical concepts directly in `dist/`. +- Keep Noesis declarative. It may define problems, desired outcomes, + mechanics, capabilities, language, and constraints. +- Do not put implementation decisions, product roadmap choices, concrete + architecture decisions, or vendor selections into Noesis. +- If an idea implies both a problem and a solution, document the problem first, + then derive mechanics or capabilities, and only afterwards create downstream + material outside Noesis. +- Blockchain, marketplace, oracle, provider, token, or storage technologies are + implementation candidates unless the user explicitly asks for downstream + `dist/` material. diff --git a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd index a381653..0c0ed4d 100644 --- a/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd +++ b/dist/presentations/protopipe-enterprise-pitch/presentation/chapters/05-act-extensions.qmd @@ -4,30 +4,30 @@ --- -## 30. External Reality Signals +## 30. Direct External Signal Feed -

Optional metric providers can enrich the KPI Tree with market evidence that the organization cannot produce internally.

+

A single trusted provider can enrich Protopipe with external evidence through a direct, bounded integration.

-
Optional SaaS Add-on
+
Optional SaaS Add-on · Direct Provider Integration
-External metric provider +Curated provider Sellytics -

A potential ecosystem partner for continuously supplied external market and commercial signals.

+

A potential ecosystem partner for continuously supplied commercial signals such as marketplace prices, rankings, ratings, and reviews.

sellytics.com
-Protopipe signal contract +Integration contract Source · timestamp · confidence · KPI relation
+Provider-specific +API-backed Normalized Traceable -Comparable -Challengeable
@@ -36,18 +36,62 @@
Core platform Reality Signal Matrix + KPI Tree -

External evidence can support or contradict a strategy, but it never replaces an accountable decision.

+

Protopipe treats the feed as attributable evidence for hypotheses, KPIs, experiments, and decisions.

-Core: Protopipe accepts attributable reality signals. -Add-on: A provider supplies and maintains external evidence as a service. +Direct feed: One provider supplies a known class of external signals through an integration contract. +Protopipe: Preserves source, timestamp, confidence, and KPI relation.
--- -## 31. Google Analytics for Physical Retail +## 31. External Data Marketplace Vision + +

External evidence is costly to collect and hard to verify. A marketplace can make that work attributable, priced, comparable, and challengeable.

+ +
Derived from Noesis · Optional Ecosystem Layer
+ +
+
+Provider ecosystem +Sellytics + specialized providers +

Multiple providers publish costly external evidence under comparable topic contracts.

+
+ +
+ +
+Independent market layer +Topic contract · provenance · access · reputation +
+Pricing + licensing +Schema-bound topics +Signed commitments +Topic-level reputation +
+
+ +
+ +
+Protopipe subscription +External Evidence Context +

Protopipe consumes marketplace evidence with provenance, confidence, correction status, and dispute history.

+
+
+ +
+Marketplace: Operate provider identity, payment, access, commitments, reputation, corrections, and disputes. +Protopipe: Stays out of marketplace operation and uses the evidence context for strategic learning. +
+ +

Derived from Noesis: External Evidence Is Costly and Hard to Verify, No External Signal without Provenance, and External Evidence Context. Publication reference: External Data Marketplace Whitepaper.

+ +--- + +## 32. Google Analytics for Physical Retail

Instrument the physical store like an online product: connect experiments to observed customer behavior and business outcomes.

@@ -92,7 +136,7 @@ --- -## 32. Industry 5.0: Strategy Reaches the Shopfloor +## 33. Industry 5.0: Strategy Reaches the Shopfloor

Digitization makes industrial work observable. Protopipe turns that operational reality into strategic learning.

@@ -137,7 +181,7 @@ --- -## 33. Synesis: Deliberation with Memory +## 34. Synesis: Deliberation with Memory

An optional deliberation platform can make perspectives, arguments, evidence, and unresolved conflict part of the decision record.

diff --git a/dist/publications/external-data-marketplace-whitepaper.md b/dist/publications/external-data-marketplace-whitepaper.md new file mode 100644 index 0000000..486d9d5 --- /dev/null +++ b/dist/publications/external-data-marketplace-whitepaper.md @@ -0,0 +1,270 @@ +# External Data Marketplace Whitepaper + +Derived from Protopipe Noesis + +Status: draft +Date: 2026-07-07 + +## Executive Summary + +Protopipe needs external evidence to connect strategy work to market reality. Internal telemetry can explain what happened inside the organization. It cannot, by itself, explain competitor movement, marketplace pricing, product rankings, customer review dynamics, weather effects, supplier signals, local footfall, industrial sensor states, public events, or regulatory changes. + +The problem is not only access. External data is expensive to collect and often harder to verify. A provider may invest in scraping infrastructure, platform access, sensors, normalization, latency management, data cleaning, and domain expertise. A buyer still needs to know whether the data is scoped correctly, measured consistently, attributable, timely, corrected when wrong, and reliable for the specific topic in question. + +The marketplace vision is an ecosystem layer around Protopipe. It lets specialized providers publish schema-bound external evidence, sell access to it, build topic-specific reputation, and expose correction and dispute history. Protopipe remains the strategic learning platform. It consumes external evidence context and relates it to hypotheses, KPI trees, experiments, and decision records. + +This is not a claim that blockchain turns data into truth. Blockchain or similar verifiable infrastructure can prove integrity, provenance, timestamps, commitments, licensing, payment, and dispute outcomes. Truth remains domain-specific and must be evaluated through validation rules, reference sources, aggregation, corrections, expert review, and governance. + +## Noesis Basis + +This publication is downstream material. It derives from three Noesis entries: + +- `doc/05_problems/external-evidence-is-costly-and-hard-to-verify.md` +- `doc/07_mechanics/no-external-signal-without-provenance.md` +- `doc/08_capabilities/external-evidence-context.md` + +The canonical constraint is: + +> No external signal should enter strategic reasoning without provenance. + +For Protopipe, provenance includes source identity, observation time, collection time, scope, method, schema, confidence, verification status, correction history, dispute status, and relation to the relevant hypothesis, KPI, experiment, or decision record. + +## Problem + +External evidence has two cost structures. + +Collection cost includes access, instrumentation, platform limits, sensor deployment, normalization, coverage, cleaning, latency, and operational continuity. + +Verification cost includes provenance, schema clarity, source comparison, historical accuracy, correction handling, bias detection, dispute handling, and domain-specific validation. + +These costs are usually hidden once data appears inside a dashboard. A number in a KPI tree can look precise even when the underlying signal is ambiguous. A provider can be reliable in one topic and weak in another. A corrected data point can overwrite the earlier evidence state that shaped a prior decision. A technically valid hash can prove that a dataset did not change, but not that the dataset was true. + +## Marketplace Thesis + +The marketplace should make collection and verification explicit economic objects. + +Providers should be able to monetize costly external evidence. Buyers should be able to compare providers by topic, method, price, SLA, latency, dispute history, and reputation. Protopipe should be able to consume the evidence without absorbing the marketplace into its core. + +The marketplace handles: + +- provider identity and attestations +- topic definitions and schemas +- data commitments and timestamps +- access control and licensing +- pricing and settlement +- topic-level reputation +- correction events +- dispute history +- optional oracle aggregation + +Protopipe handles: + +- external evidence context +- KPI relation +- hypothesis relation +- experiment relation +- decision record relation +- confidence-aware strategic reasoning + +## Target Architecture + +| Layer | Responsibility | Notes | +|---|---|---| +| Provider Layer | Identify and attest data providers | Wallet, public key, organization identity, optional certification | +| Topic Layer | Define exactly what a signal means | Topic ID, schema, unit, market, region, time window, method, validation rules | +| Data Layer | Store and deliver raw data | API, database, object storage, IPFS, Arweave, or other off-chain storage | +| Commitment Layer | Prove integrity and timestamp | Hashes, Merkle roots, provider signatures, storage references | +| Access Layer | Meter and authorize use | API keys, capability tokens, license tokens, data tokens, proxy access | +| Reputation Layer | Track reliability by topic | Accuracy, latency, availability, corrections, disputes, slashing | +| Dispute Layer | Challenge and correct evidence | Evidence submission, arbitration, refunds, penalties, correction events | +| Protopipe Integration Layer | Convert data into decision evidence | External Evidence Context inside Reality Signal Matrix and KPI Tree | + +## Marketplace Mechanics + +### Topic Contracts + +Data must not be sold as vague categories such as "weather", "news", or "market data". Each sellable topic needs an explicit contract. + +Example topic fields: + +- topic ID +- data type +- unit +- market, venue, geography, asset, or physical location +- observation window +- collection method +- source class +- schema version +- quality flags +- validation rules +- allowed correction process + +For Sellytics-like Amazon market data, a topic could describe competitor price for a specific ASIN, marketplace, seller set, currency, availability rule, and observation window. + +### Provider Reputation by Topic + +Provider reputation must be topic-specific. A provider can be strong for Amazon marketplace data and irrelevant for weather data. + +Possible scoring model: + +```text +topic_reputation = + 0.30 * historical_accuracy ++ 0.20 * availability_sla ++ 0.15 * latency_sla ++ 0.15 * correction_quality ++ 0.10 * dispute_outcomes ++ 0.10 * source_diversity +- slashing_penalties +``` + +The score is not a truth score. It is a decision support signal that describes historical provider behavior in a defined topic domain. + +### Commitments and Integrity + +Raw datasets should normally stay off-chain. The marketplace stores commitments on-chain or in another verifiable ledger: + +- provider ID +- topic ID +- schema version +- observation timestamp +- publication timestamp +- dataset hash or Merkle root +- storage reference +- provider signature +- license terms +- price or subscription terms +- dispute window + +This proves that a provider committed to a specific dataset at a specific time. It does not prove that the dataset accurately described reality. + +### Access and Payment + +After payment, the buyer should not receive the provider's private key. The buyer receives a scoped access mechanism: + +- dataset-specific decryption key +- temporary API token +- capability token +- license token +- data token +- access through a verifying proxy + +Access should be auditable, revocable where possible, and tied to the license terms of the purchased topic or dataset. + +### Corrections and Disputes + +Corrections must be append-only. Old evidence should not disappear, because prior decisions may have depended on it. + +A dispute flow should define: + +- who can challenge a dataset +- dispute window +- required evidence +- arbitration path +- automatic checks versus expert review +- rating impact +- refund conditions +- provider penalty or slashing conditions +- correction publication rules + +### Oracle Aggregation + +Some topics may also expose aggregated values for smart contracts, for example a market price, weather measure, settlement result, or event outcome. + +Aggregation options include: + +- median +- weighted median +- VWAP +- multi-source consensus +- reputation-weighted calculation +- optimistic assertion with dispute window + +Oracle values are downstream products of the marketplace. They should not replace the richer evidence context that Protopipe needs for strategic learning. + +## Data Classes + +| Data class | Collection difficulty | Verification difficulty | Marketplace emphasis | +|---|---|---|---| +| Marketplace prices | Medium to high | Medium | Time window, seller set, availability, snapshot integrity | +| Product rankings | High | Medium to high | Search context, geography, personalization controls | +| Reviews and ratings | Medium | Medium | Source, time, moderation effects, correction history | +| Weather data | Medium | Low to medium | Station/source identity, local granularity, measurement method | +| News and events | High | High | Source ranking, evidence trail, delayed correction | +| Industrial sensor data | High | High | Sensor identity, calibration, hardware attestation, anomaly checks | +| Footfall and retail behavior | High | Medium | Sensor method, privacy constraints, aggregation quality | +| Financial market prices | Medium to high | Low to medium | Venue set, latency, liquidity, aggregation method | + +## Technology Landscape + +This section compares current technologies with the Protopipe marketplace vision. + +| Technology | Current strength | Gap against the vision | Fit | +|---|---|---|---| +| Sellytics | Amazon market data API for competitor prices, product details, rankings, ratings, and reviews | Provider-specific; does not by itself define a multi-provider reputation, dispute, and evidence market | Strong first provider candidate for commercial marketplace signals | +| Chainlink Data Streams | Low-latency off-chain market data with on-chain verification, pull-based access, report schemas, REST/WebSocket/SDKs | Primarily oracle/data-stream infrastructure; not a Protopipe evidence marketplace or decision context | Strong reference for verifiable data streams and on-chain report verification | +| Pyth Price Feeds | Real-time financial data from many first-party providers, verified on many blockchains, push and pull updates | Focused on financial market data, not arbitrary enterprise evidence topics | Strong reference for publisher networks and low-latency financial feeds | +| Ocean Protocol | Data NFTs and ERC20 datatokens as access mechanisms for data assets | Web3-native data asset model; does not solve Protopipe-specific evidence context by itself | Useful reference for licensing and tokenized access | +| UMA Optimistic Oracle | Optimistic assertion and dispute pattern for subjective or event-based data | Better for challengeable assertions than high-volume raw data marketplaces | Useful reference for dispute windows and arbitration mechanics | +| IPFS | Content-addressed, verifiable data addressing and transfer | Protocol, not a storage provider; does not handle payment, SLA, reputation, or truth | Useful for dataset references and content integrity | +| Lit Protocol | Chain-secured programmable runtime, conditional signing, encrypted secrets, custom oracles | Separate trust and operations model; enterprise governance must be evaluated | Useful for controlled access, scoped keys, and programmable verification | + +## Recommended Direction + +The first version should not start with a full token economy. + +Recommended sequence: + +1. Define the Protopipe External Evidence Contract. +2. Integrate one trusted provider such as Sellytics as a curated evidence source. +3. Require source, timestamp, scope, method, schema, confidence, and correction status for every imported external signal. +4. Add signed datasets and hashes before adding payment or staking. +5. Introduce topic-level provider reputation once multiple providers or repeated observations exist. +6. Add dispute and correction workflows before claiming marketplace trust. +7. Consider blockchain commitments, access tokens, or oracle aggregation only where multi-party trust boundaries justify them. + +## Example Evidence Contract + +```json +{ + "signalId": "external.amazon.de.price.asin.B0EXAMPLE.2026-07-07T10:00Z", + "providerId": "sellytics", + "topicId": "amazon.de.price.competitor.asin", + "schemaVersion": "1.0.0", + "observedAt": "2026-07-07T10:00:00Z", + "collectedAt": "2026-07-07T10:01:22Z", + "scope": { + "marketplace": "amazon.de", + "assetType": "asin", + "assetId": "B0EXAMPLE", + "currency": "EUR" + }, + "method": "observed_offer_price_snapshot", + "confidence": "provider-verified", + "verificationStatus": "not-disputed", + "integrity": { + "hash": "sha256:...", + "signature": "..." + }, + "correctionOf": null, + "kpiRelation": "competitor_price_delta" +} +``` + +## Critical Boundary + +The marketplace can make external evidence more accountable. It cannot remove the need for judgment. + +Integrity is not truth. Provenance is not accuracy. Reputation is not certainty. Access control is not compliance. Aggregation is not context. + +Protopipe should use the marketplace as an evidence supply layer, not as a substitute for accountable decision-making. + +## Sources + +- Sellytics: +- Chainlink Data Streams: +- Pyth Price Feeds: +- Ocean Protocol Datatokens: +- UMA Optimistic Oracle: +- IPFS Concepts: +- Lit Protocol: diff --git a/doc/05_problems/external-evidence-is-costly-and-hard-to-verify.md b/doc/05_problems/external-evidence-is-costly-and-hard-to-verify.md new file mode 100644 index 0000000..c4f6d0a --- /dev/null +++ b/doc/05_problems/external-evidence-is-costly-and-hard-to-verify.md @@ -0,0 +1,92 @@ +# External Evidence Is Costly and Hard to Verify + +## The Problem + +Protopipe needs external reality signals to reason about strategy, markets, +competition, customers, supply chains, and operational environments. + +Many of these signals are expensive to collect and even harder to verify. +They often originate outside the organization, outside the product system, +and outside the governance structures that normally make internal data +auditable. + +Examples include competitor prices, marketplace rankings, product reviews, +weather data, local footfall, industrial sensor readings, news events, +commodity prices, supplier signals, and regulatory updates. + +The organization may be able to buy or retrieve such data, but it often +cannot easily know whether the data is complete, timely, correctly scoped, +methodologically sound, or still trustworthy after corrections emerge. + +--- + +## Why This Happens + +External evidence has two separate cost structures. + +Collection cost comes from access, instrumentation, normalization, latency, +coverage, data cleaning, and ongoing operation. A provider may need platform +access, scraping infrastructure, sensors, data partnerships, domain expertise, +or continuous monitoring to produce the signal at all. + +Verification cost comes from provenance, schema clarity, source comparison, +historical accuracy, correction handling, bias detection, dispute handling, +and domain-specific validation. The more consequential a decision becomes, +the more important this second cost becomes. + +The difficulty is amplified because external data is often contextual. +A price depends on market, region, time, seller set, availability, campaign +state, and measurement method. A sensor value depends on calibration, +placement, hardware integrity, and local conditions. A news signal may only +become clearly true or false after later evidence appears. + +--- + +## Observable Symptoms + +- Teams use external data without knowing how it was collected. +- Metrics with similar names are treated as comparable even when their + measurement methods differ. +- Decisions cite external signals without preserving source, timestamp, + schema, or confidence. +- Providers are trusted globally although their reliability is topic-specific. +- Corrections overwrite earlier assumptions instead of becoming visible in + the decision history. +- Data purchases are evaluated by availability and price, but not by + verifiability or dispute history. +- Expensive external evidence becomes a one-off artifact instead of a reusable + signal with an accountable lifecycle. + +--- + +## Why This Blocks Fast Delivery and Learning + +Fast learning depends on feedback that can be trusted enough to act on and +challenged enough to improve. + +When external evidence is opaque, teams either overtrust it or ignore it. +Both outcomes slow learning. Overtrust creates false certainty and can push +strategy in the wrong direction. Undertrust forces teams to repeat collection +work, delay decisions, or fall back to internal data that cannot explain the +external reality the strategy depends on. + +Without provenance, schema discipline, correction history, and confidence +context, Protopipe cannot reliably connect external evidence to hypotheses, +experiments, KPI trees, and decision records. + +--- + +## Why This Is a Systemic Problem + +The problem recurs whenever strategic learning crosses organizational +boundaries. + +Internal systems can be instrumented and governed directly. External reality +cannot. The organization must rely on providers, markets, platforms, sensors, +or public sources whose incentives, methods, and failure modes differ from +its own. + +This makes external evidence structurally fragile. The issue is not a missing +integration or a single unreliable provider. The issue is that valuable +external data requires both collection and verification, and those two forms +of work are usually hidden from the decision context. diff --git a/doc/07_mechanics/no-external-signal-without-provenance.md b/doc/07_mechanics/no-external-signal-without-provenance.md new file mode 100644 index 0000000..e28fcee --- /dev/null +++ b/doc/07_mechanics/no-external-signal-without-provenance.md @@ -0,0 +1,126 @@ +# Mechanic: No External Signal without Provenance + +## Intent + +This mechanic prevents external evidence from entering strategic reasoning as +anonymous or context-free data. It exists because external signals are often +expensive to collect, hard to verify, and easy to overtrust once they appear +inside a dashboard or decision record. + +--- + +## Problems Addressed + +- External Evidence Is Costly and Hard to Verify + +--- + +## Desired Outcomes Supported + +- Strategy can be challenged with external reality. +- Decisions can explain which evidence was available at the time. +- External evidence can be reused without losing its collection and confidence + context. + +--- + +## Enforced Behavior + +This mechanic enforces that: + +- every external signal carries source, timestamp, scope, and measurement + context +- every external signal is distinguishable from internal telemetry +- every external signal preserves its confidence and verification status +- corrections and disputes are attached instead of silently replacing prior + evidence +- provider reliability is evaluated in relation to the specific signal domain + +If this behavior is not enforced, the mechanic is considered ineffective. + +--- + +## Structural Constraints + +- External data without provenance cannot be treated as decision evidence. +- A metric name alone is not enough to make two signals comparable. +- Provider trust cannot be assumed globally when reliability is topic-specific. +- Corrected external data must not erase the evidence state that shaped prior + decisions. + +Constraints are intentional. +They exist to prevent undesired behavior. + +--- + +## Mechanic Boundary + +This mechanic: + +- is responsible for making external evidence attributable, contextual, and + challengeable +- is responsible for preserving the difference between integrity, provenance, + confidence, and truth +- explicitly does not decide which provider, marketplace, oracle, database, or + blockchain technology should be used +- explicitly does not claim that external evidence becomes objectively true + because provenance exists + +--- + +## Reference Implementation (Protopipe) + +This section documents **Protopipe's own reference implementation** +of the mechanic. + +It exists to: +- demonstrate feasibility +- provide a working example +- support orientation within the Protopipe ecosystem +- enable "eat your own dogfood" validation + +The reference implementation: + +- is **not canonical** +- may evolve independently +- must not change the mechanic's intent +- must be removable without invalidating the mechanic + +Reference implementation overview: + +- Artifact(s): future Protopipe external evidence contract +- Scope: source identity, signal scope, timestamp, schema, confidence, + verification status, correction history, and KPI relation +- What it proves: external evidence can be connected to strategic learning + without pretending that integration equals truth + +If the reference implementation fails in practice, +the mechanic itself must be re-evaluated. + +--- + +## Failure Modes + +- External data is imported as a plain value without source or method. +- Provider reputation is treated as global instead of topic-specific. +- Corrections overwrite history. +- Confidence values become decorative and do not affect decision language. +- A technical integrity proof is mistaken for proof that the data is true. + +Failure modes must be observable. + +--- + +## Implementation Notes (Non-Canonical) + +Possible downstream realizations include curated provider integrations, +signed data feeds, audit trails, data marketplaces, oracle networks, +content-addressed storage, access-control systems, and dispute mechanisms. + +All content here is explicitly non-canonical. + +--- + +## Related Mechanics + +- None yet diff --git a/doc/08_capabilities/external-evidence-context.md b/doc/08_capabilities/external-evidence-context.md new file mode 100644 index 0000000..5f9fedc --- /dev/null +++ b/doc/08_capabilities/external-evidence-context.md @@ -0,0 +1,51 @@ +# External Evidence Context + +Protopipe must be able to preserve the context that makes external evidence +usable for strategic learning. + +This capability is solution-neutral. It does not prescribe a marketplace, +blockchain, provider network, oracle, storage system, or integration pattern. + +## Capability + +Protopipe must be able to represent external signals together with the +information needed to interpret, compare, challenge, and reuse them. + +External evidence context includes: + +- source identity +- collection timestamp +- observation timestamp +- scope and boundaries +- measurement method +- schema or metric definition +- confidence or verification status +- correction history +- dispute status +- relation to a hypothesis, KPI, experiment, or decision record + +## Why It Matters + +External evidence is valuable because it connects strategy to reality outside +the organization. It is risky because that reality is not directly governed by +the organization. + +Without this capability, external data becomes indistinguishable from internal +telemetry once it enters Protopipe. The platform would lose the ability to say +why a signal was trusted, how it was measured, whether it was later corrected, +and how strongly it should influence a decision. + +## Boundary + +This capability covers the reasoning context around external evidence. + +It does not cover: + +- selecting external providers +- operating a data marketplace +- deciding pricing or licensing models +- implementing payment, staking, slashing, or tokenization +- asserting that a signal is objectively true + +Those are downstream design and implementation decisions derived outside +Noesis.