|
<!doctype html> |
|
<html lang="zh-Hant"> |
|
<head> |
|
<meta charset="utf-8"> |
|
<meta name="viewport" content="width=device-width, initial-scale=1"> |
|
<title>AI 預測驗證 Repo Change Handoff Console</title> |
|
<style> |
|
:root{--ink:#17212b;--muted:#617080;--line:#d9dfe7;--bg:#f6f8fb;--panel:#fff;--blue:#2457d6;--green:#14805a;--amber:#a35f00;--red:#b42318;--soft:#eef2f7} |
|
*{box-sizing:border-box}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.5} |
|
header{background:#fff;border-bottom:1px solid var(--line);padding:22px clamp(18px,4vw,48px)}main{padding:22px clamp(18px,4vw,48px) 48px;display:grid;gap:16px} |
|
h1{margin:0;font-size:clamp(24px,3vw,36px);letter-spacing:0}h2{margin:0 0 12px;font-size:18px}h3{margin:0 0 8px;font-size:15px}p{margin:0 0 10px} |
|
.sub{color:var(--muted);max-width:1120px;margin-top:8px}.tag{display:inline-flex;align-items:center;height:24px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:#fbfcfe;color:var(--muted);font-size:12px;margin-right:6px} |
|
.grid{display:grid;gap:16px}.cols4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols2{grid-template-columns:repeat(2,minmax(0,1fr))} |
|
.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px}.metric{min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.label{font-size:13px;color:var(--muted)}.value{font-size:30px;font-weight:760}.ok{color:var(--green)}.warn{color:var(--amber)}.stop{color:var(--red)} |
|
table{width:100%;border-collapse:collapse;font-size:13px}th,td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}th{background:#fbfcfe;color:var(--muted)}code{background:var(--soft);border-radius:4px;padding:2px 5px;font-size:12px} |
|
ul{padding-left:18px;margin:0}li{margin:6px 0}.state{border-left:4px solid var(--blue);padding-left:12px}.state.warn{border-color:var(--amber)}.state.stop{border-color:var(--red)} |
|
@media(max-width:980px){.cols4,.cols3,.cols2{grid-template-columns:1fr}} |
|
</style> |
|
</head> |
|
<body> |
|
<header> |
|
<h1>Repo Change Handoff Console</h1> |
|
<p class="sub">此工作區沒有 Git repo,因此本輪把 PLS weekly scorecard dashboard 轉成 repo-change-ready handoff:下一個 worker 拿到後可直接在後台 repo 建 migration、API、UI card、LINE summary endpoint 與 dispatch-next。</p> |
|
<p><span class="tag">Owner: Louis</span><span class="tag">Target worker: repo_change</span><span class="tag">Due: 2026-06-21</span><span class="tag">Status: PR-ready spec</span></p> |
|
</header> |
|
<main> |
|
<section class="grid cols4"> |
|
<div class="panel metric"><span class="label">Repo Status</span><span class="value warn">missing</span><span class="label">current workspace has no .git</span></div> |
|
<div class="panel metric"><span class="label">Build Scope</span><span class="value ok">4</span><span class="label">migration / API / UI / worker dispatch</span></div> |
|
<div class="panel metric"><span class="label">Acceptance</span><span class="value ok">6</span><span class="label">backend-ready tests</span></div> |
|
<div class="panel metric"><span class="label">Next Action</span><span class="value stop">PR</span><span class="label">attach backend repo and implement</span></div> |
|
</section> |
|
<section class="panel"> |
|
<h2>30 天路徑</h2> |
|
<div class="grid cols4"> |
|
<div class="state"><h3>D1</h3><p>把本 handoff 轉為 repo issue/branch,確認 PLS backend module owner。</p></div> |
|
<div class="state"><h3>D7</h3><p>完成 DB migration、scorecard card payload API、line-summary endpoint。</p></div> |
|
<div class="state"><h3>D14</h3><p>完成 dashboard card UI、owner approval、dispatch-next 串接與權限測試。</p></div> |
|
<div class="state"><h3>D30</h3><p>進入週節奏:scorecard 自動重算,Louis approve gate,PLS 派下輪 repair/publish。</p></div> |
|
</div> |
|
</section> |
|
<section class="grid cols2"> |
|
<div class="panel"> |
|
<h2>Purpose-to-Purpose E2E</h2> |
|
<ul> |
|
<li>原始目的:核對 AI review prediction 是否命中。</li> |
|
<li>產出物:repo-change-ready migration/API/UI/dispatch spec。</li> |
|
<li>人採用:工程 worker 開 PR;Louis approve gate;zihrou/iron 修 backlog。</li> |
|
<li>指標改善:prediction accuracy 可週更、unknown/source gap 降低、人工 review 時間下降。</li> |
|
</ul> |
|
</div> |
|
<div class="panel"> |
|
<h2>Value / Money Path</h2> |
|
<ul> |
|
<li>營收:讓可信 AI prediction pattern 進入高價流程,而不是停留在 artifact。</li> |
|
<li>省成本:工程 PR 一次把 scorecard、LINE、worker dispatch 串起來,減少人工接力。</li> |
|
<li>降風險:owner approval 與 audit 防止未驗證 AI 結論出現在管理週報。</li> |
|
<li>釋放人力:dispatch-next 讓 PLS 自動派 repair/rerun/publish。</li> |
|
</ul> |
|
</div> |
|
</section> |
|
<section class="panel"> |
|
<h2>PR Work Breakdown</h2> |
|
<table> |
|
<tr><th>File Area</th><th>Change</th><th>Acceptance</th></tr> |
|
<tr><td>DB migration</td><td>新增 scorecard views/tables and audit fields</td><td>schema can store gate, metrics, evidence, approval</td></tr> |
|
<tr><td>API</td><td><code>GET /scorecards/:id/card</code>, <code>POST /approve</code>, <code>GET /line-summary</code>, <code>POST /dispatch-next</code></td><td>returns deterministic card and action payloads</td></tr> |
|
<tr><td>UI</td><td>PLS backend card with gate header, metrics, backlog, evidence drawer</td><td>renders ship/repair/block states</td></tr> |
|
<tr><td>Worker dispatch</td><td>map final gate to next Hermes job type</td><td>publish, repair source, repair rubric, rerun, manual decision</td></tr> |
|
<tr><td>Permissions</td><td>Louis approve, zihrou rubric, iron source, worker recommend only</td><td>non-owner approval rejected</td></tr> |
|
</table> |
|
</section> |
|
<section class="grid cols3"> |
|
<div class="panel"><h2>Data / API</h2><p>Primary objects: <code>weekly_prediction_scorecards</code>, <code>scorecard_metric_snapshots</code>, <code>scorecard_repair_backlog</code>, <code>scorecard_approval_events</code>, <code>scorecard_dispatch_events</code>.</p></div> |
|
<div class="panel"><h2>Permissions / Audit</h2><p>Every approval and dispatch stores actor, timestamp, metric snapshot hash, calibration run id, correction batch id, model/prompt version, and decision record ref.</p></div> |
|
<div class="panel"><h2>People Sync</h2><p>LINE outer message asks for one signal only: Louis ship/repair/block; zihrou rubric fix; iron source adapter fix. Raw evidence stays in backend.</p></div> |
|
</section> |
|
<section class="panel"> |
|
<h2>LINE 草稿</h2> |
|
<p>AI 預測驗證 dashboard 已整理成 repo-change handoff。請 Louis 指派 PLS backend repo/owner;下一輪 worker 應開 PR 實作 scorecard card、approve gate、LINE summary、dispatch-next。驗收:三態可 render、owner approval enforced、LINE 短摘要、dispatch deterministic。</p> |
|
</section> |
|
</main> |
|
</body> |
|
</html> |