diff --git a/.claude-plugin/marketplace.json b/.claude-plugin/marketplace.json index 3bbe391..e0a88b6 100644 --- a/.claude-plugin/marketplace.json +++ b/.claude-plugin/marketplace.json @@ -5,14 +5,14 @@ }, "metadata": { "description": "Thinloop skills and continuity hooks for Issue-backed discovery, read-only project-status navigation, multi-Issue project DAG decomposition and execution, evidence-backed reengineering and delivery, and approved skill evolution.", - "version": "0.20.0" + "version": "0.20.1" }, "plugins": [ { "name": "thinloop", "source": ".", "description": "Discovery, Web UIUX, architecture, Next project-status navigation, Project DAG decomposition, Execute READY-wave orchestration, Reengineering gates, QuickDev delivery, maintenance, knowledge, and evolution skills with continuity checks; Project itself remains non-executing.", - "version": "0.20.0" + "version": "0.20.1" } ] } diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index 57a024c..2e533f8 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "thinloop", - "version": "0.20.0", + "version": "0.20.1", "description": "Simplify complex development with Issue-backed discovery, risk-adaptive Web experience and architecture design, non-executing multi-Issue project decomposition into dependency DAGs, bounded READY-wave execution, read-only project-status navigation, project-scale refactoring and cross-stack reimplementation, autonomous single-Issue PR delivery, evidence-backed maintenance, concise experiential knowledge, and human-approved skill evolution.", "author": { "name": "mindcarver" diff --git a/.codebuddy-plugin/marketplace.json b/.codebuddy-plugin/marketplace.json index 3bbe391..e0a88b6 100644 --- a/.codebuddy-plugin/marketplace.json +++ b/.codebuddy-plugin/marketplace.json @@ -5,14 +5,14 @@ }, "metadata": { "description": "Thinloop skills and continuity hooks for Issue-backed discovery, read-only project-status navigation, multi-Issue project DAG decomposition and execution, evidence-backed reengineering and delivery, and approved skill evolution.", - "version": "0.20.0" + "version": "0.20.1" }, "plugins": [ { "name": "thinloop", "source": ".", "description": "Discovery, Web UIUX, architecture, Next project-status navigation, Project DAG decomposition, Execute READY-wave orchestration, Reengineering gates, QuickDev delivery, maintenance, knowledge, and evolution skills with continuity checks; Project itself remains non-executing.", - "version": "0.20.0" + "version": "0.20.1" } ] } diff --git a/.codebuddy-plugin/plugin.json b/.codebuddy-plugin/plugin.json index 353a1db..4dbaabc 100644 --- a/.codebuddy-plugin/plugin.json +++ b/.codebuddy-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "thinloop", - "version": "0.20.0", + "version": "0.20.1", "description": "Simplify complex development with Issue-backed discovery, risk-adaptive Web experience and architecture design, non-executing multi-Issue project decomposition into dependency DAGs, bounded READY-wave execution, read-only project-status navigation, project-scale refactoring and cross-stack reimplementation, autonomous single-Issue PR delivery, evidence-backed maintenance, concise experiential knowledge, and human-approved skill evolution.", "author": { "name": "mindcarver" diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 485d1f2..6ba1510 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "thinloop", - "version": "0.20.0", + "version": "0.20.1", "description": "Simplify complex development with Issue-backed discovery, risk-adaptive Web experience and architecture design, non-executing multi-Issue project decomposition into dependency DAGs, bounded READY-wave execution, read-only project-status navigation, project-scale refactoring and cross-stack reimplementation, autonomous single-Issue PR delivery, evidence-backed maintenance, concise experiential knowledge, and human-approved skill evolution.", "author": { "name": "mindcarver" diff --git a/.scd/evolution/history.jsonl b/.scd/evolution/history.jsonl index 7608115..a1fa424 100644 --- a/.scd/evolution/history.jsonl +++ b/.scd/evolution/history.jsonl @@ -4,3 +4,6 @@ {"schema_version":"1.0","event_id":"EVE-20260803-quickdev-scope-drift-proposed","candidate_id":"EVO-20260803-quickdev-midflight-scope-shift","run_id":"RUN-20260803-evolve-quickdev-drift","recorded_at":"2026-08-03T16:10:00Z","status":"proposed","previous_status":null,"target_skills":["scd-quickdev"],"candidate_level":"exploratory","coverage":"full-transcript","root_cause":"scd-quickdev selects its delivery path once at intake and never re-checks; nothing tells the agent to stop widening the current branch when in-flight debugging crosses the Discovery/Project boundary, so a single bug fix silently grows into an unapproved redesign.","coupling_rationale":null,"change_kinds":["instruction"],"attribution":{"primary":"thinloop-skill","rationale":"The skill has a one-time path-selection gate and only reactive, fragmented scope-drift hints that assume the agent already noticed the drift. In the observed session the agent kept widening one Issue's branch across a different root cause, layer, and finally a user-supplied architecture proposal, instead of recognizing a new Discovery/Project path had emerged.","possible_misattribution":"Agent-limit or requirements: the diagnosing agent could have noticed the drift on its own, and the user's framing stayed terse. Both contributed, but the skill is the only editable lever and the missing rule (re-select path when in-flight scope crosses the Discovery/Project threshold) is the cheapest durable fix."},"matched_signals":["skill instructions led to scope expansion (bug fix branch widened into adapter, config, and E2E harness work outside the Issue acceptance)","user corrected skill-driven behavior (user pasted own architecture proposal and manually invoked scd-discovery and scd-project to redirect the flow)"],"unmatched_signals":["no deterministic skill script or format failed; the skill prose executed as written","documented trigger matched and skill was invoked correctly for the initial bug delivery","no isolated replay was performed; evidence is a single observation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"A long multi-task session opened as a scd-quickdev bug diagnosis and was delivered cleanly, but the request then evolved into a multi-decision product architecture redesign. The agent kept extending the original Issue's branch with adjacent problems and did not route to scd-discovery until the user manually supplied an architecture proposal and explicitly invoked that skill.","fingerprint":"sha256:726d265eb61cb1343e09c0bf5ba7a28394c1cd60933215cdd96f4bdaecf208fd","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-quickdev/SKILL.md","summary":"Add a '## Re-select the path when scope shifts mid-flight' section after path selection: three drift signals (adjacent out-of-scope fixes, user design proposal, multi-delivery or unauthorized decisions) that require stopping branch widening and handing off to scd-discovery or scd-project."}],"validation":{"kind":"independent-session","checks":[{"name":"deterministic structure check (unique heading, intact ## nesting, source-installed parity)","result":"unverified","evidence":"to run after edit"},{"name":"fresh isolated agent forward test using the session opening (bug report then evolving into architecture proposal)","result":"unverified","evidence":"to run after edit; expected: agent surfaces scd-discovery/scd-project handoff instead of silently widening branch"}]},"versions":{"before":"0.13.0","after":"0.13.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null}} {"schema_version":"1.0","event_id":"EVE-20260803-quickdev-scope-drift-trial","candidate_id":"EVO-20260803-quickdev-midflight-scope-shift","run_id":"RUN-20260803-evolve-quickdev-drift","recorded_at":"2026-08-03T16:11:00Z","status":"trial","previous_status":"proposed","target_skills":["scd-quickdev"],"candidate_level":"exploratory","coverage":"full-transcript","root_cause":"scd-quickdev selects its delivery path once at intake and never re-checks; nothing tells the agent to stop widening the current branch when in-flight debugging crosses the Discovery/Project boundary, so a single bug fix silently grows into an unapproved redesign.","coupling_rationale":null,"change_kinds":["instruction"],"attribution":{"primary":"thinloop-skill","rationale":"The skill has a one-time path-selection gate and only reactive, fragmented scope-drift hints that assume the agent already noticed the drift. In the observed session the agent kept widening one Issue's branch across a different root cause, layer, and finally a user-supplied architecture proposal, instead of recognizing a new Discovery/Project path had emerged.","possible_misattribution":"Agent-limit or requirements: the diagnosing agent could have noticed the drift on its own, and the user's framing stayed terse. Both contributed, but the skill is the only editable lever and the missing rule (re-select path when in-flight scope crosses the Discovery/Project threshold) is the cheapest durable fix."},"matched_signals":["skill instructions led to scope expansion (bug fix branch widened into adapter, config, and E2E harness work outside the Issue acceptance)","user corrected skill-driven behavior (user pasted own architecture proposal and manually invoked scd-discovery and scd-project to redirect the flow)"],"unmatched_signals":["no deterministic skill script or format failed; the skill prose executed as written","documented trigger matched and skill was invoked correctly for the initial bug delivery","no isolated replay was performed; evidence is a single observation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"A long multi-task session opened as a scd-quickdev bug diagnosis and was delivered cleanly, but the request then evolved into a multi-decision product architecture redesign. The agent kept extending the original Issue's branch with adjacent problems and did not route to scd-discovery until the user manually supplied an architecture proposal and explicitly invoked that skill.","fingerprint":"sha256:726d265eb61cb1343e09c0bf5ba7a28394c1cd60933215cdd96f4bdaecf208fd","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-quickdev/SKILL.md","summary":"Add a '## Re-select the path when scope shifts mid-flight' section after path selection: three drift signals (adjacent out-of-scope fixes, user design proposal, multi-delivery or unauthorized decisions) that require stopping branch widening and handing off to scd-discovery or scd-project."}],"validation":{"kind":"independent-session","checks":[{"name":"deterministic structure check (unique heading, intact ## nesting, source-installed parity)","result":"unverified","evidence":"to run after edit"},{"name":"fresh isolated agent forward test using the session opening (bug report then evolving into architecture proposal)","result":"unverified","evidence":"to run after edit; expected: agent surfaces scd-discovery/scd-project handoff instead of silently widening branch"}]},"versions":{"before":"0.13.0","after":"0.13.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null}} {"schema_version":"1.0","event_id":"EVE-20260803-quickdev-scope-drift-accepted","candidate_id":"EVO-20260803-quickdev-midflight-scope-shift","run_id":"RUN-20260803-evolve-quickdev-drift","recorded_at":"2026-08-03T16:20:00Z","status":"accepted","previous_status":"trial","target_skills":["scd-quickdev"],"candidate_level":"exploratory","coverage":"full-transcript","root_cause":"scd-quickdev selects its delivery path once at intake and never re-checks; nothing tells the agent to stop widening the current branch when in-flight debugging crosses the Discovery/Project boundary, so a single bug fix silently grows into an unapproved redesign.","coupling_rationale":null,"change_kinds":["instruction"],"attribution":{"primary":"thinloop-skill","rationale":"The skill has a one-time path-selection gate and only reactive, fragmented scope-drift hints that assume the agent already noticed the drift. In the observed session the agent kept widening one Issue's branch across a different root cause, layer, and finally a user-supplied architecture proposal, instead of recognizing a new Discovery/Project path had emerged.","possible_misattribution":"Agent-limit or requirements: the diagnosing agent could have noticed the drift on its own, and the user's framing stayed terse. Both contributed, but the skill is the only editable lever and the missing rule (re-select path when in-flight scope crosses the Discovery/Project threshold) is the cheapest durable fix."},"matched_signals":["skill instructions led to scope expansion (bug fix branch widened into adapter, config, and E2E harness work outside the Issue acceptance)","user corrected skill-driven behavior (user pasted own architecture proposal and manually invoked scd-discovery and scd-project to redirect the flow)"],"unmatched_signals":["no deterministic skill script or format failed; the skill prose executed as written","documented trigger matched and skill was invoked correctly for the initial bug delivery","no isolated replay was performed; evidence is a single observation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"A long multi-task session opened as a scd-quickdev bug diagnosis and was delivered cleanly, but the request then evolved into a multi-decision product architecture redesign. The agent kept extending the original Issue's branch with adjacent problems and did not route to scd-discovery until the user manually supplied an architecture proposal and explicitly invoked that skill.","fingerprint":"sha256:726d265eb61cb1343e09c0bf5ba7a28394c1cd60933215cdd96f4bdaecf208fd","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-quickdev/SKILL.md","summary":"Add a '## Re-select the path when scope shifts mid-flight' section after path selection: three drift signals (adjacent out-of-scope fixes, user design proposal, multi-delivery or unauthorized decisions) that require stopping branch widening and handing off to scd-discovery or scd-project."}],"validation":{"kind":"independent-session","checks":[{"name":"deterministic structure check","result":"pass","evidence":"git diff is purely additive (+22/0 deletions); new ## heading is unique at top level; surrounding anchors preserved; all 7 manifests parse and equal 0.13.1; no 0.13.0 remains in JSON manifests"},{"name":"fresh isolated agent forward test using the session opening (bug report then user-supplied architecture proposal)","result":"pass","evidence":"independent subagent loaded the edited skill and returned PASS, quoting the new section's triggers (adjacent out-of-scope fixes; user design proposal) and the mandated action (stop widening the branch; point at scd-discovery or scd-project; a bug fix that turns into a redesign is a new path)"}]},"versions":{"before":"0.13.0","after":"0.13.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null}} +{"schema_version":"1.0","candidate_id":"EVO-20261109-uiux-design-intelligence","run_id":"RUN-20261109-evolve-uiux-taste","target_skills":["scd-uiux"],"candidate_level":"confirmed","coverage":"visible-context","root_cause":"scd-uiux delegates all design quality to the eight-dimension checklist, which is a verification frame rather than generation knowledge: no pre-generation direction block, no anti-pattern bans, no concrete numeric thresholds and no token discipline, so visual output regresses to the mean.","coupling_rationale":null,"change_kinds":["instruction","workflow"],"attribution":{"primary":"thinloop-skill","rationale":"The user judged scd-uiux design output quality as low. Source analysis of five high-star peer skills (pre-generation decide block plus banned defaults, searchable design knowledge, DTCG three-tier tokens, two-fidelity design loop, dual-persona review) shows this capability class is entirely absent from scd-uiux, whose only design-quality artifact is the shared eight-dimension checklist.","possible_misattribution":"model-limit: a stronger model could compensate with its own taste; but the skill must carry portable design judgment, and the peer-standard gap is structural."},"matched_signals":["user directly judged scd-uiux output design quality as low and requested comparison with popular high-star skills","user approved the five-item P0+P1 checklist and explicitly confirmed candidate ID EVO-20261109-uiux-design-intelligence"],"unmatched_signals":["no interactive failure trace was diagnosed; this is a user-initiated research-backed improvement","no live consumer-project output of scd-uiux was examined in this conversation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"User reported low design quality and asked for popular alternatives; agent read core source files of five high-star repos (design-taste rules with banned defaults, DTCG token architecture, WDS two-fidelity design loop, HIG dual-persona review, context-fidelity discipline) and mapped the shared capability gap onto scd-uiux; user then approved the bounded five-operation checklist and confirmed the candidate ID.","fingerprint":"sha256:0e59c0c268ba6b32678808cad024351e079053342f2036a94b70177ca29346e0","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-uiux/references/design-taste.md","summary":"New shared reference: mandatory pre-generation direction block (domain, mood, motion depth, layout family, reference anchor) before any visual artifact; banned-defaults table with reason and replacement per item; mobile-first baseline rule."},{"action":"add","path":"skills/scd-uiux/references/design-tokens.md","summary":"New shared reference: three-tier token discipline (primitive, semantic, component; primitives never referenced directly), naming convention, dark mode swapped at the semantic layer, semantic-structure vs visual-style separation."},{"action":"replace","path":"skills/scd-uiux/SKILL.md","summary":"Hook design-taste.md into the visual-delivery section: direction block required before generating visual artifacts; governance flow unchanged."},{"action":"replace","path":"skills/scd-uiux/references/experience-contract.md","summary":"Hook design-tokens.md into the visual and component discipline section: token discipline applies when contracts describe visual increments."},{"action":"replace","path":"skills/scd-uiux/references/visual-quality.md","summary":"Eight-dimension table upgraded to thresholds plus anti-patterns (contrast 4.5:1, touch 44px, headline 2.5x body, measure 45-75ch, 4px spacing ladder, outer greater than inner, one primary one accent); self-review rounds gain direction-decision and change-reason fields."},{"action":"replace","path":"skills/scd-uiux/references/visual-evidence.md","summary":"Two-fidelity loop added to the fidelity table: low fidelity resolves structure and hierarchy only (no typography or color debate), confirmation freezes the reference before high fidelity; discuss before wireframing."},{"action":"replace","path":"skills/scd-uiux/assets/ux-contract.md","summary":"Add a design decision log column to the visual direction and system increment section of the UX contract template."}],"validation":{"kind":"mixed","checks":[{"name":"deterministic structure check (internal links resolve, shared-file consistency with scd-ui-polish and scd-quickdev, line budgets, manifests equal)","result":"unverified","evidence":"to run after edit"},{"name":"fresh isolated agent forward test: new-page design brief must yield the pre-generation direction block and banned-default screening before any visual artifact","result":"unverified","evidence":"to run after edit; expected: agent writes the five-line direction block and screens anti-patterns before generating visuals"}]},"versions":{"before":"0.20.0","after":"0.20.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null},"status":"proposed","previous_status":null,"recorded_at":"2026-11-09T22:17:26+08:00","event_id":"EVE-20261109-uiux-design-taste-proposed"} +{"schema_version":"1.0","candidate_id":"EVO-20261109-uiux-design-intelligence","run_id":"RUN-20261109-evolve-uiux-taste","target_skills":["scd-uiux"],"candidate_level":"confirmed","coverage":"visible-context","root_cause":"scd-uiux delegates all design quality to the eight-dimension checklist, which is a verification frame rather than generation knowledge: no pre-generation direction block, no anti-pattern bans, no concrete numeric thresholds and no token discipline, so visual output regresses to the mean.","coupling_rationale":null,"change_kinds":["instruction","workflow"],"attribution":{"primary":"thinloop-skill","rationale":"The user judged scd-uiux design output quality as low. Source analysis of five high-star peer skills (pre-generation decide block plus banned defaults, searchable design knowledge, DTCG three-tier tokens, two-fidelity design loop, dual-persona review) shows this capability class is entirely absent from scd-uiux, whose only design-quality artifact is the shared eight-dimension checklist.","possible_misattribution":"model-limit: a stronger model could compensate with its own taste; but the skill must carry portable design judgment, and the peer-standard gap is structural."},"matched_signals":["user directly judged scd-uiux output design quality as low and requested comparison with popular high-star skills","user approved the five-item P0+P1 checklist and explicitly confirmed candidate ID EVO-20261109-uiux-design-intelligence"],"unmatched_signals":["no interactive failure trace was diagnosed; this is a user-initiated research-backed improvement","no live consumer-project output of scd-uiux was examined in this conversation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"User reported low design quality and asked for popular alternatives; agent read core source files of five high-star repos (design-taste rules with banned defaults, DTCG token architecture, WDS two-fidelity design loop, HIG dual-persona review, context-fidelity discipline) and mapped the shared capability gap onto scd-uiux; user then approved the bounded five-operation checklist and confirmed the candidate ID.","fingerprint":"sha256:0e59c0c268ba6b32678808cad024351e079053342f2036a94b70177ca29346e0","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-uiux/references/design-taste.md","summary":"New shared reference: mandatory pre-generation direction block (domain, mood, motion depth, layout family, reference anchor) before any visual artifact; banned-defaults table with reason and replacement per item; mobile-first baseline rule."},{"action":"add","path":"skills/scd-uiux/references/design-tokens.md","summary":"New shared reference: three-tier token discipline (primitive, semantic, component; primitives never referenced directly), naming convention, dark mode swapped at the semantic layer, semantic-structure vs visual-style separation."},{"action":"replace","path":"skills/scd-uiux/SKILL.md","summary":"Hook design-taste.md into the visual-delivery section: direction block required before generating visual artifacts; governance flow unchanged."},{"action":"replace","path":"skills/scd-uiux/references/experience-contract.md","summary":"Hook design-tokens.md into the visual and component discipline section: token discipline applies when contracts describe visual increments."},{"action":"replace","path":"skills/scd-uiux/references/visual-quality.md","summary":"Eight-dimension table upgraded to thresholds plus anti-patterns (contrast 4.5:1, touch 44px, headline 2.5x body, measure 45-75ch, 4px spacing ladder, outer greater than inner, one primary one accent); self-review rounds gain direction-decision and change-reason fields."},{"action":"replace","path":"skills/scd-uiux/references/visual-evidence.md","summary":"Two-fidelity loop added to the fidelity table: low fidelity resolves structure and hierarchy only (no typography or color debate), confirmation freezes the reference before high fidelity; discuss before wireframing."},{"action":"replace","path":"skills/scd-uiux/assets/ux-contract.md","summary":"Add a design decision log column to the visual direction and system increment section of the UX contract template."}],"validation":{"kind":"mixed","checks":[{"name":"deterministic structure check (internal links resolve, shared-file consistency with scd-ui-polish and scd-quickdev, line budgets, manifests equal)","result":"unverified","evidence":"to run after edit"},{"name":"fresh isolated agent forward test: new-page design brief must yield the pre-generation direction block and banned-default screening before any visual artifact","result":"unverified","evidence":"to run after edit; expected: agent writes the five-line direction block and screens anti-patterns before generating visuals"}]},"versions":{"before":"0.20.0","after":"0.20.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null},"status":"trial","previous_status":"proposed","recorded_at":"2026-11-09T22:17:28+08:00","event_id":"EVE-20261109-uiux-design-taste-trial"} +{"schema_version":"1.0","event_id":"EVE-20261109-uiux-design-taste-accepted","candidate_id":"EVO-20261109-uiux-design-intelligence","run_id":"RUN-20261109-evolve-uiux-taste","recorded_at":"2026-11-09T22:26:36+08:00","status":"accepted","previous_status":"trial","target_skills":["scd-uiux"],"candidate_level":"confirmed","coverage":"visible-context","root_cause":"scd-uiux delegates all design quality to the eight-dimension checklist, which is a verification frame rather than generation knowledge: no pre-generation direction block, no anti-pattern bans, no concrete numeric thresholds and no token discipline, so visual output regresses to the mean.","coupling_rationale":null,"change_kinds":["instruction","workflow"],"attribution":{"primary":"thinloop-skill","rationale":"The user judged scd-uiux design output quality as low. Source analysis of five high-star peer skills shows the missing capability class (pre-generation direction, banned defaults, thresholds, tokens, fidelity loop) is structural; the trial injected exactly that layer and the isolated session applied it unprompted.","possible_misattribution":"model-limit: a stronger model could compensate with its own taste; portable skill judgment remains the durable fix."},"matched_signals":["user directly judged scd-uiux output design quality as low and requested comparison with popular high-star skills","user approved the five-item P0+P1 checklist and explicitly confirmed candidate ID EVO-20261109-uiux-design-intelligence"],"unmatched_signals":["no interactive failure trace was diagnosed; this is a user-initiated research-backed improvement","no live consumer-project output of scd-uiux was examined in this conversation"],"evidence":{"types":["conversation","user-correction","tool-output"],"summary":"User reported low design quality; agent mapped the capability gap from five high-star repos onto scd-uiux; user approved the bounded checklist and confirmed the candidate ID; implementation and both validations completed in the trial branch.","fingerprint":"sha256:0e59c0c268ba6b32678808cad024351e079053342f2036a94b70177ca29346e0","evidence_redacted":true},"operations":[{"action":"add","path":"skills/scd-uiux/references/design-taste.md","summary":"New shared reference: mandatory pre-generation direction block (domain, mood, motion depth, layout family, reference anchor) before any visual artifact; banned-defaults table with reason and replacement per item; mobile-first baseline rule."},{"action":"add","path":"skills/scd-uiux/references/design-tokens.md","summary":"New shared reference: three-tier token discipline (primitive, semantic, component; primitives never referenced directly), naming convention, dark mode swapped at the semantic layer, semantic-structure vs visual-style separation."},{"action":"replace","path":"skills/scd-uiux/SKILL.md","summary":"Hook design-taste.md into the visual-delivery section: direction block required before generating visual artifacts; governance flow unchanged."},{"action":"replace","path":"skills/scd-uiux/references/experience-contract.md","summary":"Hook design-tokens.md into the visual and component discipline section: token discipline applies when contracts describe visual increments."},{"action":"replace","path":"skills/scd-uiux/references/visual-quality.md","summary":"Eight-dimension table upgraded to thresholds plus anti-patterns (contrast 4.5:1, touch 44px, headline 2.5x body, measure 45-75ch, 4px spacing ladder, outer greater than inner, one primary one accent); self-review rounds gain direction-decision and change-reason fields."},{"action":"replace","path":"skills/scd-uiux/references/visual-evidence.md","summary":"Two-fidelity loop added to the fidelity table: low fidelity resolves structure and hierarchy only (no typography or color debate), confirmation freezes the reference before high fidelity; discuss before wireframing."},{"action":"replace","path":"skills/scd-uiux/assets/ux-contract.md","summary":"Add a design decision log column to the visual direction and system increment section of the UX contract template."}],"validation":{"kind":"mixed","checks":[{"name":"deterministic structure check (internal links resolve, shared-file consistency with scd-ui-polish and scd-quickdev, line budgets, manifests equal)","result":"pass","evidence":"all relative links in skills/scd-uiux, README and docs resolve; scd-ui-polish and quickdev references to visual-quality intact; eight-dim terminology preserved; 7 manifests parse and equal 0.20.1 with no 0.20.0 residue; release-note links resolve"},{"name":"fresh isolated agent forward test: new-page design brief must yield the pre-generation direction block and banned-default screening before any visual artifact","result":"pass","evidence":"post-edit isolated subagent loaded the edited skill, wrote the five-item direction block (restrained mood, varied four-section layout family, named anchors), screened all ten blacklist entries with hit handling, and stated low fidelity forbids typography and color debate"}]},"versions":{"before":"0.20.0","after":"0.20.1"},"self_evolution":{"is_self_evolution":false,"source_run_id":null}} diff --git a/.scd/plans/20261109-221831-uiux-design-intelligence/decisions.md b/.scd/plans/20261109-221831-uiux-design-intelligence/decisions.md new file mode 100644 index 0000000..08e1abd --- /dev/null +++ b/.scd/plans/20261109-221831-uiux-design-intelligence/decisions.md @@ -0,0 +1,29 @@ +--- +status: approved +version: 2 +created_at: 2026-11-09T22:18:31+08:00 +updated_at: 2026-11-09T22:26:00+08:00 +recorded_timezone: Asia/Shanghai +--- + +# 决策与事件 + +- 事件ID:DEC-1 +- 类型:批准 +- 文件及文档版本:requirements.md v1、implementation.md v1、plan.md v1(本目录) +- 目标Git SHA:`64125e3acfa3de5e57d5c3ca742af3cdbc7b9a37`(计划首个提交,含四份计划文档与演进 proposed/trial 事件) +- 用户实际依据:用户对五项改造清单回复"没问题"(清单含逐项内容、优先级 P0+P1、落点文件、验收方式与"走 scd-evolve 立一个 Issue 实施"的路径建议),上下文为本对话研究结论展示。 +- 任务或Issue范围:EVO-20261109-uiux-design-intelligence 全部 7 项文件操作与版本提升 +- occurred_at:null # 用户消息原始时间未知(会话内口头确认,无消息ID) +- recorded_at:2026-11-09T22:26:00+08:00 +- 未决选择:无(P2 两项明确暂不实施,不属未决) + +- 事件ID:DEC-2 +- 类型:开工 +- 文件及文档版本:同 DEC-1;决策事件本身记录于 decisions.md v2 +- 目标Git SHA:`64125e3acfa3de5e57d5c3ca742af3cdbc7b9a37` +- 用户实际依据:对正式候选项展示(含稳定候选 ID、7 项操作、试验验证与分发边界、"确认 EVO-20261109-uiux-design-intelligence 开始试验,或拒绝该 ID",及是否写入 `~/.scd/config.json` 的可选项)回复"可以"。 +- 任务或Issue范围:Issue #120(scd-uiux 补入设计智力层);开工授权覆盖 7 项文件操作、确定性检查、隔离会话前向测试、版本提升与普通交付序列;`thinloop_source_root` 配置写入已同步执行并回读。 +- occurred_at:null # 用户消息原始时间未知(会话内口头确认,无消息ID) +- recorded_at:2026-11-09T22:26:00+08:00 +- 未决选择:无 diff --git a/.scd/plans/20261109-221831-uiux-design-intelligence/implementation.md b/.scd/plans/20261109-221831-uiux-design-intelligence/implementation.md new file mode 100644 index 0000000..6f87982 --- /dev/null +++ b/.scd/plans/20261109-221831-uiux-design-intelligence/implementation.md @@ -0,0 +1,38 @@ +--- +status: approved +version: 1 +created_at: 2026-11-09T22:18:31+08:00 +updated_at: 2026-11-09T22:18:31+08:00 +recorded_timezone: Asia/Shanghai +--- + +# 实施计划 + +## 文件与顺序 + +| 序 | 文件 | 操作 | 依赖 | +|---|---|---|---| +| 1 | `skills/scd-uiux/references/design-taste.md` | 新建(约 70–100 行) | 无 | +| 2 | `skills/scd-uiux/references/design-tokens.md` | 新建(约 45–60 行) | 无 | +| 3 | `skills/scd-uiux/references/visual-quality.md` | 八维表加"阈值/反模式"双列;黑名单链接;轮次记录加方向决策与变更原因 | 1 | +| 4 | `skills/scd-uiux/references/visual-evidence.md` | 保真度表加两阶段行;新增"两阶段保真度循环"小节 | 1 | +| 5 | `skills/scd-uiux/references/experience-contract.md` | "视觉与组件纪律"挂接 design-tokens 一句 | 2 | +| 6 | `skills/scd-uiux/assets/ux-contract.md` | "视觉方向与系统增量"加方向块占位与设计决策日志栏 | 1、3 | +| 7 | `skills/scd-uiux/SKILL.md` | "形成可实施的视觉交付"挂接 design-taste 一句 | 1 | +| 8 | 发布清单(`.codex-plugin/plugin.json`、`.claude-plugin/plugin.json` 等 grep 确认全集) | 0.20.0→0.20.1 | 1–7 通过验证后 | + +## 验证 + +1. 确定性:全部新增/修改文件的内部相对链接可解析;`grep -r "visual-quality"` 确认 scd-ui-polish/quickdev 引用不受破坏;八维术语保留;各文件行数在预算内;全部发布清单版本相等且无 0.20.0 残留。 +2. 隔离会话前向测试(instruction+workflow 必需):编辑后新起子代理,仅提供修改后技能路径与一个新页面设计简报提示词,期望:先产出五项方向块并排查黑名单,再生成视觉产物。 +3. 交付门:PR 独立验收子代理返回 PASS;页面类变更不适用(本任务为技能文档,无页面交互)。 + +## 交付 + +分支 `evo/20261109-uiux-design-intelligence` → PR → 独立验收 PASS → 合并 → 同步本地 main → 按 Thinloop 交付默认核对已安装 ZCode / Claude Code / Codex 与合并后 main 一致(含仓库内变更的负载刷新)。 + +## 风险与停止条件 + +- 隔离会话测试失败:按 trial 契约从 `/tmp/thinloop-evo-20261109-snapshot` 恢复候选文件并追加 `reverted`,报告差距。 +- 共用 visual-quality.md 的相邻技能行为回归:八维行名与"八维都要考虑;未触发维度记录 N/A"等共用语句保持原文不动,只增列与小节。 +- 清单版本同步遗漏:以 `grep -rn '0\.20\.0'` 全仓核对归零。 diff --git a/.scd/plans/20261109-221831-uiux-design-intelligence/plan.md b/.scd/plans/20261109-221831-uiux-design-intelligence/plan.md new file mode 100644 index 0000000..35ce634 --- /dev/null +++ b/.scd/plans/20261109-221831-uiux-design-intelligence/plan.md @@ -0,0 +1,14 @@ +--- +status: approved +version: 1 +created_at: 2026-11-09T22:18:31+08:00 +updated_at: 2026-11-09T22:18:31+08:00 +recorded_timezone: Asia/Shanghai +--- + +# 任务索引 + +- 任务与Issue:EVO-20261109-uiux-design-intelligence——scd-uiux 补入设计智力层(P0+P1 共 7 项文件操作);治理 Issue 见 decisions.md DEC-2 范围记录 +- 所需文档及版本:requirements.md v1、implementation.md v1、decisions.md v1 +- 基线来源:`skills/scd-uiux/`(main @ `12cc21e`,演进历史 `.scd/evolution/history.jsonl` 8 事件,本候选 proposed/trial 已登记) +- 批准与开工事件:decisions.md `DEC-1`(方案批准:五项改造清单)、`DEC-2`(开工授权与候选 ID 确认) diff --git a/.scd/plans/20261109-221831-uiux-design-intelligence/requirements.md b/.scd/plans/20261109-221831-uiux-design-intelligence/requirements.md new file mode 100644 index 0000000..0bd7b9d --- /dev/null +++ b/.scd/plans/20261109-221831-uiux-design-intelligence/requirements.md @@ -0,0 +1,34 @@ +--- +status: approved +version: 1 +created_at: 2026-11-09T22:18:31+08:00 +updated_at: 2026-11-09T22:18:31+08:00 +recorded_timezone: Asia/Shanghai +--- + +# 需求 + +scd-uiux 是流程治理型技能,设计质量全部委托给八维检查表(验收框架),缺少生成侧设计智力,导致视觉产出回落均值。经对 plugin87/ux-ui-agent-skills、ui-ux-pro-max、BMAD WDS、apple-design-skill、superdesign-skill 五个高星项目的源码分析,确认补入以下能力(用户已逐项确认清单与优先级,P2 两项暂不实施)。 + +## P0 + +1. 新增 `skills/scd-uiux/references/design-taste.md`:生成前五项方向决策块(领域与气质/受众与语气/动效深度/布局族/参考锚点,命名不出不得生成)、反模式黑名单(等权重卡片、全居中、#000压#fff、emoji 图标、满投影、彩虹强调色、单侧彩条、营销空话文案,逐条含原因与替代)、移动优先基准。 +2. 升级 `skills/scd-uiux/references/visual-quality.md` 八维表为"具体阈值+反模式":对比≥4.5:1、触控≥44×44px、最大标题≥2.5×正文、行长 45–75ch、4px 间距阶梯、外距>内距、一个主色至多一个强调色;自审轮次记录增加方向决策与变更原因。 + +## P1 + +3. 新增 `skills/scd-uiux/references/design-tokens.md`:三层令牌(primitive→semantic→component,原始令牌禁止直接引用)、命名规范、暗色在语义层切换、语义结构与视觉样式分离。 +4. `skills/scd-uiux/references/visual-evidence.md` 增加两阶段保真度循环:先讨论再画图;低保真只决结构与层级(禁谈字体颜色);确认即冻结参考后再高保真。 +5. `skills/scd-uiux/assets/ux-contract.md` 增加设计决策日志栏。 + +## 挂接 + +- `skills/scd-uiux/SKILL.md`「形成可实施的视觉交付」挂接 design-taste。 +- `skills/scd-uiux/references/experience-contract.md`「视觉与组件纪律」挂接 design-tokens。 + +## 边界(不得超出) + +- 不改治理流程、状态机、确认机制或与其他技能的分工。 +- 不引入外部服务依赖、大型知识库或多 agent 人格体系。 +- visual-quality.md 为 scd-ui-polish 与 quickdev 共用,只做增量升级,不破坏既有"八维"术语与共用契约。 +- 验收:确定性检查(内部链接、共用文件一致性、行数约束、发布清单版本相等)+ 编辑后新起隔离会话用真实提示词前向测试;通过后补丁版本 0.20.0→0.20.1 并同步全部发布清单。 diff --git a/.zcode-plugin/plugin.json b/.zcode-plugin/plugin.json index d0c4d67..6a0de30 100644 --- a/.zcode-plugin/plugin.json +++ b/.zcode-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "thinloop", - "version": "0.20.0", + "version": "0.20.1", "description": "Simplify complex development with Issue-backed discovery, risk-adaptive Web experience and architecture design, non-executing multi-Issue project decomposition into dependency DAGs, bounded READY-wave execution, read-only project-status navigation, project-scale refactoring and cross-stack reimplementation, autonomous single-Issue PR delivery, evidence-backed maintenance, concise experiential knowledge, and human-approved skill evolution.", "author": { "name": "mindcarver" diff --git a/README.md b/README.md index 145fc03..603be1e 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@
- v0.20.0
+ v0.20.1
ISSUE-DRIVEN
diff --git a/docs/installation.md b/docs/installation.md
index 63047ae..c719512 100644
--- a/docs/installation.md
+++ b/docs/installation.md
@@ -403,3 +403,4 @@ ZCode:使用 $scd-evolve 诊断本次使用过的 Thinloop Skill。
方案与开工前提:按[计划确认契约](../skills/scd-quickdev/references/planning-contract.md)先确认具体技术选择、精确Git计划版本和开工范围,再连续完成普通交付;新选择或实质变更重新确认。纯状态查询不创建开发计划。
- 升级到 v0.20.0:新增独立 `scd-research`,支持产品前期用户、竞品、替代方案和假设验证;Discovery 消费研究结论,保留清晰变更快速路径。已有客户端按原安装形态更新并核对十四个技能,详见 [`v0.20.0`](./releases/v0.20.0.md)。
+- 升级到 v0.20.1:`scd-uiux` 补入设计智力层——生成前方向块、反模式黑名单、三层设计令牌纪律与两阶段保真度循环,八维检查升级为阈值加反模式双列。详见 [`v0.20.1`](./releases/v0.20.1.md)。
diff --git a/docs/releases/v0.20.1.md b/docs/releases/v0.20.1.md
new file mode 100644
index 0000000..68b2585
--- /dev/null
+++ b/docs/releases/v0.20.1.md
@@ -0,0 +1,7 @@
+# Thinloop v0.20.1
+
+`scd-uiux` 补入生成侧设计智力,新增[设计品味](../../skills/scd-uiux/references/design-taste.md)与[设计令牌](../../skills/scd-uiux/references/design-tokens.md)两份参考。生成任何视觉产物前必须先写五项方向块(领域与气质、受众与语气、动效深度、布局族、参考锚点)并逐条排查反模式黑名单;[八维检查](../../skills/scd-uiux/references/visual-quality.md)升级为具体阈值加反模式双列(正文对比 4.5:1、触控 44px、最大标题 2.5 倍正文、行长 45–75ch、4px 间距阶梯等);重要页面默认两阶段保真度循环,低保真只决结构与层级;UX 契约模板增加设计决策日志。治理流程与状态机不变,共用文件对 `scd-ui-polish` 与 QuickDev 保持兼容。
+
+设计判断参考 plugin87/ux-ui-agent-skills、BMAD WDS、ui-ux-pro-max、apple-design-skill、superdesign-skill 等开源技能的公开方法(MIT 许可),按本仓库语言与治理结构改写;未引入外部插件或运行时依赖。
+
+结构检查与隔离行为场景只验证本次指令路径,不证明跨模型一致的视觉效果;实际设计质量以用户真实使用验收为准。
diff --git a/marketplace.json b/marketplace.json
index cb3835a..57cb0bb 100644
--- a/marketplace.json
+++ b/marketplace.json
@@ -6,7 +6,7 @@
"name": "thinloop",
"source": ".",
"description": "Discovery, Web UIUX, architecture, Next project-status navigation, Project DAG decomposition, Execute READY-wave orchestration, Reengineering gates, QuickDev delivery, maintenance, knowledge, and evolution skills with continuity checks; Project itself remains non-executing.",
- "version": "0.20.0"
+ "version": "0.20.1"
}
]
}
diff --git a/skills/scd-uiux/SKILL.md b/skills/scd-uiux/SKILL.md
index db7f637..b57e79e 100644
--- a/skills/scd-uiux/SKILL.md
+++ b/skills/scd-uiux/SKILL.md
@@ -66,7 +66,7 @@ description: "在生产实施前设计或完善 Web 产品的用户体验和界
## 形成可实施的视觉交付
-创建或验证线框图、视觉稿或原型前,阅读 `references/visual-evidence.md`。
+创建或验证线框图、视觉稿或原型前,阅读 `references/visual-evidence.md`。生成任何视觉产物前,先按[设计品味](references/design-taste.md)写出五项方向块并逐条排查反模式黑名单;命名不出方向时不得开始生成。
视觉设计自动使用共用的[页面视觉质量](references/visual-quality.md):统一方向、八维检查、实际渲染的有限轮次自审与可核对对比。已有页面只需视觉打磨时可独立使用 [scd-ui-polish](../scd-ui-polish/SKILL.md);生产实施仍交给 QuickDev,清晰局部变更不增加设计阶段。
- 明显的文案、颜色、间距或局部组件变更继续使用简洁的交互增量说明,不强制扩大成设计项目。
diff --git a/skills/scd-uiux/assets/ux-contract.md b/skills/scd-uiux/assets/ux-contract.md
index f55e01c..b06685d 100644
--- a/skills/scd-uiux/assets/ux-contract.md
+++ b/skills/scd-uiux/assets/ux-contract.md
@@ -23,9 +23,16 @@ recorded_timezone: Asia/Shanghai
## 视觉方向与系统增量
+- <生成前方向块:领域与气质 / 受众与语气 / 动效深度 / 布局族 / 参考锚点;局部变更只写增量>
- <统一方向、共用页面视觉质量的八维观察及适用视口;引用来源与证据,不复制标准>
- <修改前基线或新页面 N/A 理由、各轮自审记录及前后对比;实施对照沿用下方视觉 ID>
+### 设计决策日志
+
+| 日期 | 决策 | 变更原因或依据 |
+|---|---|---|
+|