cybernetic-systems-engineering

Category: Databases & Storage | Uploader: 22171732402217173240 | Downloads: 0 | Version: v1.0(Latest)

用“系统工程 + 工程控制论 + 总体设计(GDA)”的方法做软件工程闭环控制。 适用:真实代码库中的 bugfix、feature、refactor、性能、迁移、事故复盘、测试设计、架构审计、门禁验证。 尤其适合:问题复杂、跨模块、需要最小可验证变更、需要离线/在线双层验证、需要防止“测试全绿但真实环境失败”的任务。 不适用:纯知识问答、翻译、创作、一次性聊天建议、无需验证的单句结论。 --- # Cybernetic Systems Engineering(CSE) 把软件开发当作一个**闭环控制系统**来做: - **被控对象(Plant)**:代码库 + 运行时环境 + 依赖 + 数据 + 测试系统 - **控制器(Controller)**:你(Agent)+ 你的计划、策略、节奏控制 - **传感器(Sensors)**:测试、构建日志、运行日志、指标、复现脚本、审计文档 - **执行器(Actuators)**:代码修改、配置变更、依赖升级、回滚、文档更新、测试补强 - **参考输入(Reference)**:需求、issue、验收标准、SLO/SLA、业务边界 - **输出(Output)**:实际行为(通过/失败测试、运行结果、性能数据、门禁结果) - **误差(Error)**:参考输入与输出之间的差距 - **扰动(Disturbance)**:环境差异、并发、flake、脏状态、真实 schema 漂移 - **时滞(Delay)**:慢测试、CI 排队、真实环境依赖、发布窗口 本 skill 的目标不是“让你会用控制论术语”,而是让你在复杂工程任务中: 1. 先建立正确的观测与误差定义 2. 再用最小控制输入减少误差 3. 用分层验证防止振荡与假收敛 4. 用总体设计视角控制复杂性 ## 项目级控制拓扑 CSE 不只处理“当前这一条任务怎么修”,还要先回答“这个项目由谁控制、在哪一层控制、跨模块如何协调”。 从控制层级看,CSE 默认同时存在两套闭环: - **任务级闭环** - 面向单个 issue、单次 patch、单轮验证 - 关注最小控制输入、最小 failing case、分层验证 - **项目级控制拓扑** - 面向多模块、多团队、多阶段演化 - 关注总体设计部、控制结构、跨模块协调、边界冻结与升级路径 如果只建立任务级闭环,而没有项目级控制拓扑,常见结果是: - 单个 patch 看起来正确,但把复杂性偷偷转移到别的模块 - 局部验证通过,但共享接口、共享状态或共享基础设施被无意破坏 - 每个人都在改“自己眼前那一层”,但没有人对整体误差负责 因此在以下场景,必须先补项目级控制拓扑,再进入具体修复: - 改动跨 2 个及以上模块、服务或语言边界 - 需要同时改代码、配置、schema、运行流程中的两类以上对象 - 任务会影响共享接口、共享状态、共享基础设施或统一门禁 项目级控制拓扑至少要回答四个问题: 1. **总体设计部在哪里** - 谁负责维护项目级参考输入、关键边界和最终裁决 2. **控制结构是什么** - 本次问题主要落在哪些层,哪些层只能观测,哪些层允许施加控制输入 3. **跨模块协调怎么发生** - 哪些模块存在强耦合,改动会沿什么路径外溢,谁需要被显式通知或升级 4. **哪些边界先冻结** - 哪些接口、schema、门禁口径在本轮不能被顺手改写 ### 控制面 / 数据面 / 状态面 为了避免“看起来只是改一行代码,实际上改穿了整个系统”,复杂任务开始前必须先识别本次改动主要落在哪一面: - **控制面** - 负责决定系统如何调节自己 - 典型对象:限流、重试、熔断、路由、灰度、回滚、门禁、调度策略 - **数据面** - 负责承载真实业务流量和核心处理路径 - 典型对象:请求处理、任务执行、核心计算、主链调用、用户可见结果 - **状态面** - 负责保存共享事实、恢复锚点与跨节点一致性 - 典型对象:数据库、schema、缓存、队列、事件日志、检查点、幂等键 默认要求: 1. 先标出本次改动的**主落点**在哪一面 2. 再标出会被连带影响的次级面 3. 如果一次改动同时触碰两面以上,必须显式写出复杂性是如何转移的 一个典型例子: - 把重试、限流从业务代码下沉到 mesh 或统一网关 - 不是“复杂性消失了” - 而是复杂性从数据面转移到了控制面 - 把会话、任务进度或幂等信息从应用内存迁到 Redis / 数据库 - 不是“状态更简单了” - 而是状态复杂性从节点内部转移到了状态面 如果主落点都判断不清,默认先不要改实现,而是先补控制结构说明。 ### 复杂性转移账本 复杂性不会凭空消失,只会被下沉、上浮或转移到别处。 因此每次声称“系统更简单了”时,都应

Changelog: Source: GitHub https://github.com/2217173240/Coding-Agent-prompt-best-practice

Directory Structure

Current level: cybernetic-systems-engineering/

SKILL.md

Login to download/like/favorite ❤ 29 | ★ 0
Comments 0

Please login before commenting.

No comments yet. Be the first one!