Download ProjectIntakeTower/visual_summary/project_portfolio_map_v1.html from smlflg/AgentProjectMinenraeumer: direct link, hf CLI and curl.
- Browser
- Download file 23.2 kB
-
https://huggingface.co/smlflg/AgentProjectMinenraeumer/resolve/main/ProjectIntakeTower/visual_summary/project_portfolio_map_v1.html
- Command line
-
hf download hf://smlflg/AgentProjectMinenraeumer/ProjectIntakeTower/visual_summary/project_portfolio_map_v1.html
-
curl -L -o project_portfolio_map_v1.html https://huggingface.co/smlflg/AgentProjectMinenraeumer/resolve/main/ProjectIntakeTower/visual_summary/project_portfolio_map_v1.html
23.2 kB
| <html lang="de"> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |
| <title>Project Portfolio Map V1</title> | |
| <style> | |
| :root { | |
| --bg: #f7f4ee; | |
| --surface: #ffffff; | |
| --surface-muted: #eee8de; | |
| --ink: #181716; | |
| --muted: #635c54; | |
| --line: #d8d1c7; | |
| --red: #b42318; | |
| --amber: #9a5b00; | |
| --green: #146c43; | |
| --blue: #1f5f8f; | |
| --purple: #6046a6; | |
| --shadow: 0 14px 34px rgba(44, 37, 29, 0.10); | |
| } | |
| * { box-sizing: border-box; } | |
| html { scroll-behavior: smooth; } | |
| body { | |
| margin: 0; | |
| background: var(--bg); | |
| color: var(--ink); | |
| font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; | |
| line-height: 1.48; | |
| } | |
| a { | |
| color: inherit; | |
| text-decoration-color: rgba(31, 95, 143, 0.55); | |
| text-decoration-thickness: 1px; | |
| text-underline-offset: 3px; | |
| } | |
| .page { | |
| width: min(1240px, calc(100% - 32px)); | |
| margin: 0 auto; | |
| padding: 24px 0 48px; | |
| } | |
| .topbar { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 10px; | |
| align-items: center; | |
| justify-content: space-between; | |
| margin-bottom: 14px; | |
| color: var(--muted); | |
| font-size: 14px; | |
| } | |
| .topbar nav { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 10px; | |
| } | |
| .hero, | |
| .summary, | |
| .section, | |
| .family, | |
| .decision, | |
| .note { | |
| background: var(--surface); | |
| border: 1px solid var(--line); | |
| border-radius: 8px; | |
| box-shadow: var(--shadow); | |
| } | |
| .hero { | |
| display: grid; | |
| grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr); | |
| gap: 18px; | |
| margin-bottom: 18px; | |
| padding: 24px; | |
| } | |
| .eyebrow { | |
| margin: 0 0 9px; | |
| color: var(--blue); | |
| font-size: 12px; | |
| font-weight: 800; | |
| letter-spacing: 0.08em; | |
| text-transform: uppercase; | |
| } | |
| h1, | |
| h2, | |
| h3, | |
| p { | |
| margin-top: 0; | |
| } | |
| h1 { | |
| max-width: 13ch; | |
| margin-bottom: 14px; | |
| font-size: clamp(38px, 6vw, 76px); | |
| line-height: 0.95; | |
| letter-spacing: 0; | |
| } | |
| h2 { | |
| margin-bottom: 12px; | |
| font-size: 21px; | |
| line-height: 1.15; | |
| } | |
| h3 { | |
| margin-bottom: 8px; | |
| font-size: 16px; | |
| line-height: 1.2; | |
| } | |
| .lead { | |
| max-width: 72ch; | |
| margin-bottom: 0; | |
| color: var(--muted); | |
| font-size: 17px; | |
| } | |
| .hero-aside { | |
| display: grid; | |
| gap: 10px; | |
| align-content: start; | |
| } | |
| .answer-row { | |
| display: grid; | |
| gap: 4px; | |
| padding: 12px; | |
| border: 1px solid var(--line); | |
| border-radius: 8px; | |
| background: var(--surface-muted); | |
| } | |
| .label { | |
| color: var(--muted); | |
| font-size: 12px; | |
| font-weight: 800; | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| } | |
| .value { | |
| font-weight: 750; | |
| } | |
| .metrics { | |
| display: grid; | |
| grid-template-columns: repeat(4, minmax(0, 1fr)); | |
| gap: 10px; | |
| margin-bottom: 18px; | |
| } | |
| .summary { | |
| padding: 14px; | |
| min-height: 100px; | |
| } | |
| .summary strong { | |
| display: block; | |
| margin-bottom: 5px; | |
| font-size: 28px; | |
| line-height: 1; | |
| } | |
| .summary span { | |
| color: var(--muted); | |
| font-size: 13px; | |
| } | |
| .layout { | |
| display: grid; | |
| grid-template-columns: 280px minmax(0, 1fr); | |
| gap: 18px; | |
| align-items: start; | |
| } | |
| .toc { | |
| position: sticky; | |
| top: 16px; | |
| display: grid; | |
| gap: 8px; | |
| padding: 16px; | |
| background: var(--surface); | |
| border: 1px solid var(--line); | |
| border-radius: 8px; | |
| box-shadow: var(--shadow); | |
| } | |
| .toc a { | |
| display: block; | |
| padding: 7px 0; | |
| color: var(--muted); | |
| font-size: 14px; | |
| text-decoration: none; | |
| border-bottom: 1px solid var(--line); | |
| } | |
| .toc a:last-child { | |
| border-bottom: 0; | |
| } | |
| .content { | |
| display: grid; | |
| gap: 18px; | |
| min-width: 0; | |
| } | |
| .section { | |
| padding: 20px; | |
| } | |
| .section p:last-child { | |
| margin-bottom: 0; | |
| } | |
| .grid { | |
| display: grid; | |
| gap: 14px; | |
| } | |
| .grid.two { | |
| grid-template-columns: repeat(2, minmax(0, 1fr)); | |
| } | |
| .grid.three { | |
| grid-template-columns: repeat(3, minmax(0, 1fr)); | |
| } | |
| .family, | |
| .decision, | |
| .note { | |
| padding: 16px; | |
| min-width: 0; | |
| } | |
| .family { | |
| border-left: 5px solid var(--blue); | |
| } | |
| .family.hermes { border-left-color: var(--red); } | |
| .family.sidecar { border-left-color: var(--purple); } | |
| .family.uni { border-left-color: var(--green); } | |
| .family.apps { border-left-color: var(--amber); } | |
| .family.archive { border-left-color: var(--muted); } | |
| .family p, | |
| .decision p, | |
| .note p { | |
| color: var(--muted); | |
| } | |
| .path-list, | |
| .plain-list { | |
| display: grid; | |
| gap: 6px; | |
| margin: 0; | |
| padding: 0; | |
| list-style: none; | |
| } | |
| .path-list li, | |
| .plain-list li { | |
| min-width: 0; | |
| overflow-wrap: anywhere; | |
| } | |
| .path-list li { | |
| padding: 7px 8px; | |
| border: 1px solid var(--line); | |
| border-radius: 7px; | |
| background: #fbfaf8; | |
| font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; | |
| font-size: 13px; | |
| } | |
| .badge-row { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 6px; | |
| margin: 10px 0 12px; | |
| } | |
| .badge { | |
| display: inline-flex; | |
| align-items: center; | |
| min-height: 24px; | |
| padding: 3px 8px; | |
| border: 1px solid var(--line); | |
| border-radius: 999px; | |
| background: #fbfaf8; | |
| color: var(--muted); | |
| font-size: 12px; | |
| font-weight: 750; | |
| white-space: nowrap; | |
| } | |
| .badge.red { | |
| color: var(--red); | |
| border-color: rgba(180, 35, 24, 0.34); | |
| background: #fff1ef; | |
| } | |
| .badge.amber { | |
| color: var(--amber); | |
| border-color: rgba(154, 91, 0, 0.34); | |
| background: #fff8e8; | |
| } | |
| .badge.green { | |
| color: var(--green); | |
| border-color: rgba(20, 108, 67, 0.34); | |
| background: #eefbf3; | |
| } | |
| .badge.blue { | |
| color: var(--blue); | |
| border-color: rgba(31, 95, 143, 0.34); | |
| background: #eef6ff; | |
| } | |
| .badge.purple { | |
| color: var(--purple); | |
| border-color: rgba(96, 70, 166, 0.34); | |
| background: #f4f0ff; | |
| } | |
| .compact-table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| overflow-wrap: anywhere; | |
| } | |
| .compact-table th, | |
| .compact-table td { | |
| padding: 11px 10px; | |
| border-bottom: 1px solid var(--line); | |
| text-align: left; | |
| vertical-align: top; | |
| } | |
| .compact-table th { | |
| color: var(--muted); | |
| font-size: 12px; | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| } | |
| .compact-table tr:last-child td { | |
| border-bottom: 0; | |
| } | |
| code { | |
| padding: 1px 4px; | |
| border-radius: 5px; | |
| background: #ebe6dd; | |
| font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; | |
| font-size: 0.94em; | |
| } | |
| .decision { | |
| border-left: 5px solid var(--amber); | |
| } | |
| .decision.today { | |
| border-left-color: var(--green); | |
| } | |
| .decision.later { | |
| border-left-color: var(--purple); | |
| } | |
| .footer-links { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 12px; | |
| color: var(--muted); | |
| font-size: 14px; | |
| } | |
| @media (max-width: 960px) { | |
| .hero, | |
| .layout, | |
| .metrics, | |
| .grid.two, | |
| .grid.three { | |
| grid-template-columns: 1fr; | |
| } | |
| .toc { | |
| position: static; | |
| } | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <main class="page"> | |
| <div class="topbar"> | |
| <span>ProjectIntakeTower / Portfolio Map V1 / 2026-05-05</span> | |
| <nav aria-label="Related artifacts"> | |
| <a href="../PROJECT_PORTFOLIO_MAP_V1.md">Markdown</a> | |
| <a href="owner_decision_board.html">Decision Board</a> | |
| <a href="project_learning_graphic.html">Raw Graphic</a> | |
| </nav> | |
| </div> | |
| <header class="hero"> | |
| <section> | |
| <p class="eyebrow">Owner-facing portfolio map</p> | |
| <h1>Project Portfolio Map V1</h1> | |
| <p class="lead"> | |
| Diese Website ist die lesbare Fassung der Markdown-Ernte aus ProjectIntakeTower. | |
| Sie soll nicht alle 500 Cluster erklären, sondern Projektfamilien, Risiken und die nächste | |
| kontrollierte Arbeitsreihenfolge sichtbar machen. | |
| </p> | |
| </section> | |
| <aside class="hero-aside" aria-label="Current answer"> | |
| <div class="answer-row"> | |
| <span class="label">Heute wahr</span> | |
| <span class="value">ProjectIntakeTower ist als Rohkarte brauchbar, aber kein automatischer Wahrheitsspeicher.</span> | |
| </div> | |
| <div class="answer-row"> | |
| <span class="label">Heute nicht tun</span> | |
| <span class="value">Keine Agenten-Kaskade, keine Source-Edits, keine Issues, keine Merge- oder Archive-Aktion.</span> | |
| </div> | |
| <div class="answer-row"> | |
| <span class="label">Nächste Entscheidung</span> | |
| <span class="value">Weiter verdichten oder genau ein Repo read-only für einen Sicherheits-Snapshot vorbereiten.</span> | |
| </div> | |
| </aside> | |
| </header> | |
| <section class="metrics" aria-label="Portfolio counts"> | |
| <div class="summary"> | |
| <strong>500</strong> | |
| <span>Projekt- und Artefaktcluster</span> | |
| </div> | |
| <div class="summary"> | |
| <strong>98</strong> | |
| <span>Git-Repos im Scan</span> | |
| </div> | |
| <div class="summary"> | |
| <strong>58</strong> | |
| <span>Repos mit uncommitted changes</span> | |
| </div> | |
| <div class="summary"> | |
| <strong>66</strong> | |
| <span>Human-Decision-Einträge in triage</span> | |
| </div> | |
| </section> | |
| <div class="layout"> | |
| <aside class="toc" aria-label="Page sections"> | |
| <strong>Abschnitte</strong> | |
| <a href="#purpose">Zweck</a> | |
| <a href="#truth">Was gilt</a> | |
| <a href="#families">Projektfamilien</a> | |
| <a href="#decisions">Entscheidungen</a> | |
| <a href="#ignore">Heute ignorieren</a> | |
| <a href="#next">Nächste Aktion</a> | |
| <a href="#sources">Quellen</a> | |
| </aside> | |
| <div class="content"> | |
| <section class="section" id="purpose"> | |
| <h2>Zweck und Nicht-Zweck</h2> | |
| <div class="grid two"> | |
| <div> | |
| <h3>Zweck</h3> | |
| <p> | |
| Projekte mappen, ihren Zustand verstehen und daraus eine kontrollierte nächste | |
| Arbeitsreihenfolge ableiten. | |
| </p> | |
| </div> | |
| <div> | |
| <h3>Nicht-Zweck</h3> | |
| <ul class="plain-list"> | |
| <li>Keine Agenten-Kaskade rekonstruieren.</li> | |
| <li>Nicht alle 500 Cluster verstehen.</li> | |
| <li>Nicht 66 Entscheidungen auf einmal treffen.</li> | |
| <li>Keine Source-Projekte, GitHub Issues, Merges oder Archive-Aktionen.</li> | |
| </ul> | |
| </div> | |
| </div> | |
| </section> | |
| <section class="section" id="truth"> | |
| <h2>Was jetzt als wahr gilt</h2> | |
| <p> | |
| Die Rohkarte ist brauchbar. Gleichzeitig sind die Quellen nicht vollständig konsistent: | |
| <code>OWNER_DIGEST.md</code> ist ein grober Einstieg, <code>triage/*.md</code> ist die | |
| aktuellere Arbeitsgrundlage. Nichts wird blind automatisiert. | |
| </p> | |
| <table class="compact-table"> | |
| <thead> | |
| <tr> | |
| <th>Signal</th> | |
| <th>Wert</th> | |
| <th>Bedeutung</th> | |
| </tr> | |
| </thead> | |
| <tbody> | |
| <tr> | |
| <td>Duplicate-Cluster</td> | |
| <td>4</td> | |
| <td>Es gibt echte Merge-/Konsolidierungsarbeit, aber nicht heute als Aktion.</td> | |
| </tr> | |
| <tr> | |
| <td>agent_control_tower_near</td> | |
| <td>14</td> | |
| <td>Die Tower-Idee ist verteilt und braucht zuerst eine Anchor-Entscheidung.</td> | |
| </tr> | |
| <tr> | |
| <td>hermes_near</td> | |
| <td>5</td> | |
| <td>Operatives Nervensystem, vorsichtig und zuerst read-only behandeln.</td> | |
| </tr> | |
| <tr> | |
| <td>Broken/auffällig</td> | |
| <td>72</td> | |
| <td>Signal für spätere Triage, nicht für sofortige Bulk-Reparatur.</td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| </section> | |
| <section class="section" id="families"> | |
| <h2>Wichtigste Projektfamilien</h2> | |
| <div class="grid two"> | |
| <article class="family"> | |
| <h3>1. Agent Control Tower / Kommandozentrale</h3> | |
| <p>Langfristiger Steuerungsraum. Viele Varianten derselben Grundidee, deshalb nicht weiterbauen, bevor der Anchor entschieden ist.</p> | |
| <div class="badge-row"> | |
| <span class="badge red">HUMAN_DECISION_REQUIRED</span> | |
| <span class="badge purple">Konsolidierung</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>/home/smlflg/Projekte/Zentrale</li> | |
| <li>/home/smlflg/Projekte/ACT-agentcommandotower</li> | |
| <li>/home/smlflg/Projekte/AIOS-Cockpit</li> | |
| <li>/home/smlflg/Projekte/CodexDashBoard</li> | |
| <li>/home/smlflg/Projekte/ProjectDashboard</li> | |
| <li>/home/smlflg/Projekte/HarnessDashboard</li> | |
| <li>/home/smlflg/Projekte/AgentSwarmDashboard</li> | |
| <li>/home/smlflg/Projekte/KomandoZentral</li> | |
| <li>/home/smlflg/Projekte/MultiHarnessStudio</li> | |
| <li>/home/smlflg/Projekte/AgentArena</li> | |
| </ul> | |
| </article> | |
| <article class="family hermes"> | |
| <h3>2. Hermes / operatives Agenten-Nervensystem</h3> | |
| <p>Sehr wichtig, aber potentiell gefährlich. <code>.hermes</code> hat viele uncommitted changes und darf nicht wild verändert werden.</p> | |
| <div class="badge-row"> | |
| <span class="badge red">STABILIZE_FIRST</span> | |
| <span class="badge amber">Read-only snapshot planen</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>/home/smlflg/.hermes</li> | |
| <li>/home/smlflg/Projekte/UEBER_AGENT</li> | |
| <li>Hermes-nahe Agent-/Profile-/Skill-Artefakte</li> | |
| </ul> | |
| </article> | |
| <article class="family sidecar"> | |
| <h3>3. Sidecar-Familie</h3> | |
| <p>Klarer Duplicate-/Merge-Cluster. Erst Referenzversion und Ideenspeicher entscheiden, dann erst vergleichen oder mergen.</p> | |
| <div class="badge-row"> | |
| <span class="badge purple">MERGE_DECISION_LATER</span> | |
| <span class="badge red">nicht refactoren</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar-V5</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar-V6</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar-V7</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar-V8</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/Sidecar-ng</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/SidecarDashboard</li> | |
| <li>/home/smlflg/Projekte/Sidecar-Workspace/codex-sidecarV1</li> | |
| </ul> | |
| </article> | |
| <article class="family uni"> | |
| <h3>4. Uni-/Lern-Agenten</h3> | |
| <p>Nützlich, aber nicht Hauptanker für heute. AgentTestUniSupport ist dirty und braucht Stabilisierung, falls es aktiv genutzt wird.</p> | |
| <div class="badge-row"> | |
| <span class="badge green">KEEP_BUT_NOT_TODAY</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>/home/smlflg/Projekte/Jobs_Selbständigkeit_Geldverdienen/AgentTestUniSupport</li> | |
| <li>/home/smlflg/Projekte/StudyAgent</li> | |
| </ul> | |
| </article> | |
| <article class="family apps"> | |
| <h3>5. Konkrete kleine Apps / Experimente</h3> | |
| <p>Teilweise wertvoll, teilweise Merge-/Pause-Kandidaten. WerBinIch wirkt konkret und wahrscheinlich gut stabilisierbar.</p> | |
| <div class="badge-row"> | |
| <span class="badge amber">SECONDARY</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>/home/smlflg/Projekte/WerBinIch</li> | |
| <li>/home/smlflg/Projekte/BahnAgent</li> | |
| <li>/home/smlflg/Projekte/PortfolioTimeline</li> | |
| <li>/home/smlflg/Projekte/PromptGarage</li> | |
| <li>/home/smlflg/Projekte/PromptGarageUI</li> | |
| </ul> | |
| </article> | |
| <article class="family archive"> | |
| <h3>6. Archive-/Cache-/Evaluation-Artefakte</h3> | |
| <p>Wahrscheinlich keine aktiven Projekte. Später markieren, aber nicht löschen.</p> | |
| <div class="badge-row"> | |
| <span class="badge">ARCHIVE_CANDIDATE</span> | |
| <span class="badge red">nicht löschen</span> | |
| </div> | |
| <ul class="path-list"> | |
| <li>FirstRealHarnessEvaluation_KarpathiesMD/results/repo_cache/django__...</li> | |
| <li>FirstRealHarnessEvaluation_KarpathiesMD/results/repo_cache/astropy__...</li> | |
| <li>FirstRealHarnessEvaluation_KarpathiesMD/results/repo_cache/sympy__...</li> | |
| <li>codex-skill-validation-fixtures/commit-repo</li> | |
| </ul> | |
| </article> | |
| </div> | |
| </section> | |
| <section class="section" id="decisions"> | |
| <h2>Top-Entscheidungen</h2> | |
| <div class="grid two"> | |
| <article class="decision today"> | |
| <h3>1. Heute: Ist die Karte brauchbar?</h3> | |
| <p>Ja, als Rohkarte. Nein, nicht als automatisch vertrauenswürdiger Wahrheitsspeicher.</p> | |
| <div class="badge-row"> | |
| <span class="badge green">Verifier grün</span> | |
| <span class="badge amber">Inhalt bleibt zu prüfen</span> | |
| </div> | |
| </article> | |
| <article class="decision today"> | |
| <h3>2. Heute oder morgen: erstes Snapshot-Repo</h3> | |
| <p>Stärkste Tendenz: <code>/home/smlflg/.hermes</code>, weil es operatives Nervensystem ist. Nur read-only anschauen und Snapshot planen.</p> | |
| <div class="badge-row"> | |
| <span class="badge red">kein blindes Commit</span> | |
| </div> | |
| </article> | |
| <article class="decision later"> | |
| <h3>3. Später: Agent-Control-Tower-Anchor</h3> | |
| <p>Kandidaten: ACT-agentcommandotower, Zentrale, AIOS-Cockpit, ProjectDashboard / CodexDashBoard als UI-Quelle.</p> | |
| </article> | |
| <article class="decision later"> | |
| <h3>4. Später: Sidecar-Referenz</h3> | |
| <p>Kandidaten: Sidecar-V7, Sidecar-V8, Sidecar-ng. Noch nicht mergen, nur vergleichen.</p> | |
| </article> | |
| </div> | |
| </section> | |
| <section class="section" id="ignore"> | |
| <h2>Heute bewusst ignorieren</h2> | |
| <div class="grid two"> | |
| <ul class="plain-list"> | |
| <li>Alle 500 Cluster vollständig durchlesen.</li> | |
| <li>Alle 66 Human Decisions bearbeiten.</li> | |
| <li>Alle PAUSE-Projekte und Archive-Kandidaten klären.</li> | |
| <li>Alle Issue-Drafts prüfen.</li> | |
| </ul> | |
| <ul class="plain-list"> | |
| <li>Alle Pending-Jobs außer einem bewusst ausgewählten starten.</li> | |
| <li>Agenten-Kaskaden-Details rekonstruieren.</li> | |
| <li>Builds, Refactors, Merges oder Source-Projekt-Änderungen ausführen.</li> | |
| <li>GitHub Issues erstellen.</li> | |
| </ul> | |
| </div> | |
| </section> | |
| <section class="section" id="next"> | |
| <h2>Nächste konkrete Aktion</h2> | |
| <table class="compact-table"> | |
| <thead> | |
| <tr> | |
| <th>Schritt</th> | |
| <th>Status</th> | |
| <th>Konsequenz</th> | |
| </tr> | |
| </thead> | |
| <tbody> | |
| <tr> | |
| <td>Verifier laufen lassen</td> | |
| <td><span class="badge green">done</span></td> | |
| <td>Inventory, Job-Contracts und Artefakte sind konsistent genug.</td> | |
| </tr> | |
| <tr> | |
| <td>Ergebnis in Markdown ergänzen</td> | |
| <td><span class="badge green">done</span></td> | |
| <td><code>PROJECT_PORTFOLIO_MAP_V1.md</code> bleibt kanonisch.</td> | |
| </tr> | |
| <tr> | |
| <td>Danach entscheiden</td> | |
| <td><span class="badge amber">open</span></td> | |
| <td>ProjectIntakeTower weiter verdichten oder genau ein Repo read-only snapshotten.</td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| </section> | |
| <section class="section" id="verifier"> | |
| <h2>Verifier-Ergebnis</h2> | |
| <table class="compact-table"> | |
| <thead> | |
| <tr> | |
| <th>Command</th> | |
| <th>Result</th> | |
| </tr> | |
| </thead> | |
| <tbody> | |
| <tr> | |
| <td><code>python3 verifier/verify_inventory.py</code></td> | |
| <td>passed, 500 projects</td> | |
| </tr> | |
| <tr> | |
| <td><code>python3 verifier/verify_job_contracts.py</code></td> | |
| <td>passed, 139 pending jobs</td> | |
| </tr> | |
| <tr> | |
| <td><code>python3 verifier/verify_artifacts.py</code></td> | |
| <td>passed</td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| <p> | |
| Interpretation: Die Hauptartefakte sind konsistent genug, um kontrolliert weiterzuarbeiten. | |
| Das bestätigt nicht automatisch jede Triage-Ableitung inhaltlich. | |
| </p> | |
| </section> | |
| <section class="section" id="sources"> | |
| <h2>Quellen und Nachbaransichten</h2> | |
| <p>Diese HTML-Seite ist eine Lesefassung. Die Markdown-Datei bleibt die kanonische Arbeitsnotiz.</p> | |
| <div class="footer-links"> | |
| <a href="../PROJECT_PORTFOLIO_MAP_V1.md">PROJECT_PORTFOLIO_MAP_V1.md</a> | |
| <a href="owner_decision_board.html">Owner Decision Board</a> | |
| <a href="project_learning_graphic.html">Raw Generated Graphic</a> | |
| <a href="../OWNER_DIGEST.md">OWNER_DIGEST.md</a> | |
| <a href="../triage/TOP_10_NEXT_ACTIONS.md">TOP_10_NEXT_ACTIONS.md</a> | |
| <a href="../triage/HUMAN_DECISION_REQUIRED.md">HUMAN_DECISION_REQUIRED.md</a> | |
| </div> | |
| </section> | |
| </div> | |
| </div> | |
| </main> | |
| </body> | |
| </html> | |