协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
audit-icon-pipeline【开发与工程】Detect missing glyphs, icons, and HD variants by comparing registries against glyph mapping files, icon directories, and manifests. Reports gaps for skills, agents, and teams across all palettes.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
較冊與符映檔、像目、清單→察缺符、缺像、舊清單。出結構缺報涵技、將、隊。
skill、agent、team、all(默 all)cyberpunk—參色板)自諸正典冊集諸實 ID。
skills/_registry.yml—諸域中取諸技 IDagents/_registry.yml—取諸將 IDteams/_registry.yml—取諸隊 ID得: 三實 ID 列與計合 total_skills、total_agents、total_teams。
敗: 冊檔缺→報徑而略其類。
自符映檔集諸映實 ID。
viz/R/glyphs.R—取 SKILL_GLYPHS 之諸鍵viz/R/agent_glyphs.R—取 AGENT_GLYPHS 之諸鍵viz/R/team_glyphs.R—取 TEAM_GLYPHS 之諸鍵得: 三映 ID 列。
敗: 符檔缺→報而標其類諸實為未映。
較冊 ID 與映 ID。
registry_skill_ids - mapped_skill_idsregistry_agent_ids - mapped_agent_idsregistry_team_ids - mapped_team_ids得: 實 ID 列,存於冊而無符函映。
敗: 較算敗→驗冊與符檔之 ID 格式合(如底線對劃)。
驗諸映符有應之渲像檔。
viz/public/icons/<palette>/<domain>/<skillId>.webpviz/public/icons/<palette>/agents/<agentId>.webpviz/public/icons/<palette>/teams/<teamId>.webpviz/public/icons-hd/,同結構得: 實列—有符而缺渲像(標與/或 HD)。
敗: 像目不存→管未行→報諸為缺。
較清單計與冊計。
viz/public/data/icon-manifest.json—計條viz/public/data/agent-icon-manifest.json—計條viz/public/data/team-icon-manifest.json—計條得: 清單計合冊計。差→清單陳舊。
敗: 清單檔不存→資料管先行(node build-data.js && node build-icon-manifest.js)。
巡 viz/public/icons*/ 旗其 <palette>/<domain>/<skillId> 三元不現於 icon-manifest.json 之 WebP 檔。
find viz/public/icons* -name "*.webp"<domain>/<id><domain>/<id> 是否有 icon-manifest.json 條# Quick orphan count per palette
node -e "
const fs = require('fs');
const manifest = JSON.parse(fs.readFileSync('viz/public/data/icon-manifest.json'));
const ids = new Set(manifest.map(e => e.domain + '/' + e.id));
const orphans = require('child_process')
.execSync('find viz/public/icons -name \"*.webp\"').toString().trim().split('\n')
.filter(p => { const parts = p.split('/'); const id = parts.slice(-2).join('/').replace('.webp',''); return !ids.has(id); });
console.log('Orphans:', orphans.length);
orphans.forEach(p => console.log(' ', p));
"
得: 零孤。孤存→技移域而未清(每移 18 孤 = 9 色板 × 2 尺寸)。
敗: 手刪孤—無清單條且不服。移事罕,手清可。
出結構概。
=== Icon Pipeline Audit ===
MISSING GLYPHS (no glyph function):
Skills: 5 missing — [list]
Agents: 2 missing — [list]
Teams: 0 missing
MISSING ICONS (glyph exists, no rendered WebP):
Standard (512px): 3 skills, 1 agent
HD (1024px): 8 skills, 3 agents, 1 team
STALE MANIFESTS:
icon-manifest.json: 320 entries vs 326 registry (stale)
agent-icon-manifest.json: 66 entries vs 66 registry (OK)
team-icon-manifest.json: 15 entries vs 15 registry (OK)
得: 全缺報附可行下步。
敗: 諸察皆通零缺→報「管全同步」為正果。
create-skill),符映或用 snake_case→確保較時歸一icons-hd/)—勿混標像build.sh 造新徑像而不刪舊徑—域移後必行步六察孤