{
  "schema": "helpifyr-system-modules.v1",
  "sourceOfTruth": "README.md of sibling Gitea repositories",
  "projectionNote": "This file is a website projection of README truth. It is not an independent source of truth.",
  "generatedAt": "2026-04-29T16:50:19.624Z",
  "modules": [
    {
      "slug": "helpifyr-fabric",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/helpifyr-fabric",
      "canonicalProductName": "Fabric",
      "technicalName": "Fabric",
      "systemLayer": "Core / Backbone",
      "primaryBenefitAlias": {
        "de": "Die Regeln, die immer gelten",
        "en": "The rules that always hold",
        "fr": "Les règles qui tiennent toujours"
      },
      "primaryBenefitSentence": {
        "de": "Fabric sorgt dafür, dass Entscheidungen, Zugriffe und Veränderungen nicht in Ausnahmen zerfallen.",
        "en": "Fabric keeps decisions, access, and change from dissolving into local exceptions.",
        "fr": "Fabric empêche les décisions, accès et changements de se dissoudre en exceptions locales."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Vertrags-, Projektions- und Governance-Wahrheit für den Stack.",
        "en": "Contract, projection, and governance truth for the stack.",
        "fr": "Vérité des contrats, projections et règles de gouvernance du stack."
      },
      "whatItIs": {
        "de": "Fabric ist die zentrale Wahrheits- und Verbindungsschicht des Helpifyr-Systems.",
        "en": "Fabric is the central truth and connection layer of the Helpifyr system.",
        "fr": "Fabric est la couche centrale de vérité et de liaison du système Helpifyr."
      },
      "whatItDoes": {
        "de": "Es veröffentlicht die Regeln, Verträge und Projektionen, auf die sich alle anderen Module verlassen, damit nicht jedes Teil seine eigene Logik erfindet.",
        "en": "It publishes the rules, contracts, and projections every other module relies on, so no part has to invent its own policy logic.",
        "fr": "Il publie les règles, contrats et projections sur lesquels s'appuient les autres modules afin qu'aucune partie n'invente sa propre logique."
      },
      "whyItMatters": {
        "de": "Ohne Fabric zerfällt das System in lokale Ausnahmen. Mit Fabric bleibt Veränderung anschlussfähig, lesbar und kontrolliert.",
        "en": "Without Fabric, the system drifts into local exceptions. With Fabric, change remains connected, readable, and controlled.",
        "fr": "Sans Fabric, le système dérive vers des exceptions locales. Avec Fabric, le changement reste connecté, lisible et contrôlé."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, warum viele Module trotzdem wie ein einziges System funktionieren.",
        "en": "Start here when you want to understand why many modules still behave like one system.",
        "fr": "Commencez ici si vous voulez comprendre pourquoi de nombreux modules se comportent comme un seul système."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/helpifyr-fabric.html",
      "relatedModules": [
        "jhf-heddle",
        "jhf-keystore",
        "jhf-warp",
        "jhf-shuttle",
        "jhf-dobby",
        "jhf-loom"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.297Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": "JaddaHelpifyr/helpifyr-fabric",
        "sourcePath": "README.md",
        "sourceStatus": "active",
        "lead": [
          "What It Is",
          "Helpifyr Fabric is the stack-level control-plane truth layer. It defines and publishes contracts, admission states, policy projections, and readiness semantics that other Helpifyr repositories consume."
        ],
        "whatItIs": [
          "Helpifyr Fabric is the stack-level control-plane truth layer. It defines and publishes contracts, admission states, policy projections, and readiness semantics that other Helpifyr repositories consume."
        ],
        "whatItDoes": [
          "Publishes canonical contracts for identity, surfaces, onboarding, lifecycle, entitlement, and governance.",
          "Publishes ACP capability-registry, skill_pack.* event-family truth, agent handoff/escalation/ownership event truth, Reed read-only projection, Swatch scenario verdict projection, and handoff ownership projection with explicit fail-closed semantics.",
          "Serves deterministic projection APIs used by downstream modules for runtime decisions.",
          "Enforces fail-closed semantics for blocked, stale, degraded, or conflicting states.",
          "Classifies current observability surfaces (including Grafana and Prometheus) in canonical onboarding/access truth instead of leaving them implicit.",
          "Publishes one canonical platform-version truth plus projection-catalog truth for Grafana, Prometheus, Wiki.js, Dapr, shared n8n, and shared NATS so upgrade consumers do not infer pins, readbacks, or compatibility surfaces from scattered docs or compose files.",
          "Provides contract and schema governance with explicit compatibility expectations.",
          "Centralizes verification-oriented artifacts so repo and live checks use one authoritative reference."
        ],
        "whyItMatters": [
          "Without Fabric, each module risks implementing local interpretation logic and drifting from stack-wide policy intent. Fabric reduces that risk by publishing one machine-consumable truth that services can validate against in CI and at runtime."
        ],
        "stackRole": [
          "Fabric owns contract and projection truth for stack governance and identity-adjacent admission surfaces.  \nFabric consumes runtime observations and owner signals from other repos, but does not replace their domain ownership (for example business role truth in spindle or OIDC runtime ownership in heddle).  \nFor observability/operator surfaces, Fabric projects status and posture, while role/access truth remains owned by spindle and technical auth runtime remains owned by heddle.  \nFabric must not introduce shadow truth when an upstream owner is canonical for a domain."
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-loom",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-loom",
      "canonicalProductName": "Loom",
      "technicalName": "Loom",
      "systemLayer": "Content",
      "primaryBenefitAlias": {
        "de": "Der Ort, an dem kein Dokument verloren geht",
        "en": "The place where no document gets lost",
        "fr": "L'endroit où aucun document ne se perd"
      },
      "primaryBenefitSentence": {
        "de": "Loom hält Inhalte, Versionen und Metadaten kontrolliert im System, statt sie als lose Dateien herumliegen zu lassen.",
        "en": "Loom keeps content, versions, and metadata governed inside the system instead of leaving them as loose files.",
        "fr": "Loom maintient le contenu, les versions et les métadonnées sous contrôle dans le système au lieu de les laisser comme des fichiers isolés."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Die kontrollierte Inhaltsschicht des Systems.",
        "en": "The system’s governed content layer.",
        "fr": "La couche de contenu gouverné du système."
      },
      "whatItIs": {
        "de": "Loom ist die Runtime für Dokumente, Metadaten, Versionen und kontrollierte Content-Lebenszyklen im Helpifyr-System.",
        "en": "Loom is the runtime for documents, metadata, versions, and governed content lifecycles inside Helpifyr.",
        "fr": "Loom est la runtime des documents, métadonnées, versions et cycles de vie de contenu gouvernés dans Helpifyr."
      },
      "whatItDoes": {
        "de": "Es macht Inhalte systemfähig: versioniert, nachvollziehbar, zugreifbar und sauber in Workflows, Nachweise und Business-Kontexte eingebunden.",
        "en": "It turns content into a system capability: versioned, traceable, accessible, and cleanly connected to workflows, evidence, and business context.",
        "fr": "Il transforme le contenu en capacité système : versionné, traçable, accessible et relié proprement aux workflows, preuves et contextes métier."
      },
      "whyItMatters": {
        "de": "Dokumente sind nicht nur Dateien. Ohne Loom fehlen kontrollierte Versionen, Metadaten und belastbare Content-Pfade im Gesamtsystem.",
        "en": "Documents are not just files. Without Loom, the system lacks governed versions, metadata, and dependable content paths.",
        "fr": "Les documents ne sont pas seulement des fichiers. Sans Loom, le système manque de versions gouvernées, de métadonnées et de parcours de contenu fiables."
      },
      "whenToStart": {
        "de": "Wenn Dateien zu Systembestandteilen werden müssen statt irgendwo abgelegt zu bleiben.",
        "en": "Start here when files need to become system components instead of staying somewhere in storage.",
        "fr": "Commencez ici lorsque les fichiers doivent devenir de vrais éléments du système au lieu de rester simplement stockés."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-loom.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-heddle",
        "jhf-shuttle",
        "jhf-spindle",
        "jhf-bobbin"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.328Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-loom is the Helpifyr module for content and ECM runtime behavior.  \nThe repository owns the runtime contract, compose baseline, boundary documents, and verification surfaces for the Loom lane."
        ],
        "whatItIs": [
          "jhf-loom is the Helpifyr module for content and ECM runtime behavior.  \nThe repository owns the runtime contract, compose baseline, boundary documents, and verification surfaces for the Loom lane."
        ],
        "whatItDoes": [
          "Runs the canonical Loom runtime stack (db, activemq, search, transform, repo, share)",
          "Exposes the Share-first user surface and repository machine surface through the trusted ingress path",
          "Maintains repo-owned runtime guardrails (low-pressure health profile, restart/backoff, idempotent apply, bounded diagnostics)",
          "Publishes machine-readable runtime and boundary contracts in config/runtime/*",
          "Provides deterministic validators and smoke/resilience checks for repo and live posture"
        ],
        "whyItMatters": [
          "Without jhf-loom, the stack has no governed, testable content runtime contract.  \nThis module makes content operations predictable across docs, contracts, QA checks, and live runtime behavior."
        ],
        "stackRole": [
          "jhf-loom owns:",
          "Loom runtime contract truth for this repo\nRuntime service composition and low-idle guardrail behavior\nRepo-side and live verify paths for runtime health/resilience",
          "jhf-loom consumes:",
          "Fabric governance and contract truth (read-only)\nHeddle identity truth (IdP side)\nOpenClaw-Env ingress/TLS/runtime exposure truth",
          "jhf-loom does not own:",
          "Fabric shared governance truth\nIdP realm/client ownership\nIngress DNS/TLS ownership"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-heddle",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-heddle",
      "canonicalProductName": "Heddle",
      "technicalName": "Heddle",
      "systemLayer": "Identity / Keys",
      "primaryBenefitAlias": {
        "de": "Der Zugang, der überall derselbe bleibt",
        "en": "The access layer that stays consistent everywhere",
        "fr": "La couche d'accès qui reste cohérente partout"
      },
      "primaryBenefitSentence": {
        "de": "Heddle sorgt dafür, dass Identität, Session und SSO nicht in jedem Teil des Systems anders funktionieren.",
        "en": "Heddle keeps identity, session, and SSO from behaving differently in every part of the system.",
        "fr": "Heddle évite que l'identité, la session et le SSO se comportent différemment dans chaque partie du système."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Identität, Session- und SSO-Wahrheit für den Stack.",
        "en": "Identity, session, and SSO truth for the stack.",
        "fr": "Vérité d’identité, de session et de SSO pour le stack."
      },
      "whatItIs": {
        "de": "Heddle ist die Identitätsschicht von Helpifyr.",
        "en": "Heddle is the identity layer of Helpifyr.",
        "fr": "Heddle est la couche d’identité de Helpifyr."
      },
      "whatItDoes": {
        "de": "Es hält Login-, Session-, Claim- und SSO-Verhalten konsistent, damit andere Module nicht ihre eigene Auth-Wahrheit bauen.",
        "en": "It keeps login, session, claim, and SSO behavior consistent so other modules do not build their own auth truth.",
        "fr": "Il maintient un comportement cohérent pour la connexion, les sessions, les claims et le SSO afin que les autres modules n’inventent pas leur propre vérité d’authentification."
      },
      "whyItMatters": {
        "de": "Ohne Heddle entstehen Schatten-Identitäten. Mit Heddle bleibt Zugang nachvollziehbar und systemweit einheitlich.",
        "en": "Without Heddle, shadow identities emerge. With Heddle, access remains traceable and consistent across the system.",
        "fr": "Sans Heddle, des identités fantômes apparaissent. Avec Heddle, l’accès reste traçable et cohérent à l’échelle du système."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, warum Nutzer, Rollen und Sessions nicht in jedem Modul anders behandelt werden.",
        "en": "Start here when you want to see why users, roles, and sessions are not handled differently in every module.",
        "fr": "Commencez ici si vous voulez comprendre pourquoi utilisateurs, rôles et sessions ne sont pas traités différemment dans chaque module."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-heddle.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-keystore",
        "jhf-loom",
        "jhf-warp"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.354Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "jhf-heddle is the technical identity module in the Helpifyr stack.",
          "It provides Keycloak-based identity runtime, OIDC client contracts, bridge flows for selected products, and contract-driven verification for claims, sessions, and revocation behavior."
        ],
        "whatItIs": [
          "This repository is the stack's technical auth control surface for:",
          "identity runtime bootstrap\nOIDC client profile contracts\nsession and revocation posture\nfail-closed Fabric-consumer behavior\nreconcile/verification tooling around identity-related runtime paths",
          "It is not the owner of business-role truth."
        ],
        "whatItDoes": [
          "Publishes and validates canonical claim/session contracts used by downstream modules.",
          "Runs OIDC bridge surfaces for Plane and Loom integration paths.",
          "Defines admitted client contract templates for stack services.",
          "Enforces fail-closed consumption of Fabric contract/projection surfaces.",
          "Provides scripts/tests for fast repo verification and live runtime checks."
        ],
        "whyItMatters": [
          "Without a shared technical identity layer, each service drifts into local auth behavior and local shadow truth.  \njhf-heddle keeps auth posture consistent, auditable, and automatable across the stack."
        ],
        "stackRole": [
          "Owned truth in this repo:",
          "technical identity runtime contracts\nOIDC client templates and validation\nclaim/session/revocation posture contracts",
          "Consumed truth (not re-authored here):",
          "business identity and eligibility truth from jhf-spindle\npolicy/projection truth from helpifyr-fabric\nruntime materialization ownership from jhf-openclaw-env",
          "Explicit non-ownership:",
          "no local business-role authoring\nno local second identity truth family\nno direct runtime bypass of canonical upstream truth owners"
        ],
        "notInScope": [
          "replace Fabric as canonical policy/projection truth",
          "replace Spindle as business identity/role truth",
          "embed environment owner logic that belongs to runtime-owner repos",
          "maintain local secret inventories or plaintext operational credentials"
        ]
      }
    },
    {
      "slug": "jhf-keystore",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-keystore",
      "canonicalProductName": "Keystore",
      "technicalName": "Keystore",
      "systemLayer": "Identity / Keys",
      "primaryBenefitAlias": {
        "de": "Der kontrollierte Weg zu sensiblen Zugriffen",
        "en": "The controlled path to sensitive access",
        "fr": "Le chemin contrôlé vers les accès sensibles"
      },
      "primaryBenefitSentence": {
        "de": "Keystore macht sensible Zugriffe nachvollziehbar, statt dass irgendwo heimliche Secret-Logik entsteht.",
        "en": "Keystore makes sensitive access traceable instead of letting hidden secret logic grow somewhere in the stack.",
        "fr": "Keystore rend les accès sensibles traçables au lieu de laisser une logique secrète cachée apparaître quelque part dans le stack."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Die kontrollierte Secrets- und Zugriffsschicht.",
        "en": "The governed secrets and access layer.",
        "fr": "La couche gouvernée des secrets et des accès."
      },
      "whatItIs": {
        "de": "Keystore ist die Schicht, über die sensible Zugangsdaten und Secret-Zugriffe kontrolliert werden.",
        "en": "Keystore is the layer through which sensitive credentials and secret access are controlled.",
        "fr": "Keystore est la couche par laquelle les identifiants sensibles et l’accès aux secrets sont contrôlés."
      },
      "whatItDoes": {
        "de": "Es macht Secret-Nutzung nachvollziehbar, begrenzt Zugriffe sauber und verhindert, dass Laufzeitmodule ihre eigene geheime Nebenlogik entwickeln.",
        "en": "It makes secret usage traceable, bounds access cleanly, and prevents runtime modules from growing their own hidden credential logic.",
        "fr": "Il rend l’usage des secrets traçable, encadre l’accès proprement et empêche les modules runtime de développer leur propre logique cachée d’identifiants."
      },
      "whyItMatters": {
        "de": "Sichere Ausführung braucht kontrollierten Secret-Zugriff. Ohne Keystore wird Sicherheit schnell implizit und unprüfbar.",
        "en": "Safe execution needs governed secret access. Without Keystore, security quickly becomes implicit and hard to verify.",
        "fr": "Une exécution sûre exige un accès gouverné aux secrets. Sans Keystore, la sécurité devient vite implicite et difficile à vérifier."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie das System sensible Zugriffe zulässt, ohne die Kontrolle zu verlieren.",
        "en": "Start here when you want to understand how the system permits sensitive access without losing control.",
        "fr": "Commencez ici si vous voulez comprendre comment le système autorise des accès sensibles sans perdre le contrôle."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-keystore.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-heddle",
        "jhf-warp",
        "jhf-shuttle"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.382Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "jhf-keystore gives OpenClaw-style consumers, Fabric, and operators a predictable read-only path for secret lookup without exposing a public runtime API. The repository is security-conservative, versioned, and documentation-first so jhf-web can generate deep-dive pages directly from source content.",
          "The canonical access model, identity vocabulary, entitlement rules, and reconciliation contracts live in docs/ACCESS_MODEL.md and under contracts/. The canonical identity claim language is consumed read-only from jhf-heddle; local identity shadow-truth is explicitly forbidden.",
          "Vaultwarden in this stack is an admitted SSO v4 consumer under upstream jhf-heddle and helpifyr-fabric contract truth. See contracts/vaultwarden-sso-consumer-runtime.json.",
          "The current execution map for the Helpifyr Access Model Upgrade Plan v1.2 lives in docs/ACCESS_MODEL_PROGRAM.md. The ERP acceptance handoff for spindle, heddle, Fabric, deployment, and downstream tool consumers lives in docs/ERP_IDENTITY_ACCESS_PROGRAM.md."
        ],
        "whatItIs": [
          "jhf-keystore is a local-first helper for controlled Vaultwarden- or Bitwarden-backed reads. It is a consumer, verifier, and packaging/documentation boundary. It is not a remote secret service, not a policy engine, and not a second Fabric truth.",
          "The repo is designed so that operators, OpenClaw, Fabric, deployment tooling, and Wiki.js can all consume the same checked-in description of what exists today."
        ],
        "whatItDoes": [
          "resolve vw://item/... references through a local authenticated bw workflow",
          "expose bounded probe and doctor checks for runtime diagnosis",
          "generate stable OpenClaw source: exec snippets",
          "produce versioned package artifacts and Fabric-readable repo metadata",
          "validate read-only access-model and contract consumption without re-owning upstream truth",
          "provide a canonical cross-surface SSO v4 acceptance suite for admitted surfaces"
        ],
        "whyItMatters": [
          "Available now:",
          "local CLI and wrapper surfaces exist and are tested\npackage build and verification paths exist and are tested\nFabric docs/governance adoption is declared explicitly and consumed read-only\nmetadata-only secret inventory and runtime auth bootstrap contracts exist\nmetadata-only Vault inventory and operator verdict contracts exist\nhost-side deep checks are bounded and fail-closed",
          "Planned / not in current scope:",
          "no public HTTP API\nno webhook or MCP server\nno write-back or reconcile path owned by this repo\nno repo-local policy or identity authority"
        ],
        "stackRole": [
          "This repository consumes Fabric-owned truth and must not create a second local truth.",
          "Fabric-owned surfaces consumed here:",
          "GET /api/v1/contracts/matrix\nGET /api/v1/contracts/docs-standard\nGET /api/v1/contracts/wiki-governance\nGET /api/v1/combinations/profiles",
          "Upstream identity truth consumed here:",
          "jhf-heddle/config/identity/claim-vocabulary.v2.yaml",
          "What this repo does locally:",
          "declares adoption and compatibility\nvalidates contract drift\nmaterializes documentation and repo-readable views",
          "What this repo must not do locally:",
          "redefine docs-standard\nredefine wiki-governance\nredefine identity semantics\ninvent local projection or entitlement truth"
        ],
        "notInScope": [
          "live host checks still depend on external runtime prerequisites",
          "the repo can diagnose upstream drift, but not repair host-owned state from here",
          "secret values and long-lived sessions must stay outside checked-in files"
        ]
      }
    },
    {
      "slug": "jhf-warp",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-warp",
      "canonicalProductName": "Warp",
      "technicalName": "Warp",
      "systemLayer": "Orchestrator / Control",
      "primaryBenefitAlias": {
        "de": "Der Dirigent, der Aufgaben verteilt",
        "en": "The conductor that assigns the work",
        "fr": "Le chef d'orchestre qui répartit le travail"
      },
      "primaryBenefitSentence": {
        "de": "Warp sorgt dafür, dass die richtige Arbeit im richtigen Moment bei der richtigen Rolle landet.",
        "en": "Warp makes sure the right work reaches the right role at the right moment.",
        "fr": "Warp veille à ce que le bon travail arrive au bon rôle au bon moment."
      },
      "experienceZone": "easier",
      "shortRole": {
        "de": "Runtime-Orchestrierung und kontrollierte Ausführungssteuerung.",
        "en": "Runtime orchestration and controlled execution steering.",
        "fr": "Orchestration runtime et pilotage contrôlé de l’exécution."
      },
      "whatItIs": {
        "de": "Warp ist die Orchestrierungsschicht für operative Multi-Agent- und Runtime-Steuerung.",
        "en": "Warp is the orchestration layer for operational multi-agent and runtime control.",
        "fr": "Warp est la couche d’orchestration pour le pilotage opérationnel multi-agents et runtime."
      },
      "whatItDoes": {
        "de": "Es hält Laufzeitzustand sichtbar, kompiliert sichere Ausführungspfade und steuert Änderungen in bounded, nachvollziehbaren Bahnen.",
        "en": "It keeps runtime state visible, compiles safe execution paths, and steers changes through bounded and traceable lanes.",
        "fr": "Il rend l’état runtime visible, compile des chemins d’exécution sûrs et pilote les changements dans des voies bornées et traçables."
      },
      "whyItMatters": {
        "de": "Ohne Warp zerfällt Kontrolle in Skripte und Einzelfälle. Mit Warp bleibt operative Ausführung lesbar und steuerbar.",
        "en": "Without Warp, control fragments into scripts and edge cases. With Warp, operational execution stays readable and steerable.",
        "fr": "Sans Warp, le contrôle se fragmente en scripts et cas particuliers. Avec Warp, l’exécution opérationnelle reste lisible et pilotable."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie das System entscheidet, wer arbeitet und wie Änderungen sicher durchgeführt werden.",
        "en": "Start here when you want to understand how the system decides who works and how change is applied safely.",
        "fr": "Commencez ici si vous voulez comprendre comment le système décide qui agit et comment les changements sont appliqués en sécurité."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-warp.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-pattern",
        "jhf-shuttle",
        "jhf-tenter",
        "jhf-dobby"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.408Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": "JaddaHelpifyr/jhf-warp",
        "sourcePath": "README.md",
        "sourceStatus": "active",
        "lead": [
          "Helpifyr Warp is the runtime-facing orchestration service for OpenClaw-based delivery inside the\nHelpifyr stack. It sits between upstream truth owners such as Helpifyr Heddle, Helpifyr Fabric,\nand Helpifyr Spindle, and the live runtime where operators need bounded, auditable control over\nteams, drift, topology, persistent agents, and guarded write lanes.",
          "Warp is not a generic workflow engine and it is not a second identity or governance system. Its\njob is narrower and operationally important: expose stable read models, consume upstream truth\nwithout shadowing it, compile runtime intent into safe execution artifacts, and keep mutation\npaths fail-closed when authority or runtime conditions are incomplete."
        ],
        "whatItIs": [
          "jhf-warp is:",
          "a FastAPI-based runtime orchestration service\nthe runtime execution and control truth for OpenClaw topology, drift, and bounded apply lanes\na stable internal surface for operators, automation, and selected stack integrations\na packaging target with OCI metadata, deployment contracts, and release-gate evidence"
        ],
        "whatItDoes": [
          "runtime inventory, topology, drift, and health visibility",
          "task classification and bounded team/setup compilation",
          "guarded OpenClaw patch planning and apply preparation",
          "control-agent supervision for doubtfire-control / Nikolai Wachter",
          "persistent-agent, workspace, learning-proposal, and tool-profile read models",
          "voice target truth for tray-owned voice lanes",
          "support-triggered actions with approval-aware mutation boundaries",
          "read-first integration surfaces for Fabric, Pattern, Shuttle, Spindle, Deployment, and Tenter"
        ],
        "whyItMatters": [
          "Without Warp, runtime control would drift into ad-hoc scripts, downstream tools, or duplicated\npolicy logic. Warp keeps one bounded execution plane for inspecting live state, comparing desired\nand actual topology, and applying runtime changes without pretending to own identity, business, or\ngovernance truth that properly belongs elsewhere in the Helpifyr stack."
        ],
        "stackRole": [
          "Warp owns:",
          "runtime execution truth for OpenClaw-oriented topology, drift, rollout, and control-agent flows\ninternal operator surfaces for guarded mutation planning and execution\npersistent runtime-facing read models for agents, workspaces, delegation, rollout, and support",
          "Warp consumes:",
          "identity and auth truth from jhf-heddle\nprojection, contract, and read-first composition truth from\n  jhf-fabric\nbusiness identity and access truth from jhf-spindle\nOpenClaw runtime materialization from\n  jhf-openclaw-env",
          "Warp does not own:",
          "customer-facing UI\nprimary IAM, SSO, or claims truth\nFabric registry or policy governance truth\nsecret management\ndirect business-system source-of-truth authority"
        ],
        "notInScope": [
          "Warp is not the primary IAM/OIDC truth owner",
          "Warp is not a public customer UI product",
          "Warp does not replace Fabric/Spindle/Heddle truth ownership boundaries"
        ]
      }
    },
    {
      "slug": "jhf-pattern",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-pattern",
      "canonicalProductName": "Pattern",
      "technicalName": "Pattern",
      "systemLayer": "Orchestrator / Control",
      "primaryBenefitAlias": {
        "de": "Der Teil, der Ausnahmen nicht alles kaputt machen lässt",
        "en": "The part that stops edge cases from breaking everything",
        "fr": "La partie qui empêche les exceptions de tout casser"
      },
      "primaryBenefitSentence": {
        "de": "Pattern hält Arbeit konsistent, auch wenn Zustände, Entscheidungen und Ausnahmen ständig in Bewegung sind.",
        "en": "Pattern keeps work consistent even while state, decisions, and exceptions keep moving.",
        "fr": "Pattern maintient le travail cohérent même lorsque l'état, les décisions et les exceptions bougent en permanence."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Konsistenz- und Kontrollschicht gegen Drift.",
        "en": "Consistency and control layer against drift.",
        "fr": "Couche de cohérence et de contrôle contre la dérive."
      },
      "whatItIs": {
        "de": "Pattern ist die Schicht, die AI-getriebte Arbeit und operative Veränderungen konsistent hält.",
        "en": "Pattern is the layer that keeps AI-driven work and operational change consistent.",
        "fr": "Pattern est la couche qui maintient cohérents le travail piloté par l’IA et les changements opérationnels."
      },
      "whatItDoes": {
        "de": "Es überprüft Zustände, begrenzt Drift und stellt sicher, dass Entscheidungen nicht als lose Einmalaktionen im System verschwinden.",
        "en": "It checks state, limits drift, and makes sure decisions do not disappear into one-off actions.",
        "fr": "Il vérifie l’état, limite la dérive et s’assure que les décisions ne disparaissent pas dans des actions ponctuelles."
      },
      "whyItMatters": {
        "de": "Ohne Pattern funktioniert Arbeit vielleicht einmal. Mit Pattern bleibt sie wiederholbar, lesbar und kontrolliert.",
        "en": "Without Pattern, work may succeed once. With Pattern, it stays repeatable, readable, and controlled.",
        "fr": "Sans Pattern, le travail peut réussir une fois. Avec Pattern, il reste répétable, lisible et contrôlé."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie das System Konsistenz bewahrt, obwohl sich Zustände ständig verändern.",
        "en": "Start here when you want to understand how the system preserves consistency while state keeps moving.",
        "fr": "Commencez ici si vous voulez comprendre comment le système préserve la cohérence alors que l’état évolue sans cesse."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-pattern.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-warp",
        "jhf-shuttle",
        "jhf-beam",
        "jhf-dobby"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.434Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-pattern is the repository for Mission Control v2. It combines a FastAPI backend, a React/Vite operator UI, and runtime contracts for project work orchestration. The module is issue-driven and verification-first: API behavior, operational contracts, and smoke/regression paths are all tracked in-repo."
        ],
        "whatItIs": [
          "jhf-pattern is the repository for Mission Control v2. It combines a FastAPI backend, a React/Vite operator UI, and runtime contracts for project work orchestration. The module is issue-driven and verification-first: API behavior, operational contracts, and smoke/regression paths are all tracked in-repo."
        ],
        "whatItDoes": [
          "Serves operator APIs for projects, tasks, lanes, handoffs, planning, delivery, settings, integrations, and auth.",
          "Publishes stable runtime/contract read surfaces (/healthz, /readyz, /versionz, /contractz, Fabric discovery/fact endpoints).",
          "Reconciles planning and delivery data with external systems, especially Plane and git providers.",
          "Enforces guarded runtime and diagnostics posture (bounded logs, restart policy, low-pressure healthcheck defaults).",
          "Provides deterministic verification surfaces for CI, smoke, contract subsets, and live rerun flows."
        ],
        "whyItMatters": [
          "The module gives operators one reliable surface to plan and run work while keeping stack ownership boundaries clear: Fabric remains contract/governance truth, Plane remains planning runtime truth, identity providers remain auth truth, and jhf-pattern remains the control-plane consumer/projection owner for its own contracts."
        ],
        "stackRole": [
          "Repo-owned truth:\n  - Mission Control API contract and UI behavior.\n  - Runtime guardrails and verify scripts in this repository.\n  - Pattern-owned fact publications (/fabric-plane-workspace-facts, /fabric-plane-membership-facts).\nConsumed truth:\n  - Fabric contract governance and support-orchestration contracts.\n  - Plane planning/runtime state.\n  - OIDC/session identity signals.\n  - Provider issue/review/repo states.\nExplicitly not owned here:\n  - Fabric global policy truth.\n  - Plane upstream runtime truth.\n  - Identity provider durable truth.\n  - Host environment ownership."
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-shuttle",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-shuttle",
      "canonicalProductName": "Shuttle",
      "technicalName": "Shuttle",
      "systemLayer": "Execution / Runtime",
      "primaryBenefitAlias": {
        "de": "Die Ausführung, die nie vergisst",
        "en": "The execution layer that does not forget",
        "fr": "La couche d'exécution qui n'oublie pas"
      },
      "primaryBenefitSentence": {
        "de": "Shuttle übersetzt geordnete Arbeit in echte Abläufe, statt sie als gute Absicht stehen zu lassen.",
        "en": "Shuttle turns ordered work into real execution instead of leaving it as good intention.",
        "fr": "Shuttle transforme le travail ordonné en exécution réelle au lieu de le laisser au stade de l'intention."
      },
      "experienceZone": "easier",
      "shortRole": {
        "de": "Workflow-Ausführung und operative Prozessmotorik.",
        "en": "Workflow execution and operational process motion.",
        "fr": "Exécution de workflows et motorique opérationnelle des processus."
      },
      "whatItIs": {
        "de": "Shuttle ist die Ausführungsschicht, in der geordnete Arbeit in reale Prozesse und Workflows übergeht.",
        "en": "Shuttle is the execution layer where ordered intent turns into real processes and workflows.",
        "fr": "Shuttle est la couche d’exécution où l’intention ordonnée devient processus et workflows réels."
      },
      "whatItDoes": {
        "de": "Es baut, validiert und betreibt Workflow-Pfade, sodass Übergaben nicht nur gedacht, sondern tatsächlich ausgeführt werden.",
        "en": "It builds, validates, and runs workflow paths so handoffs are not just planned but actually executed.",
        "fr": "Il construit, valide et exécute des chemins de workflow afin que les relais ne soient pas seulement planifiés mais réellement exécutés."
      },
      "whyItMatters": {
        "de": "Ohne Shuttle bleibt Orchestrierung Theorie. Mit Shuttle wird aus Plan verlässliche Ausführung.",
        "en": "Without Shuttle, orchestration stays theoretical. With Shuttle, plans become dependable execution.",
        "fr": "Sans Shuttle, l’orchestration reste théorique. Avec Shuttle, les plans deviennent une exécution fiable."
      },
      "whenToStart": {
        "de": "Wenn du sehen willst, wie das System Arbeit tatsächlich in Abläufe und Ergebnisse übersetzt.",
        "en": "Start here when you want to see how the system translates work into actual flows and outcomes.",
        "fr": "Commencez ici si vous voulez voir comment le système traduit le travail en flux et résultats réels."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-shuttle.html",
      "relatedModules": [
        "jhf-warp",
        "jhf-wire",
        "jhf-tenter",
        "jhf-loom",
        "jhf-spindle"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.457Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-shuttle is the Helpifyr module for n8n-centered workflow engineering and runtime operations. It combines a large Python CLI and library surface (n8n_expert), an optional Mission Control-style API, upgrade and catalog intelligence, and an optional on-prem delivery runtime for OpenClaw-style agent messaging.",
          "It is not a control plane that owns global contract truth. Instead, it owns its own runtime, verification, and operational evidence surfaces, while consuming Fabric-owned governance truth read-only where that boundary already exists."
        ],
        "whatItIs": [
          "jhf-shuttle is the Helpifyr module for n8n-centered workflow engineering and runtime operations. It combines a large Python CLI and library surface (n8n_expert), an optional Mission Control-style API, upgrade and catalog intelligence, and an optional on-prem delivery runtime for OpenClaw-style agent messaging.",
          "It is not a control plane that owns global contract truth. Instead, it owns its own runtime, verification, and operational evidence surfaces, while consuming Fabric-owned governance truth read-only where that boundary already exists."
        ],
        "whatItDoes": [
          "Searches nodes, templates, and workflow patterns for n8n operators.",
          "Validates workflows, expressions, connections, readiness, and deployment safety.",
          "Operates live n8n instances through CLI and optional API surfaces.",
          "Produces upgrade intelligence, catalog freshness evidence, and Mission Control summaries.",
          "Runs an optional durable mailbox path with NATS, a mailbox adapter, lane-wait observation, and restart recovery.",
          "Verifies runtime contracts, port ownership, overlap guards, and CPU-safe shared-host behavior."
        ],
        "whyItMatters": [
          "jhf-shuttle is the practical bridge between workflow design and workflow operations. It gives Helpifyr and OpenClaw operators a repo-owned place to answer questions like: Is this workflow valid? Is the instance reachable? Is an upgrade safe? Is the delivery runtime healthy? Which runtime path is canonical right now? That matters because these answers need to be testable, repeatable, and explicit instead of living in ad hoc operator memory."
        ],
        "stackRole": [
          "This repository owns:",
          "the jhf-shuttle CLI and Python package surface\nthe optional Mission Control API surface under /api/v1\nthe repo-owned runtime contract for the Shuttle on-prem and self-stack paths\nverification scripts, evidence paths, and runtime guardrails for this module",
          "This repository consumes read-only truth from other modules:",
          "Fabric contract governance and combination/profile truth\nOpenClaw environment/runtime materialization truth\nexternal n8n runtime state and upstream release truth",
          "This repository explicitly does not own:",
          "global Fabric contract truth\nOIDC/session truth\nOpenClaw host environment truth\nERP/identity truth from other product modules"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-wire",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-wire",
      "canonicalProductName": "Wire",
      "technicalName": "Wire",
      "systemLayer": "Execution / Runtime",
      "primaryBenefitAlias": {
        "de": "Der Weg nach außen, der nicht im Chaos endet",
        "en": "The outward path that does not end in chaos",
        "fr": "Le chemin vers l'extérieur qui ne finit pas en chaos"
      },
      "primaryBenefitSentence": {
        "de": "Wire hält Zustellung und Integrationen anschlussfähig, ohne dass das System an seinem Rand auseinanderfällt.",
        "en": "Wire keeps delivery and integrations connected without letting the system fall apart at the edges.",
        "fr": "Wire maintient la livraison et les intégrations reliées sans laisser le système se désagréger à ses frontières."
      },
      "experienceZone": "easier",
      "shortRole": {
        "de": "Delivery- und Integrationsschicht für externe Übergaben.",
        "en": "Delivery and integration layer for external handoffs.",
        "fr": "Couche de delivery et d’intégration pour les relais externes."
      },
      "whatItIs": {
        "de": "Wire ist die Schicht, die externe Zustellung und Integrationen sauber an das System bindet.",
        "en": "Wire is the layer that binds external delivery and integrations cleanly into the system.",
        "fr": "Wire est la couche qui relie proprement la livraison externe et les intégrations au système."
      },
      "whatItDoes": {
        "de": "Es stellt sicher, dass Signale, Zustellungen und Integrationen nicht lose Endpunkte bleiben, sondern kontrollierte Anschlussstellen im System werden.",
        "en": "It makes sure signals, deliveries, and integrations do not remain loose endpoints but become governed connection points.",
        "fr": "Il veille à ce que les signaux, livraisons et intégrations ne restent pas des extrémités isolées mais deviennent des points de connexion gouvernés."
      },
      "whyItMatters": {
        "de": "Ohne Wire endet Ausführung oft am Systemrand. Mit Wire bleibt der Weg nach außen kontrolliert und nachvollziehbar.",
        "en": "Without Wire, execution often stops at the system boundary. With Wire, the path outward remains controlled and traceable.",
        "fr": "Sans Wire, l’exécution s’arrête souvent à la frontière du système. Avec Wire, la sortie reste contrôlée et traçable."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie das System zuverlässig nach außen liefert, ohne in Integrationschaos zu kippen.",
        "en": "Start here when you want to understand how the system delivers outward reliably without turning into integration chaos.",
        "fr": "Commencez ici si vous voulez comprendre comment le système livre vers l’extérieur de manière fiable sans tomber dans le chaos d’intégration."
      },
      "status": {
        "key": "wip",
        "label": {
          "de": "In Vorbereitung",
          "en": "Work in progress",
          "fr": "En cours"
        },
        "note": {
          "de": "Noch nicht als fertige Produktionsschicht zu behandeln.",
          "en": "Do not treat as a finished production layer yet.",
          "fr": "Ne pas traiter comme une couche de production finalisée pour l’instant."
        }
      },
      "deepDiveUrl": "/jhf-wire.html",
      "relatedModules": [
        "jhf-shuttle",
        "jhf-spindle",
        "helpifyr-fabric",
        "jhf-heddle"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.481Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-wire is the delivery bridge between jhf-spindle (Helpifyr Spindle, formerly ClawLedger) and external providers such as FinAPI, Storecove, and ELSTER/ERiC.  \nIt provides Git-managed workflows, signed callback transport, runtime guard scripts, and auditable verify paths for Linux-first operations."
        ],
        "whatItIs": [
          "jhf-wire is the delivery bridge between jhf-spindle (Helpifyr Spindle, formerly ClawLedger) and external providers such as FinAPI, Storecove, and ELSTER/ERiC.  \nIt provides Git-managed workflows, signed callback transport, runtime guard scripts, and auditable verify paths for Linux-first operations."
        ],
        "whatItDoes": [
          "Reduces manual delivery work for payment, bank-sync, invoice, and tax transport paths.",
          "Keeps callback transport deterministic through X-Signature and X-Idempotency-Key.",
          "Separates ERP domain logic (jhf-spindle) from connector runtime concerns.",
          "Makes operator ownership explicit: repo-local fixes vs external/provider blockers."
        ],
        "whyItMatters": [
          "jhf-wire is the hard boundary where delivery evidence is either reliably produced or explicitly blocked with operator-visible reasons.  \nThis keeps business-side dispatch flows predictable, makes failures audit-ready, and prevents silent submission loss in cross-repo runtime paths."
        ],
        "stackRole": [
          "Owns: workflow-based provider execution, callback signing/transport, runtime guard scripts, wire-specific stack contract.\nConsumes: Fabric contract truth (/api/v1/contracts/matrix, /api/v1/contracts/docs-standard) and combination profile truth (/api/v1/combinations/profiles) as read-only.\nExplicitly does not own: ERP business truth (jhf-spindle), global policy truth (jhf-fabric), external credential materialization (jhf-openclaw-env)."
        ],
        "notInScope": [
          "No local Aleph/entity-screening runtime in jhf-wire (moved to jhf-selvage, work in progress).",
          "No Fabric write-back execution control path.",
          "No local fallback truth for Fabric contract matrix or docs-standard families.",
          "No automatic productive onboarding of external provider credentials."
        ]
      }
    },
    {
      "slug": "jhf-tenter",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-tenter",
      "canonicalProductName": "Tenter",
      "technicalName": "Tenter",
      "systemLayer": "Execution / Runtime",
      "primaryBenefitAlias": {
        "de": "Der Nachweis, dass es wirklich läuft",
        "en": "The proof that it actually runs",
        "fr": "La preuve que cela fonctionne vraiment"
      },
      "primaryBenefitSentence": {
        "de": "Tenter zeigt, ob Ausführung wirklich bereit und stabil ist, statt nur einmal grün ausgesehen zu haben.",
        "en": "Tenter shows whether execution is truly ready and stable instead of having looked green once.",
        "fr": "Tenter montre si l'exécution est réellement prête et stable au lieu d'avoir simplement semblé verte une fois."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Runtime-Evidenz, Bereitschaft und beweisbare Ausführung.",
        "en": "Runtime evidence, readiness, and provable execution.",
        "fr": "Preuve runtime, readiness et exécution vérifiable."
      },
      "whatItIs": {
        "de": "Tenter ist die Schicht für Laufzeitbeweis, Bereitschaft und operative Evidenz.",
        "en": "Tenter is the layer for runtime proof, readiness, and operational evidence.",
        "fr": "Tenter est la couche de preuve runtime, de readiness et d’évidence opérationnelle."
      },
      "whatItDoes": {
        "de": "Es macht sichtbar, ob Ausführung wirklich bereit, stabil und nachvollziehbar ist, statt nur einmal grün ausgesehen zu haben.",
        "en": "It makes visible whether execution is truly ready, stable, and traceable instead of merely having looked green once.",
        "fr": "Il rend visible si l’exécution est réellement prête, stable et traçable, plutôt que d’avoir simplement semblé verte une fois."
      },
      "whyItMatters": {
        "de": "Ohne Tenter bleibt Runtime ein Bauchgefühl. Mit Tenter wird Betriebszustand überprüfbar.",
        "en": "Without Tenter, runtime remains a gut feeling. With Tenter, operational state becomes verifiable.",
        "fr": "Sans Tenter, la runtime reste une intuition. Avec Tenter, l’état opérationnel devient vérifiable."
      },
      "whenToStart": {
        "de": "Wenn du wissen willst, ob das System wirklich läuft und nicht nur gut klingt.",
        "en": "Start here when you want to know whether the system truly runs instead of merely sounding good.",
        "fr": "Commencez ici si vous voulez savoir si le système fonctionne réellement au lieu de seulement bien paraître."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-tenter.html",
      "relatedModules": [
        "jhf-shuttle",
        "jhf-warp",
        "jhf-dobby",
        "jhf-beam"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.508Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "jhf-tenter",
          "Operator-grade runtime operations for OpenClaw",
          "Prepare hosts. Verify runtime paths. Validate voice flows. Package artifacts. Operate with reproducible evidence.",
          "When Fabric is present, consume shared voice and combination truth read-only instead of opening a second local control plane.",
          "Repository ·\n  JaddaHelpifyr ·\n  Contact"
        ],
        "whatItIs": [
          "jhf-tenter is the runtime toolkit and verification baseline for the OpenClaw voice and operator lane. It owns checked-in runtime contracts, Asterisk stack definitions, voice verification flows, package artifacts, and the repo-side documentation that other repos can consume safely.",
          "This repository is not a product backend and not a second control plane. When Fabric already publishes canonical contract, readiness, or combination truth, jhf-tenter only consumes that truth read-only and documents its own consumer or runtime boundary.",
          "Canonical repository references:",
          "Gitea repo:\n  - http://192.168.1.166:3000/JaddaHelpifyr/jhf-tenter\nCanonical checkout path:\n  - C:\\CodexTest\\jhf-tenter"
        ],
        "whatItDoes": [
          "Canonical voice contract keys present in this repo:",
          "VOICE_ROUTER_RUNTIME_SLICE",
          "VOICE_ASTERISK_ARI_ADAPTER_SLICE",
          "VOICE_STT_TTS_OPENCLAW_FLOW_SLICE",
          "VOICE_RUNTIME_VALIDATION_MATRIX",
          "VOICE_DISCORD_ADAPTER_READINESS",
          "Producer namespace posture for future shared event emission:",
          "tenter.voice.*",
          "Machine-readable repo identity and capability export:",
          "fabric-manifest.json",
          "scripts/export-fabric-metadata.py",
          "Canonical Asterisk stack definition owned in this repo:",
          "docs/ASTERISK_RUNTIME_STACK_SOURCE_OF_TRUTH.md",
          "docs/CPU_SAFE_RUNTIME_GUARDRAILS_V1.md",
          "docs/WINDOWS_SOFTPHONE_SMOKE_PATH.md",
          "docs/WINDOWS_TRAY_LOCAL_AUDIO_RUNTIME_CONTRACT.md",
          "runtime/asterisk-ari-live/docker-compose.yml",
          "runtime/asterisk-ari-live/config/*",
          "runtime/asterisk-gui-live/docker-compose.yml",
          "these are the canonical Asterisk stack artifacts for tenter-owned ARI and GUI runtime definition",
          "the canonical rendered live runtime state lives under .runtime/asterisk-ari-live/ and .runtime/asterisk-gui-live/ in the tenter checkout",
          "the first Windows headset smoke path is now repo-owned through SIP on :15060 plus RTP :12000-12019",
          "Repo-local voice runtime modules and smoke evidence:",
          "src/jhf_tenter_voice",
          "router, Asterisk adapter, STT, TTS, OpenClaw client, runtime, bring-up, live-call path",
          "Verified Fabric read-only consumption for:",
          "combinations profiles",
          "producer-/consumer matrix",
          "docs-standard",
          "voice-events",
          "Host-near verification against 192.168.1.172 for:",
          "OpenClaw health on :18789",
          "Fabric API on :28080",
          "Asterisk ARI on :19088",
          "Asterisk GUI runtime on :19089",
          "Packaging and package verification workflow:",
          ".gitea/workflows/ci.yml",
          "scripts/package/*"
        ],
        "whyItMatters": [
          "Live-read back on 192.168.1.172 during this documentation pass:",
          "openclaw-gateway is running on :18789, and /healthz returns {\"ok\":true,\"status\":\"live\"}.\njhf-fabric-api is running on :28080.\nFabric surfaces return 200 on:\n  - /api/v1/contracts/matrix\n  - /api/v1/contracts/docs-standard\n  - /api/v1/voice/contracts/events\n  - /api/v1/combinations/profiles\njhf-voice-asterisk-ari is running on :19088.\njhf-voice-asterisk-gui is running on :19089.\njhf-heddle-keycloak is running on :18090.",
          "Known live nuance:",
          "The GUI runtime is verified as healthy by container health and reachable on the host IP, but health probing should follow the tenter-owned verifier and deployment execution path instead of inventing a second ad hoc liveness rule.\nThe only active external blocker from the broader runtime suite remains the host-owned OpenClaw status wrapper issue in openclaw-environment#30."
        ],
        "stackRole": [],
        "notInScope": [
          "No repo-owned public dashboard or PBX admin suite.",
          "No browser/WebRTC operator call surface yet.",
          "No local replacement for Fabric combination or contract truth.",
          "No automatic host mutation from CI.",
          "No mandatory carrier runtime for the core agent-call path.",
          "No production Discord runtime in this repo."
        ]
      }
    },
    {
      "slug": "jhf-spindle",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-spindle",
      "canonicalProductName": "Spindle",
      "technicalName": "Spindle",
      "systemLayer": "Business / Delivery",
      "primaryBenefitAlias": {
        "de": "Die Geschäftslogik, auf die man sich verlassen kann",
        "en": "The business logic you can rely on",
        "fr": "La logique métier sur laquelle on peut compter"
      },
      "primaryBenefitSentence": {
        "de": "Spindle hält operative Arbeit an echter Business-Wahrheit, Rollen und Freigaben fest.",
        "en": "Spindle keeps operational work anchored to real business truth, roles, and approvals.",
        "fr": "Spindle ancre le travail opérationnel dans la vraie vérité métier, les rôles et les validations."
      },
      "experienceZone": "easier",
      "shortRole": {
        "de": "Business-Wahrheit und operative Geschäftslogik.",
        "en": "Business truth and operational business logic.",
        "fr": "Vérité métier et logique opérationnelle de l’activité."
      },
      "whatItIs": {
        "de": "Spindle ist die Business-Schicht, in der geschäftliche Wahrheit, Rollen und Prozesse verankert sind.",
        "en": "Spindle is the business layer where business truth, roles, and processes are anchored.",
        "fr": "Spindle est la couche métier où la vérité métier, les rôles et les processus sont ancrés."
      },
      "whatItDoes": {
        "de": "Es hält Freigaben, Geschäftslogik und System-of-Record-Verhalten stabil, damit operative Arbeit an echte Geschäftswahrheit anschließt.",
        "en": "It keeps approvals, business logic, and system-of-record behavior stable so operational work connects to real business truth.",
        "fr": "Il maintient stables les validations, la logique métier et le comportement de système d’enregistrement afin que le travail opérationnel se raccorde à une vraie vérité métier."
      },
      "whyItMatters": {
        "de": "Ohne Spindle fehlt die geschäftliche Bodenhaftung. Mit Spindle bleibt Automatisierung an echte Business-Entscheidungen gekoppelt.",
        "en": "Without Spindle, automation loses business grounding. With Spindle, it stays tied to real business decisions.",
        "fr": "Sans Spindle, l’automatisation perd son ancrage métier. Avec Spindle, elle reste liée à de vraies décisions métier."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wo im System die fachliche Wahrheit und operative Verbindlichkeit liegen.",
        "en": "Start here when you want to see where business truth and operational accountability live inside the system.",
        "fr": "Commencez ici si vous voulez voir où se trouvent la vérité métier et la responsabilité opérationnelle dans le système."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-spindle.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-wire",
        "jhf-shuttle",
        "jhf-heddle"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.531Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": "JaddaHelpifyr/jhf-spindle",
        "sourcePath": "README.md",
        "sourceStatus": "active",
        "lead": [
          "What It Is",
          "Helpifyr Spindle is the ERP-facing module in the Helpifyr ecosystem. It runs on Frappe/ERPNext and provides business-side execution, evidence, and integration boundaries for approvals, dispatch workflows, support contexts, and identity projection contracts."
        ],
        "whatItIs": [
          "Helpifyr Spindle is the ERP-facing module in the Helpifyr ecosystem. It runs on Frappe/ERPNext and provides business-side execution, evidence, and integration boundaries for approvals, dispatch workflows, support contexts, and identity projection contracts."
        ],
        "whatItDoes": [
          "Maintains ERP/business records as system-of-record state.",
          "Accepts and validates signed callbacks and webhook-style integration events.",
          "Publishes machine-readable contracts and business-truth identity surfaces for downstream consumers.",
          "Exposes guarded MCP operator tooling and runtime verification helpers.",
          "Provides optional support-lane integration surfaces (for example Zammad) under explicit contracts."
        ],
        "whyItMatters": [
          "Spindle keeps business truth explicit and auditable while automation, identity, and deployment ownership stay split across the right stack modules. This reduces silent drift, prevents local shadow truth, and keeps fail-closed behavior enforceable."
        ],
        "stackRole": [
          "Spindle owns:",
          "ERP/business truth and business execution evidence\nbusiness-facing integration contracts in this repository\nidentity/business-role/source semantics consumed by downstream components",
          "Spindle consumes (read-only where applicable):",
          "Fabric admission/governance truth surfaces\nidentity/session ownership from Heddle\nruntime hosting and environment materialization from deployment/env owners",
          "Spindle does not own:",
          "central OIDC/session authority\nFabric canonical registry ownership\nexternal carrier/provider runtime ownership"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-bobbin",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-bobbin",
      "canonicalProductName": "Bobbin",
      "technicalName": "Bobbin",
      "systemLayer": "Memory",
      "primaryBenefitAlias": {
        "de": "Das Gedächtnis, das Zusammenhänge behält",
        "en": "The memory that keeps the context",
        "fr": "La mémoire qui garde le contexte"
      },
      "primaryBenefitSentence": {
        "de": "Bobbin sorgt dafür, dass das System aus früheren Schritten lernen und sie nachvollziehbar wiederverwenden kann.",
        "en": "Bobbin lets the system keep context from earlier steps and reuse it in a traceable way.",
        "fr": "Bobbin permet au système de conserver le contexte des étapes précédentes et de le réutiliser de façon traçable."
      },
      "experienceZone": "smarter",
      "shortRole": {
        "de": "Persistente Memory- und Provenienzschicht.",
        "en": "Persistent memory and provenance layer.",
        "fr": "Couche persistante de mémoire et de provenance."
      },
      "whatItIs": {
        "de": "Bobbin ist die Memory-Schicht des Systems.",
        "en": "Bobbin is the memory layer of the system.",
        "fr": "Bobbin est la couche mémoire du système."
      },
      "whatItDoes": {
        "de": "Es hält Kontext, Spuren und Provenienz fest, damit Lernen, Nachvollziehbarkeit und Wiederverwendung auf echter Erinnerung statt auf Zufall beruhen.",
        "en": "It preserves context, traces, and provenance so learning, traceability, and reuse rest on real memory instead of chance.",
        "fr": "Il conserve le contexte, les traces et la provenance afin que l’apprentissage, la traçabilité et la réutilisation reposent sur une vraie mémoire plutôt que sur le hasard."
      },
      "whyItMatters": {
        "de": "Ohne Bobbin vergisst das System zu viel. Mit Bobbin werden frühere Schritte wieder nutzbar und überprüfbar.",
        "en": "Without Bobbin, the system forgets too much. With Bobbin, previous steps stay reusable and verifiable.",
        "fr": "Sans Bobbin, le système oublie trop. Avec Bobbin, les étapes précédentes restent réutilisables et vérifiables."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie das System Kontext behält, statt bei jedem Schritt wieder bei null zu beginnen.",
        "en": "Start here when you want to understand how the system keeps context instead of starting from zero each time.",
        "fr": "Commencez ici si vous voulez comprendre comment le système conserve le contexte au lieu de repartir de zéro à chaque fois."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-bobbin.html",
      "relatedModules": [
        "jhf-dobby",
        "jhf-shuttle",
        "jhf-loom",
        "helpifyr-fabric"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.556Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-bobbin is the Helpifyr module for protected memory runtime enablement around OpenClaw. It is not a resident web service. It is an operator-owned toolkit that installs, patches, verifies, and re-applies a bounded semantic-memory stack built around Mem0, LocalAI, and Qdrant.",
          "The repository also publishes machine-readable contracts and validation surfaces so other Helpifyr modules can understand what Bobbin actually owns, what it only consumes, and what must fail closed when runtime truth or governance truth is missing."
        ],
        "whatItIs": [
          "jhf-bobbin is the Helpifyr module for protected memory runtime enablement around OpenClaw. It is not a resident web service. It is an operator-owned toolkit that installs, patches, verifies, and re-applies a bounded semantic-memory stack built around Mem0, LocalAI, and Qdrant.",
          "The repository also publishes machine-readable contracts and validation surfaces so other Helpifyr modules can understand what Bobbin actually owns, what it only consumes, and what must fail closed when runtime truth or governance truth is missing."
        ],
        "whatItDoes": [
          "installs and re-applies the Bobbin memory stack on an OpenClaw host",
          "patches the Mem0/OpenClaw integration for the supported LocalAI embedding path",
          "validates stack truth, runtime truth, packaging truth, and Fabric-facing metadata",
          "enforces approved-summary-only and marked-artifact-only memory contract boundaries",
          "exports status and metadata surfaces for Fabric, deployment, and QA consumers"
        ],
        "whyItMatters": [
          "Without Bobbin, memory enablement around OpenClaw is easy to drift: plugin forks change, runtime endpoints move, model paths break, and policy ownership can become ambiguous. Bobbin keeps the memory path reproducible and observable while making sure Fabric-owned governance, authorization, and lifecycle truth is consumed read-only instead of recreated locally."
        ],
        "stackRole": [
          "Bobbin owns:",
          "the repo-local stack contract for jhf-bobbin\ninstaller, reapply, rollback, verify, and packaging tooling\nbounded materialization rules for supported memory-related inputs\nrepo-local metadata, status, and QA evidence surfaces",
          "Bobbin consumes read-only:",
          "Fabric governance and contract-family truth\nFabric runtime-claims and readiness truth\nFabric summary-export contract truth\nDobby marked provenance input contracts",
          "Bobbin explicitly does not own:",
          "a public runtime API\nFabric policy, lifecycle, or closure truth\nraw support-event ingestion as primary memory truth\nphase-1 voice memory persistence in jhf-tenter"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-dobby",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-dobby",
      "canonicalProductName": "Dobby",
      "technicalName": "Dobby",
      "systemLayer": "Adaptation",
      "primaryBenefitAlias": {
        "de": "Der Teil, der morgen besser macht als heute",
        "en": "The part that makes tomorrow better than today",
        "fr": "La partie qui rend demain meilleur qu'aujourd'hui"
      },
      "primaryBenefitSentence": {
        "de": "Dobby verbessert das System aus realer Evidenz, aber nur kontrolliert, nachvollziehbar und freigabefähig.",
        "en": "Dobby improves the system from real evidence, but only in a controlled, explainable, approval-aware way.",
        "fr": "Dobby améliore le système à partir de preuves réelles, mais uniquement de manière contrôlée, explicable et approuvable."
      },
      "experienceZone": "smarter",
      "shortRole": {
        "de": "Kontrollierte Adaptation und sicheres Systemlernen.",
        "en": "Controlled adaptation and safe system learning.",
        "fr": "Adaptation contrôlée et apprentissage sûr du système."
      },
      "whatItIs": {
        "de": "Dobby ist die Adaptationsschicht, in der das System aus realer Evidenz besser wird, ohne die Kontrolle zu verlieren.",
        "en": "Dobby is the adaptation layer where the system gets better from real evidence without losing control.",
        "fr": "Dobby est la couche d’adaptation où le système s’améliore à partir de preuves réelles sans perdre le contrôle."
      },
      "whatItDoes": {
        "de": "Es bewertet Replays, erzeugt Vorschläge, prüft Freigaben und hält Verbesserung nachvollziehbar, bounded und fail-closed.",
        "en": "It evaluates replays, creates proposals, checks approvals, and keeps improvement explainable, bounded, and fail-closed.",
        "fr": "Il évalue les replays, crée des propositions, vérifie les approbations et maintient l’amélioration explicable, bornée et fail-closed."
      },
      "whyItMatters": {
        "de": "Die meisten Systeme lernen unkontrolliert oder gar nicht. Dobby macht Optimierung möglich, ohne in Blackbox-Logik zu kippen.",
        "en": "Most systems either learn without control or do not learn at all. Dobby makes optimization possible without turning into a black box.",
        "fr": "La plupart des systèmes apprennent sans contrôle ou n’apprennent pas du tout. Dobby rend l’optimisation possible sans devenir une boîte noire."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, wie ein System besser wird, ohne sich selbst kaputtzuoptimieren.",
        "en": "Start here when you want to understand how a system gets better without optimizing itself into breakage.",
        "fr": "Commencez ici si vous voulez comprendre comment un système peut s’améliorer sans se casser lui-même."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-dobby.html",
      "relatedModules": [
        "jhf-bobbin",
        "jhf-tenter",
        "jhf-pattern",
        "jhf-warp",
        "jhf-beam"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.578Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": null,
        "sourcePath": "README.md",
        "sourceStatus": null,
        "lead": [
          "What It Is",
          "jhf-dobby is the adaptive-learning module in the Helpifyr stack. It ingests learning-relevant runtime traces, persists governed run and proposal state, evaluates replay-backed candidates, checks approvals through Warp, and keeps the whole flow aligned with canonical Fabric contract truth.",
          "It is not a generic autonomy engine and not a hidden policy system. Dobby exists to make stack optimization explainable, replayable, bounded, and fail-closed."
        ],
        "whatItIs": [
          "jhf-dobby is the adaptive-learning module in the Helpifyr stack. It ingests learning-relevant runtime traces, persists governed run and proposal state, evaluates replay-backed candidates, checks approvals through Warp, and keeps the whole flow aligned with canonical Fabric contract truth.",
          "It is not a generic autonomy engine and not a hidden policy system. Dobby exists to make stack optimization explainable, replayable, bounded, and fail-closed."
        ],
        "whatItDoes": [
          "accepts governed runtime traces through a stable learning API",
          "computes deterministic run, candidate, and provenance hashes",
          "evaluates replay candidates against threshold contracts",
          "creates proposal records for possible adaptive changes",
          "consumes Warp approval truth for proposal checks",
          "enriches learning state with optional Shuttle evidence, including read-only handoff outcome signals, and Bobbin-marked provenance",
          "exposes health, readiness, metrics, and contract-facing runtime views",
          "degrades safely when Fabric truth, approvals, or persistence are unavailable"
        ],
        "whyItMatters": [
          "Without Dobby, adaptation tends to drift into ad hoc heuristics, hidden scripts, or untraceable manual changes. Dobby gives the stack one governed place for learning signals, replay-backed evaluation, proposal lifecycle management, and bounded runtime recommendations.",
          "That matters because Helpifyr needs optimization without losing tenant isolation, contract truth, approval integrity, or operational explainability."
        ],
        "stackRole": [
          "Dobby owns:",
          "run, replay, proposal, and metric state inside its own persistence boundary\nadaptive-learning runtime orchestration\nreplay verdict calculation and proposal lifecycle transitions\nruntime-facing health, readiness, metrics, and learning endpoints",
          "Dobby consumes:",
          "Fabric as canonical truth for capability class, contract families, schema/matrix alignment, and admission posture\nWarp as approval-lane truth\nShuttle as optional read-only handoff evidence\nBobbin as a marked provenance sink",
          "Dobby explicitly does not own:",
          "Fabric contract registry or admission truth\napproval policy truth\nERP, procurement, CRM, or supplier master truth\nautonomous repo mutation or ungoverned writeback"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-beam",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-beam",
      "canonicalProductName": "Beam",
      "technicalName": "Beam",
      "systemLayer": "Safety / Compliance",
      "primaryBenefitAlias": {
        "de": "Die Sicherheit, die riskante Änderung stoppt",
        "en": "The safety layer that stops risky change",
        "fr": "La couche de sécurité qui arrête les changements risqués"
      },
      "primaryBenefitSentence": {
        "de": "Beam macht aus Hoffnung überprüfbare Sicherheitsentscheidungen, bevor Veränderungen live gehen.",
        "en": "Beam turns hope into verifiable safety decisions before change goes live.",
        "fr": "Beam transforme l'espoir en décisions de sécurité vérifiables avant qu'un changement ne passe en production."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Sicherheits-, Upgrade- und Change-Verifikationsschicht.",
        "en": "Safety, upgrade, and change-verification layer.",
        "fr": "Couche de sécurité, d’upgrade et de vérification du changement."
      },
      "whatItIs": {
        "de": "Beam ist die Schicht, die Änderungen vor dem Live-Schritt prüfbar macht.",
        "en": "Beam is the layer that makes change verifiable before it goes live.",
        "fr": "Beam est la couche qui rend le changement vérifiable avant son passage en production."
      },
      "whatItDoes": {
        "de": "Es sammelt Evidence, prüft Upgrade- und Rollback-Posture und macht aus Hoffnung belastbare Sicherheitsentscheidungen.",
        "en": "It collects evidence, verifies upgrade and rollback posture, and turns hope into defensible safety decisions.",
        "fr": "Il collecte des preuves, vérifie la posture d’upgrade et de rollback et transforme l’espoir en décisions de sécurité défendables."
      },
      "whyItMatters": {
        "de": "Ohne Beam wird Veränderung riskant und schwer auditierbar. Mit Beam bleibt Change kontrolliert und reproduzierbar.",
        "en": "Without Beam, change becomes risky and hard to audit. With Beam, change stays controlled and reproducible.",
        "fr": "Sans Beam, le changement devient risqué et difficile à auditer. Avec Beam, il reste contrôlé et reproductible."
      },
      "whenToStart": {
        "de": "Wenn du wissen willst, ob eine Änderung sicher ist, bevor sie Schaden anrichtet.",
        "en": "Start here when you want to know whether change is safe before it causes harm.",
        "fr": "Commencez ici si vous voulez savoir si un changement est sûr avant qu’il ne cause des dégâts."
      },
      "status": {
        "key": "active",
        "label": {
          "de": "Verfügbar",
          "en": "Available now",
          "fr": "Disponible"
        },
        "note": {
          "de": "Aktiver Teil des Systems mit klar definierten Grenzen.",
          "en": "Active part of the system with clearly defined boundaries.",
          "fr": "Partie active du système avec des limites clairement définies."
        }
      },
      "deepDiveUrl": "/jhf-beam.html",
      "relatedModules": [
        "jhf-pattern",
        "jhf-tenter",
        "jhf-dobby",
        "helpifyr-fabric",
        "jhf-selvage"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.602Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": "JaddaHelpifyr/jhf-beam",
        "sourcePath": "README.md",
        "sourceStatus": "active",
        "lead": [
          "What It Is",
          "jhf-beam is the Helpifyr safety and certification module for upgrades, rollback posture, live-readback verification, and issue-driven operational evidence. It is a control and validation repository, not a product runtime service.",
          "The module is designed to make change decisions auditable: every critical decision should be reproducible from contracts, verifiers, and evidence artifacts in this repository."
        ],
        "whatItIs": [
          "jhf-beam is the Helpifyr safety and certification module for upgrades, rollback posture, live-readback verification, and issue-driven operational evidence. It is a control and validation repository, not a product runtime service.",
          "The module is designed to make change decisions auditable: every critical decision should be reproducible from contracts, verifiers, and evidence artifacts in this repository."
        ],
        "whatItDoes": [
          "Defines certification standards for full validation, bulletproof reruns, upgrade certification, and monitoring/trigger certification.",
          "Validates run manifests, evidence manifests, policy artifacts, and compatibility windows against schemas and governance rules.",
          "Consumes Fabric truth surfaces read-only and fails closed on drift or incompatible contract posture.",
          "Provides host-bound verification entrypoints and promotion feedback contracts for stage-based operational flows.",
          "Publishes machine-readable artifacts for run history, supportability posture, package contracts, and maintenance governance."
        ],
        "whyItMatters": [
          "Beam reduces operational risk when a \"green once\" result is not enough. It enforces repeatable verification, explicit rollback posture, and clear ownership boundaries between truth owners (for runtime/business contracts) and safety validators (Beam).",
          "Maintenance and promotion flows are part of the active Beam contract surface. The repository carries promotion-contract, live-feedback-contract, process-promotion-issue.sh, manage-promotion-state.py, attach-lock-evidence.py, and update-stage3-metrics.py so staged evidence, locking, and feedback publication stay reproducible.",
          "Beam also follows a read-first shared context posture: shared postgres and fabric-write-back are explicitly not Beam-owned runtime truth, and any shared-service dependency stays under the documented owner boundary instead of becoming an implicit Beam execution substrate."
        ],
        "stackRole": [
          "Beam owns:",
          "certification standards and wave contracts\nevidence, verdict, lock, and promotion governance contracts\nverification tooling for repo-level and host-bound safety checks\nmachine-readable upgrade and maintenance policy surfaces",
          "Beam consumes (read-only):",
          "Fabric contract and profile truth from published surfaces\ndeployment evidence and stage handoff payloads from owner repos",
          "Beam explicitly does not own:",
          "Fabric contract authoring truth\napplication runtime truth for product services\ndeployment orchestration truth for non-Beam repositories"
        ],
        "notInScope": []
      }
    },
    {
      "slug": "jhf-selvage",
      "repoUrl": "http://192.168.1.166:3000/JaddaHelpifyr/jhf-selvage",
      "canonicalProductName": "Selvage",
      "technicalName": "Selvage",
      "systemLayer": "Safety / Compliance",
      "primaryBenefitAlias": {
        "de": "Die Grenze, die Compliance vorbereitet",
        "en": "The boundary that prepares compliance",
        "fr": "La frontière qui prépare la conformité"
      },
      "primaryBenefitSentence": {
        "de": "Selvage baut die Compliance-Basis kontrolliert auf, ohne heute schon eine fertige Produktionsschicht vorzutäuschen.",
        "en": "Selvage builds the compliance baseline carefully without pretending to be a finished production layer today.",
        "fr": "Selvage construit la base de conformité avec soin sans prétendre être dès aujourd'hui une couche de production finalisée."
      },
      "experienceZone": "safer",
      "shortRole": {
        "de": "Compliance-Governance-Kandidat in Vorbereitung.",
        "en": "Compliance-governance candidate in preparation.",
        "fr": "Candidat de gouvernance conformité en préparation."
      },
      "whatItIs": {
        "de": "Selvage ist die entstehende Compliance-Schicht für Admission Preparation, Screening und Governance-Baselines.",
        "en": "Selvage is the emerging compliance layer for admission preparation, screening, and governance baselines.",
        "fr": "Selvage est la couche de conformité en cours d’émergence pour la préparation d’admission, le screening et les bases de gouvernance."
      },
      "whatItDoes": {
        "de": "Heute bereitet es Compliance- und Screening-Posture vor, ohne bereits als fertige Produktionsschicht verkauft zu werden.",
        "en": "Today it prepares compliance and screening posture without being presented as a finished production layer.",
        "fr": "Aujourd’hui, il prépare la posture de conformité et de screening sans être présenté comme une couche de production finalisée."
      },
      "whyItMatters": {
        "de": "Compliance muss sauber vorbereitet werden, bevor sie belastbar in den Stack aufgenommen werden kann.",
        "en": "Compliance must be prepared carefully before it can become a dependable part of the stack.",
        "fr": "La conformité doit être préparée avec soin avant de devenir une partie fiable du stack."
      },
      "whenToStart": {
        "de": "Wenn du verstehen willst, welche Compliance-Schicht entsteht und was heute bewusst noch nicht fertig ist.",
        "en": "Start here when you want to understand which compliance layer is emerging and what is intentionally not ready yet.",
        "fr": "Commencez ici si vous voulez comprendre quelle couche de conformité est en train d’émerger et ce qui n’est volontairement pas encore prêt."
      },
      "status": {
        "key": "wip",
        "label": {
          "de": "In Vorbereitung",
          "en": "Work in progress",
          "fr": "En cours"
        },
        "note": {
          "de": "Noch nicht als fertige Produktionsschicht zu behandeln.",
          "en": "Do not treat as a finished production layer yet.",
          "fr": "Ne pas traiter comme une couche de production finalisée pour l’instant."
        }
      },
      "deepDiveUrl": "/jhf-selvage.html",
      "relatedModules": [
        "helpifyr-fabric",
        "jhf-beam",
        "jhf-wire",
        "jhf-heddle"
      ],
      "lastReadmeSyncAt": "2026-04-29T16:50:19.623Z",
      "readmeSource": "gitea",
      "readme": {
        "sourceRepo": "JaddaHelpifyr/jhf-selvage",
        "sourcePath": "README.md",
        "sourceStatus": "active",
        "lead": [
          "---"
        ],
        "whatItIs": [
          "---"
        ],
        "whatItDoes": [
          "Aleph runtime stack compose baseline",
          "Entity screening workflow export",
          "WireMock mappings for screening test behavior",
          "Fabric admission-preparation baseline for future fabric-all compliance-governance membership"
        ],
        "whyItMatters": [
          "jhf-selvage is currently work in progress and should be treated as not working / not production ready.",
          "This repository is the new home for compliance-oriented Aleph screening runtime assets carved out from jhf-wire."
        ],
        "stackRole": [],
        "notInScope": [
          "production-grade deployment guarantees",
          "completed migration/cutover automation",
          "full CI hardening"
        ]
      }
    }
  ]
}
