Files
dsh_ai1net_server/交付物/唤醒机制-角色与情况全表-20260930-图.html
admin c1b5e4d966 chore(工作区): 全量入库 + 补齐 .gitignore(以工作区为准)
- 变更规模:新增 514 / 修改 62 / 重命名 155 / 删除 4(归档重组与文档轮次)
- .gitignore 修:`归档/**/db-cwd归一-备份-*/` —— 原规则写绝对层级(归档/db-cwd归一-…),
  目录搬进 归档/配置与备份/ 后**静默失效**,43 MB 的 DB 备份又变成未跟踪
- .gitignore 补:嵌套 git 内部数据(归档/内嵌git-20261008/、归档/skills-git-旧线-20261007/dotgit-原样移出/)
- .gitignore 补:运行态与部署副本(.workbuddy/collab/、.workbuddy/tools/、.workbuddy/.load-pending、.workbuddy/tmp-*)
- .gitignore 补:备份件(*.bak-*)
- 未跟踪文件从 2190 降到 890(其余为 归档/ 归档件与 .workbuddy/memory/ 知识文件,按口径入库)
2026-10-10 23:13:22 +08:00

69 lines
5.2 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<title>唤醒机制 · 角色与职责分层</title>
<style>
body{margin:0;padding:28px 20px 40px;background:#1b1b1d;color:#e8e8ea;
font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
h1{font-size:17px;font-weight:600;margin:0 0 6px}
p.sub{font-size:12.5px;color:#9a9aa2;margin:0 0 22px;line-height:1.7}
.wrap{max-width:760px;margin:0 auto}
</style>
</head>
<body>
<div class="wrap">
<h1>唤醒机制 · 角色与职责分层</h1>
<p class="sub">唤醒轮<b>不是新角色</b>,它是「主会话」的<b>定时、不可接续实例</b>;红色的线是硬边界 —— <b>派活只属会话,程序永远不派活</b>。</p>
<svg width="100%" viewBox="0 0 680 492" role="img" xmlns="http://www.w3.org/2000/svg">
<title>唤醒机制的角色分层与派活边界</title>
<desc>用户只拍边界外的板;会话层(主会话与唤醒轮)负责判断与派活;执行层协作会话只干活并上报;程序层协作程序与投递永不派活;宿主提供状态、调度、事件与互斥。</desc>
<defs>
<marker id="ar" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse">
<path d="M2 1L8 5L2 9" fill="none" stroke="context-stroke" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</marker>
</defs>
<rect x="190" y="26" width="300" height="44" rx="8" fill="#3C3489" stroke="#AFA9EC" stroke-width="0.5"/>
<text x="340" y="48" text-anchor="middle" dominant-baseline="central" font-size="13.5" font-weight="500" fill="#CECBF6">用户 · 只拍「边界外」的板</text>
<line x1="340" y1="70" x2="340" y2="96" stroke="#AFA9EC" stroke-width="1.5" marker-end="url(#ar)"/>
<rect x="40" y="100" width="600" height="96" rx="12" fill="#1f2126" stroke="#4a4a50" stroke-width="0.5"/>
<text x="60" y="120" dominant-baseline="central" font-size="13" font-weight="500" fill="#9FE1CB">会话层 · 判断 + 派活(🔴 派活只属这一层)</text>
<rect x="80" y="136" width="240" height="48" rx="8" fill="#0C447C" stroke="#85B7EB" stroke-width="0.5"/>
<text x="200" y="160" text-anchor="middle" dominant-baseline="central" font-size="13.5" font-weight="500" fill="#B5D4F4">主会话(可接续)</text>
<rect x="360" y="136" width="240" height="48" rx="8" fill="#0C447C" stroke="#85B7EB" stroke-width="0.5"/>
<text x="480" y="160" text-anchor="middle" dominant-baseline="central" font-size="13.5" font-weight="500" fill="#B5D4F4">唤醒轮(定时·不可接续)</text>
<line x1="340" y1="196" x2="340" y2="212" stroke="#5DCAA5" stroke-width="1.5" marker-end="url(#ar)"/>
<text x="352" y="204" dominant-baseline="central" font-size="12" fill="#5DCAA5">写一行排期</text>
<rect x="40" y="216" width="600" height="76" rx="12" fill="#1f2126" stroke="#4a4a50" stroke-width="0.5"/>
<text x="60" y="234" dominant-baseline="central" font-size="13" font-weight="500" fill="#9FE1CB">执行层 · 干活 + 上报</text>
<rect x="80" y="248" width="240" height="36" rx="8" fill="#085041" stroke="#5DCAA5" stroke-width="0.5"/>
<text x="200" y="266" text-anchor="middle" dominant-baseline="central" font-size="13" fill="#9FE1CB">协作会话(一棒一线)</text>
<text x="340" y="266" dominant-baseline="central" font-size="12" fill="#9a9aa2">做完即上报,⛔ 不跨线、⛔ 不夹带、⛔ 不常驻</text>
<line x1="40" y1="302" x2="640" y2="302" stroke="#F09595" stroke-width="0.5" stroke-dasharray="5 4"/>
<text x="640" y="294" text-anchor="end" dominant-baseline="central" font-size="12" fill="#F09595">⛔ 硬边界:这以下永不派活、永不开会话</text>
<rect x="40" y="312" width="600" height="76" rx="12" fill="#1f2126" stroke="#4a4a50" stroke-width="0.5"/>
<text x="60" y="330" dominant-baseline="central" font-size="13" font-weight="500" fill="#D3D1C7">程序层 · 只判定/通知(⛔ 程序,不是会话)</text>
<rect x="80" y="344" width="240" height="36" rx="8" fill="#2C2C2A" stroke="#B4B2A9" stroke-width="0.5"/>
<text x="200" y="362" text-anchor="middle" dominant-baseline="central" font-size="13" fill="#D3D1C7">协作程序(台账·看板·告警)</text>
<rect x="360" y="344" width="240" height="36" rx="8" fill="#2C2C2A" stroke="#B4B2A9" stroke-width="0.5"/>
<text x="480" y="362" text-anchor="middle" dominant-baseline="central" font-size="13" fill="#D3D1C7">投递(唯一通知方)</text>
<path d="M200 284 L200 344" fill="none" stroke="#B4B2A9" stroke-width="0.5"/>
<text x="210" y="314" dominant-baseline="central" font-size="12" fill="#B4B2A9">上报</text>
<rect x="40" y="408" width="600" height="64" rx="12" fill="#33291a" stroke="#BA7517" stroke-width="0.5"/>
<text x="60" y="430" dominant-baseline="central" font-size="13" font-weight="500" fill="#FAC775">地基 · 宿主(WorkBuddy 本体,⛔ 不是主体)</text>
<text x="60" y="452" dominant-baseline="central" font-size="12.5" fill="#EF9F27">状态(只读表)|调度(自动化排期=唯一能开新会话的通道)|事件(钩子)|互斥(域锁)</text>
</svg>
</div>
</body>
</html>