Logo

GitLab

Sign in

朱子纯 / erp-workflow-plugin

  • Back to Dashboard
  • Project
  • Activity
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Snippets
  • Commits 42
  • Compare
  • Branches 3
  • Tags 0
  • erp-workflow-plugin
29 May, 2026
16 commits
  • db-design-gen: fix 5 standard columns in docs/03 templates; drop docs/04 § 四 + A… ...
    e4cb883e
    …0 convention machinery
    
    - schema 约定(iIncrement 主键 / sId 业务ID / sBrandsId+sSubsidiaryId 多租户 / tCreateDate / 匈牙利前缀)从「A0 询问 + 可配置 {{}} 占位 + docs/04 § 四」改为**固定写死**在 docs-03-header-template + docs-03-table-template
    - remove A0 step(约定固定,无需向用户确认);B 内联引用固定标准列(去掉指向尚未生成的 docs/03 的前向引用);C.1/C.2 去掉 {{PK_CONVENTION}}/{{TENANT_COLS}}/{{COL_PREFIX_RULE}} 填充/展开
    - docs/04 § 四 不再被任何环节创建或引用(schema 约定单一来源 = docs/03)
    zichun authored
    2026-05-29 15:24:57 +0800  
    Browse Dir »
  • remove docs/07 — env config folded into config-vars.yaml + docs/04 ...
    9b8f6a2d
    - delete docs-07-env-template.md (§一 依赖↔docs/04 §零; §二 端口↔config-vars.yaml; §四 命令↔docs/04 §零 build/lint/unit/e2e; §三 规则折入 config-vars.yaml 头)
    - skeleton-gen: B.1 (gen docs/07) removed → B = just append docs/04 §一+; add 'A2 不再单独出 docs/06/07/09 — 各内容归属' note; frontmatter/checkbox/E.1-scan/参考 drop docs/07
    - config-vars.yaml header: + 2 guardrails (配置值不散落; base_package 锁定后复用)
    - plan-start drop 'docs/07 仅承载规则' note; docs-08 checkbox; README A2 row + template table
    zichun authored
    2026-05-29 14:43:27 +0800  
    Browse Dir »
  • docs-04: drop § 2.5/3.5; tokens.css = sole token source; align coding.mjs § refs ...
    54356b2b
    - docs-04 template: remove § 2.5 样式与主题 (tokens live in src/styles/tokens.css) + § 3.5 配置与安全 (config in config-vars.yaml, rules in docs/07→now config-vars header)
    - styles-tokens-template.css: fix 3 stale docs/06 refs missed in the earlier docs/06 removal (greps had excluded *.css) → self-contained '色值单一来源 / SSoT'
    - coding.mjs: frontend ref §一 前端架构 → §二 前端规范 (§一 is 后端); backend drop frontend §2.1 → §1.2 分层; 样式/色值 → tokens.css; remove docs/07 from value-lookup order
    zichun authored
    2026-05-29 14:43:27 +0800  
    Browse Code »
  • remove docs/09 — fold dir layout into docs/04, module->path into docs/08 §二 ...
    a1f2447b
    - delete docs-09-structure-template.md (its § 二/§ 三 dir layout duplicated docs/04 § 1.2/2.1; § 四 docs-tree was a self-referential maintenance trap; § 五 overlapped docs/04)
    - skeleton-gen B.1 now generates only docs/07; B.2 captures backend/frontend dir layout into docs/04 § 1.2/2.1; frontmatter/checkbox/参考 drop docs/09
    - coding.mjs (6 refs): file placement -> docs/04 § 1.2/2.1; frontend root -> frontend/ convention; cross-module path->module -> docs/08 § 二 路径: field
    - CLAUDE-template rule #2 -> docs/04 § 1.2/2.1; docs-08 checkbox + README A2/template-table drop docs/09
    zichun authored
    2026-05-29 13:49:05 +0800  
    Browse Dir »
  • skeleton-gen: drop merge-gitignore.mjs, D merges .gitignore via Read/Write ...
    176a7926
    - delete lib/merge-gitignore.mjs + merge-gitignore.test.mjs: over-engineered for a once-run greenfield step (base .gitignore usually absent; duplicate ignore patterns are harmless)
    - D now uses C.1-style Read+Write: Write template if no .gitignore, else append missing lines (consistent with render.mjs removal + scope-lock direct-write)
    - removes the 'pre-Write empty .gitignore' fragility (Write self-creates); skeleton-gen drops Bash(node *) from allowed-tools
    zichun authored
    2026-05-29 13:30:56 +0800  
    Browse Dir »
  • skeleton-gen: trim cross-platform detail from C.2 note
    fa22585a
    zichun authored
    2026-05-29 13:25:19 +0800  
    Browse Dir »
  • test.mjs: drop redundant trailing reset-test-db (6/5 -> 5 stages) ...
    c994516d
    尾部 6/6 reset-test-db 与下次运行的 1/x setup-test-db 重复(都 DROP+CREATE),对正确性零贡献;删除后闸门为 detect→setup→build→lint→test→e2e,重编号 1/5..5/5。
    zichun authored
    2026-05-29 13:24:41 +0800  
    Browse Dir »
  • skeleton-gen: drop sql/migrations/.gitkeep; set tokens.css > prototype precedence for colors ...
    c2d4c16b
    - C.1: stop generating sql/migrations/.gitkeep (A4 db-init's Write V1 creates the dir); README A2 drops 'create empty migrations dir'
    - precedence rule: on color conflict, tokens.css wins over prototype (prototype = structure/layout/interaction; tokens.css = color) — encoded in skeleton-gen note, coding.mjs frontend stage, code-reviewer § Design Tokens
    zichun authored
    2026-05-29 13:13:39 +0800  
    Browse Dir »
  • cleanup: drop stale 根包名->docs/09 note; dedup docs/05 port to config-vars.yaml ...
    7244ba41
    - skeleton-gen B.1: remove stale line claiming 根包名/命名空间 placeholder is filled at docs/09 top (docs/09 has no such placeholder; base_package lives in config-vars.yaml since A1)
    - docs-05-header: 端口 占位 -> pointer to config-vars.yaml backend.http_port (was a duplicate 【人工填写】 of the same port)
    zichun authored
    2026-05-29 11:57:56 +0800  
    Browse Dir »
  • align docs with A0 auto-install + drop dangling soft-rule ref ...
    415e14df
    - README (A0 row + prerequisites): dep check now auto-installs missing tools (was: print guide + halt, no auto-install), matching project-init SKILL
    - project-init SKILL: fix typo 失败失败 -> 失败
    - CLAUDE template rule #5: inline cross-module 留痕 requirement (soft-rule S2 table was removed)
    zichun authored
    2026-05-29 11:49:29 +0800  
    Browse Dir »
  • project-init: simplify A0 SKILL + CLAUDE / index templates ...
    88f6dc2d
    - A0 SKILL: drop inline cross-platform dep-check script + OS install guides; dep check now auto-installs missing tools (was detect-only); trim 用 Edit/用 Bash 等工具名提示
    - CLAUDE template: remove B 阶段流程 / 占位符约定 / 🚩 中断机制 / 🟡 软规则(S1,S2) / 硬规则#6 / 禁止项#2 等小节
    - docs-01 index: drop trailing 填写说明
    zichun authored
    2026-05-29 11:46:11 +0800  
    Browse Dir »
  • README: sync with config consolidation, DB guard removal, REQ-card model, A1 aut… ...
    2f5b758d
    …o-chain, docs/06+A6 removal
    zichun authored
    2026-05-29 11:41:10 +0800  
    Browse Code »
  • remove docs/06 + A6 frontend-scope-lock — prototype/ is the frontend SSoT ...
    25afa9f0
    - delete frontend-scope-lock skill + docs/06 templates (static + module-pagelist)
    - A5 downstream-gen gains prototype/ gate + FE-list derivation -> docs/08 § 三
    - plan-start: drop A6 dispatch row, gate 5->4 items; coding-start A0~A6 -> A0~A5
    - Design Tokens single source = src/styles/tokens.css (code-reviewer, coding.mjs)
    - plugin.json skills 9->8; docs-09 tree drops 06-UI; docs-08 drops A6 section
    zichun authored
    2026-05-29 11:41:10 +0800  
    Browse Dir »
  • scope-lock: write REQ cards directly, align to new template, auto-chain A1->A2 ...
    2a3f8d09
    - D-step: CC writes _module.md/REQ-*.md directly (no render.mjs/vars.json)
    - req-card template restructured: input/output example tables copied verbatim, CC fills 6 {{}} scalars; E.1 validates {{}} residual only
    - E.2: write all config (incl. secret placeholders) into config-vars.yaml
    - E.4: no human-review stop — auto Skill(skeleton-gen) into A2
    zichun authored
    2026-05-29 11:41:10 +0800  
    Browse Dir »
  • plan: consolidate all config into config-vars.yaml (drop .env.local + DB guards) ...
    52014d4e
    - config-vars.yaml now holds全部 config incl. secrets (database/admin_init.password/secrets), committed
    - delete env-local-template; setup-test-db reads config-vars.yaml; gitignore no longer ignores .env.local
    - docs-07 single-store rule; db-init/db-design-gen read config-vars.yaml database: section
    - drop test_db_allowed_hosts whitelist + schema-looks-like-test guard (trust config-vars.yaml)
    zichun authored
    2026-05-29 11:41:10 +0800  
    Browse Dir »
  • lib: replace render.mjs with yaml-config; apply-ddl reads config-vars.yaml, drop DB guards ...
    5babb654
    - remove render.mjs/render.test.mjs (scope-lock now writes REQ cards directly)
    - add yaml-config.mjs: minimal 2-level YAML reader (+ tests)
    - apply-ddl: parse config-vars.yaml database: section instead of .env.local dotenv; drop assertSafeDbTarget host-whitelist + schema guards (config-vars.yaml is trusted)
    - merge-gitignore/validate-ddl: self-contained pathToFileURL comment (no longer 'see render.mjs')
    zichun authored
    2026-05-29 11:41:10 +0800  
    Browse Dir »

28 May, 2026
19 commits
  • fix: harden workflow gates and db safety
    32a0adb2
    zichun authored
    2026-05-28 16:53:29 +0800  
    Browse Dir »
  • templates: fix stale docs/06 § 四 / § 4.x refs in styles-tokens CSS ...
    57025b00
    docs-06-static-template.md actually defines § 二 Design Tokens with
    subsections 2.1 / 2.2 / 2.3. The CSS template comments still cited the
    pre-renumber § 四 / § 4.1 / § 4.2, so downstream-generated tokens.css
    files pointed readers to non-existent sections of docs/06.
    zichun authored
    2026-05-28 16:15:57 +0800  
    Browse Dir »
  • coding.mjs: drop stale-tag freshness self-check (defensive code for already-fixed ordering bug) ...
    7ce9262d
    The TAG_REPORT_FRESHNESS_SCHEMA + checkTagReportFreshPromptM + the
    post-`tag.exists` freshness branch in runMilestone existed to detect
    "tag points at a commit whose § ⑫ is still {{milestone_tag}}". Per the
    original comments, this only catches historical leftovers from the
    pre-fix tag → § ⑫ ordering; the same fix reversed the order so the
    runtime guard is no longer load-bearing. ~25 lines of branchy
    defensive code that the source-level fix already prevents.
    
    If a pre-fix repo has stale milestone tags, delete them with
    `git tag -d milestone/<id>` and re-run coding-start.
    zichun authored
    2026-05-28 16:14:39 +0800  
    Browse Dir »
  • templates: dedupe standard-column convention, drop coding.mjs prose from docs-02… ...
    4a3b7270
    …, single-source error-codes
    zichun authored
    2026-05-28 16:10:30 +0800  
    Browse Dir »
  • templates(test-db): drop ALLOW_REMOTE/ALLOW_PROD_NAME hatches and slim env-local warnings
    5adbe9db
    zichun authored
    2026-05-28 16:08:26 +0800  
    Browse Dir »
  • skill(coding-start): drop opening restatement and duplicated router/path caveats
    c3a7467c
    zichun authored
    2026-05-28 16:07:03 +0800  
    Browse Dir »
  • skill(plan A3-A5): hoist 'tick docs/08 after step' boilerplate to a single global note
    87ba268f
    zichun authored
    2026-05-28 16:06:04 +0800  
    Browse Dir »
  • skill(project-init/skeleton-gen/db-design-gen): drop idempotency restatements an… ...
    5d67162b
    …d parenthetical 参考 blocks
    zichun authored
    2026-05-28 16:02:13 +0800  
    Browse Dir »
  • lib: drop duplicated headers, JSDoc restatements, CLI-entry comments; reuse advanceLiteral helper
    6eef75b0
    zichun authored
    2026-05-28 15:59:38 +0800  
    Browse Dir »
  • skill(plan A3-A6): trim banners, drop redundant verification loops, defer plan-start narration
    d61c07b1
    zichun authored
    2026-05-28 15:55:50 +0800  
    Browse Dir »
  • skill(plan-start): collapse body restatements; defer git-state checks to coding-start
    f7306acf
    zichun authored
    2026-05-28 15:51:42 +0800  
    Browse Dir »
  • skill(scope-lock): collapse A/B/C ritual into shared procedure + trim duplicated guidance
    326c9769
    zichun authored
    2026-05-28 15:50:07 +0800  
    Browse Dir »
  • coding.mjs: trim duplicated rationale comments and dedupe identical schemas/prompt blocks
    105a2e5c
    zichun authored
    2026-05-28 15:46:55 +0800  
    Browse Dir »
  • docs(README): drop duplicated diagrams, deleted-feature footnotes, and implementation rationale
    bc2388c0
    zichun authored
    2026-05-28 15:38:13 +0800  
    Browse Code »
  • agents: shrink code-reviewer to frontend checklist; let coding.mjs prompts carry per-call rules
    be09a0b7
    zichun authored
    2026-05-28 15:35:34 +0800  
    Browse Dir »
  • templates: move per-section LLM guidance from template comments into the consuming SKILL.md
    82b3eaa9
    zichun authored
    2026-05-28 15:34:38 +0800  
    Browse Dir »
  • docs(CLAUDE-template): drop generic principles section and orchestrator re-documentation
    c43e7989
    zichun authored
    2026-05-28 15:32:59 +0800  
    Browse Dir »
  • refactor: group skills by phase — skills/plan/ + skills/coding/ ...
    b7e4fa58
    Visual clarity: the file tree now matches the README's phase model.
    - skills/plan/   — 8 skills (plan-start entry + A0~A6)
    - skills/coding/ — 1 skill (coding-start thin entry)
    
    Slugs unchanged. /erp-workflow:<name> still resolves identically because
    each SKILL.md declares its own `name:` frontmatter (verified for all 9).
    
    Plugin loader treats the default `./skills/` scan as flat, so the nested
    layout is opted into via an explicit path array in plugin.json — the only
    mechanism Claude Code provides for nested skill discovery.
    
    Changes:
    - mv skills/{plan-start,project-init,scope-lock,skeleton-gen,
           db-design-gen,db-init,downstream-gen,frontend-scope-lock}
         → skills/plan/<same>/
    - mv skills/coding-start → skills/coding/coding-start/
    - .claude-plugin/plugin.json: skills[] now lists all 9 explicit paths
    - README.md: directory tree + Skill 清单 heading updated to reflect grouping
    
    No code touches any skill path (only README did, and only in the tree
    diagram). lib tests still pass (62/62).
    zichun authored
    2026-05-28 13:51:55 +0800  
    Browse Code »
  • fix: dual-reviewer audit (Claude+Codex) — workflows/lib/skills fixes ...
    d875806a
    Independent Claude + Codex review of the working-tree diff surfaced
    23 issues; all applied in-place across three domains.
    
    workflows/coding.mjs (9):
    - spec/plan/verify/review prompts now git-commit their artifacts
      (closes milestone-dirty-worktree halt risk)
    - CHECKBOX_STATE_SCHEMA requires `state` + defensive guard in reviewWithFixLoop
    - writeDocs08FieldPromptM scopes edits to module via line anchor
    - assertSafeId guards Router output (module/REQ/FE ids)
    - featureLoop captures reviewWithFixLoop's return value
    - dateFromArtifactPath rejects impossible dates (9999-99-99 etc.)
    - terminal HALT review-unresolved message disambiguated
    - updated comment on top-level `return` (ESM vs node --check)
    
    lib/validate-ddl.mjs + tests (10):
    - extractType preserves unsigned/signed modifiers
    - KEY/INDEX fallthrough no longer creates spurious 'KEY' columns
    - FOREIGN KEY REFERENCES accepts schema-qualified `db.table`
    - index keys normalized to name:kind:cols (UNIQUE-aware)
    - FK keys include ON DELETE action (defaults to RESTRICT)
    - CREATE TEMPORARY TABLE parsed
    - parseForeignKeyBullet/parseIndexBullet reject prose bullets
    - +10 regression tests (62 total, all pass)
    - merge-gitignore.mjs docstring synced to implementation
    
    skills/ (4):
    - docs-06 template header: § 一~二 → § 一~三
    - downstream-gen §A steps renumbered 1-7 (was 1,3,4,5,6,7,8)
    - docs-08 initial template adds tokens.css checkbox
    - coding-start drops "已在后台启动" wording (Workflow is synchronous)
    zichun authored
    2026-05-28 13:37:22 +0800  
    Browse Code »

26 May, 2026
5 commits
  • feat(config): 引入 config-vars.yaml 承载项目级配置 + lib 缺陷修复 ...
    2463c1e5
    - 新增 scope-lock/templates/config-vars-template.yaml:非敏感项目级配置
      (包名/端口/前端包名/初始账号)+ secrets_ref 键名引用 .env.local;
      A1 E.2 锁定。docs/07 改为只记规则/约定不记具体值。
    - 连带更新 skeleton-gen / plan-start 闸门 2 / frontend-scope-lock /
      CLAUDE-template / README / docs-06·07 模板对齐新的配置分层与 docs/06 小节编号。
    - lib 修复(含回归测试):
      - apply-ddl: 抽出 resolveDbConfig,DB_SCHEMA 为契约 schema 键,缺库名 fail-closed (M1)
      - render: 用 Object.hasOwn 拒绝原型链继承键,guard process.argv[1]
      - validate-ddl: 解析 ### 索引/### 外键 bullet (C2)、剥 SQL 注释防幽灵表 (L4)、PRIMARY 归一化
    - coding.mjs: Router 把全部前端 FE 聚合为单一末尾 frontend-phase 模块;
      新增 branchSetupPrompt 功能分支生命周期 (C1);diff 区间改三点 diff;fix 后复跑 verify。
    zichun authored
    2026-05-26 16:46:58 +0800  
    Browse Code »
  • refactor: drop 7 per-step banner files + remaining bash deps ...
    6013e7fb
    - Delete all 7 banners/flow*.txt and remove the banner step from each
      Plan skill (plan-start renumbered: gate=第1步, 放行/拦截=第2步 A/B).
    - Drop now-unused Bash(cat *) from scope-lock/db-design-gen/downstream-gen/
      plan-start allowed-tools.
    - downstream-gen: replace `cp` (not Windows-safe) with Read+Write, drop Bash(cp *).
    - project-init: fix stale dispatcher name session-start -> plan-start.
    - README: remove the Banners 清单 section.
    zichun authored
    2026-05-26 11:48:39 +0800  
    Browse Code »
  • fix(coding.mjs): restore top-level `return { results }` as the Workflow result ...
    97cd7504
    The autonomous build changed it to `export default` to satisfy `node --check`,
    but Workflow scripts run in an async wrapper where top-level `return` is the
    result contract (alongside `export const meta`). `export default` would be a
    dead module export and the per-module result summary would be lost.
    zichun authored
    2026-05-26 10:55:32 +0800  
    Browse Code »
  • docs: sync plugin.json/README/CLAUDE-template to 9-skill + workflow layout
    2ee4c7fd
    zichun authored
    2026-05-26 10:52:07 +0800  
    Browse Code »
  • refactor: remove 17 superseded coding/crosscut skills + hooks + old reviewers
    cb9da34e
    zichun authored
    2026-05-26 10:42:31 +0800  
    Browse Code »