Landing:额外软件
架构决策权归项目所有者所有。违背文字即违背精神。
铁律
未经事先询问,不得做出任何关于堆栈、网络或共享资源的决策。高风险阶段:仅接受 Felipe 的指令。
首要行动: node check-gate.js --cliente <名称> --antes-de software-extra;阅读 01 和 plano.md;如果有预订,阅读 references/agendamento.md。
门控函数
- 列出所有待决策项(堆栈、数据库、运行位置、共享内容、邮件、通知、备份)。
- 对每一项:列出选项,给出推荐及其理由,说明错误代价。询问;不要自行选择。
- 记录在
03-decisoes.md中(格式为 D)。如果违反全局规则,则记录override: R-nnn并附带 Felipe 的批准。 - Felipe 执行
! node approve.js --file <03> --fase software-extra --via comando。之后才可实施。 - 以 TDD 方式实施。完成后由独立审核人审核。
- 部署后:检查一个邻居的真实路径(例如,另一系统的
GET /api/health)并执行docker logs <proxy> --since 2m | grep -c "502\|refused"。
固定规则
- 项目前缀必须用于所有服务、容器和共享网络别名(例如
agenda-api、agenda-db)。在加入网络前,列出邻居解析的名称(如set $api、upstream、proxy_pass)。 - 机密仅存储在服务器上的
.env文件中,权限为 600;曾通过聊天传递的机密建议更换。 - 时间、服务和价格来自一个来源(数据库);静态 HTML 仅作为后备。
- 选项名称和持续时间是不同的字段;界面通过显式规则决定显示内容。
- 内部界面需经过
landing-direcao-visual和frontend-design审核;新增项需有模拟图并逐项确认。 - 生产环境:先备份,重载前执行
nginx -t,选择不中断业务的窗口,编写回滚说明。需要 root 权限的操作转换为一行命令交给 Felipe。
红旗警告:立即停止
- 因为“是最好的”而选择数据库 · 重用名称
api· 无备份的部署 - 在服务器上执行一份你自己本应执行的 5000 行计划
- 未测试邻居就认为“本地运行正常”
| 合理化 | 现实 |
|---|---|
| “选择显而易见” | 如果 Felipe 通过代码发现,他会惊讶吗?那么请询问 |
| “短名称更简洁” | 在 edge 网络中名为 api 的服务因 502 错误导致邻居宕机 |
| “已获得落地页批准” | 一个上下文的批准不适用于另一个上下文 |