十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

NNN — <Short imperative title>

NNN — <Short imperative title> NNN —【免费下载链接】app All you need. Nothing you dont. Open source project management that works for you, not against you.项目地址: https://gitcode.com/GitHub_Trending/app116/appStatus: TODOCommit: output ofgit rev-parse --short HEADwhen this plan was writtenSeverity: HIGH | MEDIUM | LOWCategory:Estimated scope: n files, rough size各字段的含义与作用 - **NNN 编号**单调递增尊重 plans/ 目录中已存在的编号仓库现状已到 007见 [plans/README.md](https://link.gitcode.com/i/c84dc362d0d379be0e8547f0b24fe36e) 中的计划表。 - **Status**TODO / DONE配合 reconcile 调用重新核对后刷新。 - **Commit**写作当下 git rev-parse --short HEAD 的输出。这是防止代码漂移的关键——计划引用了精确的文件和行号若执行前代码已变化这个戳让执行者和审阅者知道计划基于哪个版本。 - **Severity**按 [AUDIT.md](https://link.gitcode.com/i/78d199e35368806e105942a5a99f0474) 的分级规则——**HIGH** 破坏手感UI 上错误的缓动、键盘/高频操作上的动画、掉帧、scale(0)**MEDIUM** 明显不对劲错误的变换原点、不可中断的动态 UI、缺失 reduced-motion 处理**LOW** 打磨项stagger、blur 遮罩交叉淡入、token 整合。 - **Category**对应审计八类别之一或组合例如Easing duration / Cohesion tokens。 - **Estimated scope**文件数与改动规模估算供调度与优先级参考。 仓库中的真实计划验证了这套头部的用法。以 [plans/001-motion-tokens-and-easing.md](https://link.gitcode.com/i/4050f81148a371a365cff518402fd366) 为例其头部为 Status: DONE、Commit: 813dcb36、Severity: HIGH、Category: Easing duration / Cohesion tokens、Estimated scope: 8 files, small edits。 ## Problem 小节把问题钉死在证据上 Problem 小节回答三个问题哪里错了、错在哪、为什么它影响产品手感。规范要求 - **逐条引用位置**格式为 path/to/file.tsx:123 - **逐字粘贴当前代码**让执行者无需去翻文件就能确认要改的对象。 模板给出了标准的证据呈现方式 css /* src/components/dropdown.css:14 — current */ .dropdown { transition: all 400ms ease-in; }为什么重要要写到产品感知层面。以计划 001 的 Problem 为例它没有停留在缺少 token 系统这一句而是逐个点名了手写曲线散落的位置apps/web/src/components/kanban-board/index.tsx:114的cubic-bezier(0.25, 0.46, 0.45, 0.94)、theme-toggle-dropdown.tsx:21指出 Dialog 家族面板用ease-in-out入场导致慢启动拖延了用户注视的那个瞬间并补充了装了三个未使用的动画插件包这类与动效卫生直接相关的事实。每条都带位置、带现状代码、带影响描述三者缺一不可。Target 小节写出精确的终态Target 是反 Problem描述完全确定的结束状态。模板的硬性要求是——每一个值都要写出来曲线、时长、spring 配置、媒体查询。严禁写用更好看的缓动这种无法执行的话。/* target */ .dropdown { transition: transform 200ms var(--ease-out), opacity 200ms var(--ease-out); transform-origin: var(--transform-origin); }计划 001 的 Target 是很好的示范直接在apps/web/src/index.css的theme块内覆盖 Tailwind 内置弱曲线--ease-out: cubic-bezier(0.23, 1, 0.32, 1); --ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);这两条曲线在 apps/web/src/index.css 第 50–51 行实际落地旁边就是第 52 行的--animate-skeleton——计划原文中现状只有--animate-skeleton一个 token的陈述与仓库现状完全吻合证明该计划已按 Target 精确执行。计划 007 的 Target 则把 spring 配置精确到小数点后两位initial{{ opacity: 0, scale: 0.98 }} animate{{ opacity: 1, scale: 1 }} exit{{ opacity: 0, scale: 0.98 }} transition{{ type: spring, duration: 0.35, bounce: 0.15 }}并附上了硬约束说明dnd-kit 共存、initial{false}防止 100 张卡片入场风暴这些都是执行者无法从上下文推断、必须写进计划的事实。Repo conventions 小节让执行者模仿仓库既有做法执行者没有看过这个仓库的记忆因此必须显式告知这个代码库已经是怎么做的并给出一处可模仿的范例token 命名、文件摆放、prop 模式。模板格式为- Easing tokens live in src/styles/tokens.css; add new curves there, e.g. --ease-out: cubic-bezier(0.23, 1, 0.32, 1); - exemplar file:line that already does this correctly计划 001 的写法是token 应放进 Tailwind v4 CSS-first 配置的theme块apps/web/src/index.css并给出正确入场缓动的范例ui/popover.tsx:67duration-150 ease-out。计划 003 则指出 coss 原语通过cn(...)组合 className、扩展 prop 的方式参照ui/dialog.tsx扩展 Base UI props 的做法。这些约定条目是计划必须扩展现有约定、而不是发明平行约定这一原则的直接体现。Steps 与 Boundaries命令式步骤 硬边界Steps要求一步一个具体编辑文件、改动内容、结果代码。模板示例为1. One concrete edit per step: file, what changes, resulting code.。计划 002 的 Steps 实际就是一张文件 → 新 class 串的对照表例如任务卡片从transition-all duration-200 ease-out改为transition-[background-color,border-color,box-shadow,scale] duration-150 ease-out理由写清楚ring-2 在 transition 之外因此聚焦环会立即出现。Boundaries是防止执行者尤其是低能力模型越界的关键防线模板固定列出四类禁令不碰范围外的文件/组件不改动 markup/结构——只动 motion 属性除非某步明确说明不新增依赖如果代码与 commit 戳记录的状态不一致漂移停止并报告而不是即兴发挥。计划 001 的 Boundaries 体现了已决策事项不重议的智慧不碰ui/toast.tsx的 500ms 滑动曲线刻意设计、不动accordion.tsx/tabs.tsx的ease-in-out真实形变正确、不碰防自动填充的5000s ease-in-out过渡。计划 002 同样声明不改变视觉状态存在与否只改变哪些属性参与过渡。Verification 小节机械验证 感受检查双重验收模板的 Verification 分三层是计划可被判定完成的依据- **Mechanical**: exact commands — typecheck, lint, build — with expected outcome. - **Feel check**: run the UI, trigger interaction, and confirm: - observable check, e.g. the dropdown scales from its trigger, not from center - e.g. spamming the toggle never restarts the animation from zero - In DevTools, set playback to 10% (Animations panel) and confirm detail. - Toggle prefers-reduced-motion (Rendering panel) and confirm movement is dropped but opacity feedback remains. - **Done when**: machine- or eye-checkable completion criteria.【免费下载链接】app All you need. Nothing you dont. Open source project management that works for you, not against you.项目地址: https://gitcode.com/GitHub_Trending/app116/app创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表