支柱七·结构与纪律(地基)
上级:key-designs
其余六根支柱立足的地面。代码形态:Go 按领域打包(internal/<domain>/{entity,usecase,repo,db,ops,facade} —— 按层切的 domain → usecases → routes 上帝包已于 2026-07-27 拆解,见 backend-domain-modules),配合 sqlc(每个域自己的 db/)、单一权威的 schema.sql,迁移由后端启动时自己套用(bd45353f4,2026-08-31,backend/internal/infra/pgstore/migrate.go);Next.js 只是一层薄壳;apierr 提供统一的错误信封,日志与客户端分离;bwrap 沙箱不带网络;builder(microsite 的 vite runner,不用 docker.sock);PDF 经由 gotenberg + printsess 生成;测试分三块地:e2e Playwright、eval-harness、mock-stack 假上游。纪律层面:机械化护栏(边界 lint、check-no-mock)守住 α≈0 那一档;判断力审计(judgment audit)守住 lint 机械化不了的部分。
状态: 稳定。
包依赖关系(允许边与禁止边)
两条禁止边才是承重的那两条:eval-harness 和 mcp-servers 只能触碰公开接缝(agentcore、MCP 线路协议)——重新导出 internal/ 的类型也算一次依赖,同样禁止(agent-as-injectable-driver);check-no-mock 把测试夹具挡在 backend 之外。
子节点
- structure-diagram-coverage —— 图表覆盖率台账。
- ephemeral-over-stateful —— 推导或追加,不保留可变状态。
- display-error-surfacing —— apierr 信封;401/409/toast 分支。
- sandbox-js-hardening —— bwrap、
--network=none、白名单。 - builder-claim-skip-locked —— 构建队列的认领机制。
- mechanical-guardrails —— 验证体系中的 lint 层:45 道守卫 + 10 道自检(
infra/scripts/下 55 个check-*条目,2026-09-07 数的),分五个家族。 - convergence-inbound-and-outbound —— 两个收口(dispatcher / hostdesk)、不持有任何能力也解不了封的内核、唯一的调度器、用数据声明的两根轴。
- one-source-per-ui-primitive —— 十二道闸门,让第二个下拉 / 遮罩 / 时间格式没有地方可住。
- a-gate-that-cannot-go-red —— 十个守卫,唯一的工作是攻击另外四十五个。
- judgment-audit —— 审计指南流程 + 10 个维度。