[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ACDZP0WFF8FXYSX5NF6E41":3,"skill-same:01M6ACDZP0WFF8FXYSX5NF6E41":118},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":45,"linkOnly":46,"markdownContent":47,"markdownBody":48,"frontMatter":49,"refName":57,"commitSha":58,"skillDirectory":59,"forksCount":60,"repositoryHtmlUrl":61,"repositoryHomepageUrl":62,"ownerHtmlUrl":63,"ownerBlogUrl":64,"ownerDescription":6,"updatedAt":65,"install":66,"resources":79},"01M6ACDZP0WFF8FXYSX5NF6E41","review-architecture",null,"Review Apache Pinot architecture when module dependencies, SPI boundaries, abstractions, or class placement change.","apache\u002Fpinot","apache","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F47359?v=4","01M6AC83E6K4FDKK7HZ8WNMQKE","The Apache Software Foundation","01M6ACDPCCB13AFXYW1KGCRWNY",6171,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-architecture\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,9,40,41,42,43,44],"review","architecture","review architecture","server","new","when","imports","pom","broker","interface","module","across","diff","kb","design","new plugin","code-review","code","plugin","change","directory","2026-11-10 10:12:30",false,"---\nname: review-architecture\ndescription: Review Apache Pinot architecture when module dependencies, SPI boundaries, abstractions, or class placement change.\ndomain: kb\u002Fcode-review-principles.md#3-code-architecture--module-design\ntriggers:\n  - diff adds\u002Fmoves classes across module boundaries\n  - diff introduces a new SPI interface or abstract class\n  - diff adds a new plugin directory under pinot-plugins\u002F\n  - diff introduces cross-module imports (broker → server internals, etc.)\n  - diff touches module POM dependencies\nlicense: Apache-2.0\n---\n\n# Skill: review-architecture\n\nProcedure: see [`kb\u002Fskills\u002Freview-architecture.md`](..\u002F..\u002F..\u002Fkb\u002Fskills\u002Freview-architecture.md). Read it first, then follow it.\n","# Skill: review-architecture\n\nProcedure: see [`kb\u002Fskills\u002Freview-architecture.md`](..\u002F..\u002F..\u002Fkb\u002Fskills\u002Freview-architecture.md). Read it first, then follow it.\n",{"name":5,"domain":50,"license":15,"triggers":51,"description":7},"kb\u002Fcode-review-principles.md#3-code-architecture--module-design",[52,53,54,55,56],"diff adds\u002Fmoves classes across module boundaries","diff introduces a new SPI interface or abstract class","diff adds a new plugin directory under pinot-plugins\u002F","diff introduces cross-module imports (broker → server internals, etc.)","diff touches module POM dependencies","master","e9be2ee203ac4b19ac70956c16806bee22aae9da",".claude\u002Fskills\u002Freview-architecture",1532,"https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot","https:\u002F\u002Fpinot.apache.org\u002F","https:\u002F\u002Fgithub.com\u002Fapache","https:\u002F\u002Fwww.apache.org\u002F","2026-11-11 23:35:31",{"source":8,"skillName":5,"commands":67,"prompt":77,"zipAvailable":78},[68,71,74],{"tool":69,"command":70},"npx","npx skills add apache\u002Fpinot --skill review-architecture",{"tool":72,"command":73},"bunx","bunx skills add apache\u002Fpinot --skill review-architecture",{"tool":75,"command":76},"pnpm","pnpm dlx skills add apache\u002Fpinot --skill review-architecture","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-architecture\u002FSKILL.md",true,[80,86,90,94,98,102,106,110,114],{"path":81,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":84,"sourceHtmlUrl":85},"references\u002Fanti-patterns.md","REFERENCE","参考文档",4301,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fanti-patterns.md",{"path":87,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":88,"sourceHtmlUrl":89},"references\u002Fcore-frameworks.md",13738,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fcore-frameworks.md",{"path":91,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":92,"sourceHtmlUrl":93},"references\u002Fdiagnostic-cases.md",30395,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fdiagnostic-cases.md",{"path":95,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":96,"sourceHtmlUrl":97},"references\u002Fdiagnostic-frameworks.md",50030,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fdiagnostic-frameworks.md",{"path":99,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":100,"sourceHtmlUrl":101},"references\u002Fdiagnostic-system.md",2161,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fdiagnostic-system.md",{"path":103,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":104,"sourceHtmlUrl":105},"references\u002Fdiagnostic-templates.md",9259,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fdiagnostic-templates.md",{"path":107,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":108,"sourceHtmlUrl":109},"references\u002Findustry-benchmarks.md",24868,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Findustry-benchmarks.md",{"path":111,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":112,"sourceHtmlUrl":113},"references\u002Fpriority-scoring.md",9932,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fpriority-scoring.md",{"path":115,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":116,"sourceHtmlUrl":117},"references\u002Fwork-modes-and-templates.md",4503,"https:\u002F\u002Fgithub.com\u002Fshengdabai\u002FTony-Claude-Code-Skills\u002Fblob\u002Fmain\u002Fskills\u002Fafa-diagnose\u002Freferences\u002Fwork-modes-and-templates.md",[119,133,153,173,194,218],{"skillNo":120,"name":121,"nameZh":6,"description":122,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":123,"categories":124,"keywords":128,"publishedAt":45},"01M6ACEFFGBBB74RR7GPKS9GDH","run-test","Run a named Pinot test class or method in its owning Maven module.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Frun-test\u002FSKILL.md",[125],{"categoryNo":126,"categoryName":127,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[129,130,131,132,34],"test","run","run test","maven",{"skillNo":134,"name":135,"nameZh":6,"description":136,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":137,"categories":138,"keywords":140,"publishedAt":45},"01M6ACED591YCWDYX9CE76NXTN","review-testing","Review Apache Pinot regression coverage and test quality when behavior or tests change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-testing\u002FSKILL.md",[139],{"categoryNo":126,"categoryName":127,"taxonomyType":21,"taxonomyTypeDesc":22},[141,24,142,129,43,41,40,9,143,144,145,146,37,147,36,148,149,150,151,152,29],"testing","review testing","file","regression","coverage","fix","regression test","strategies","tests","type","claims","test quality",{"skillNo":154,"name":155,"nameZh":6,"description":156,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":157,"categories":158,"keywords":159,"publishedAt":45},"01M6ACEBB9APW590Y5ZK879T5F","review-process-scope","Review Apache Pinot change scope and process when assessing PR descriptions, reverts, retries, or compatibility notes.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-process-scope\u002FSKILL.md",[],[24,160,161,162,163,43,164,165,41,40,9,37,36,166,167,168,169,149,170,171,172,29],"review process scope","process","review process","scope","notes","pr","modules","pr title","todo","upgrade","hotfix","retries","comments",{"skillNo":174,"name":175,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":45},"01M6ACE95JZ2MXW1WFC1XZE2KR","review-performance","Review Apache Pinot performance when hot paths change or a PR makes benchmark or efficiency claims.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-performance\u002FSKILL.md",[],[24,180,181,43,182,165,183,41,184,185,40,9,186,37,36,187,188,189,190,191,192,193,29],"performance","review performance","perf","core","benchmark","pr description","loop","query","local","efficiency","runtime","segment","lock","improvement",{"skillNo":195,"name":196,"nameZh":6,"description":197,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":198,"categories":199,"keywords":206,"publishedAt":45},"01M6ACE78389C8TABQCGQ7TY05","review-naming-api","Review Apache Pinot naming and API conventions when public names, signatures, or documentation change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-naming-api\u002FSKILL.md",[200,201],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":202,"categoryName":203,"taxonomyType":204,"taxonomyTypeDesc":205},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[24,207,208,209,38,43,210,41,40,9,211,212,37,36,213,214,215,216,29,217,28],"review naming api","api","naming","documentation","api conventions","REST","methods","signatures","api-design","rest endpoint","constants",{"skillNo":219,"name":220,"nameZh":6,"description":221,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":222,"categories":223,"keywords":224,"publishedAt":45},"01M6ACE5FK9NE9QNKKZ5Y7QG68","review-correctness-nulls","Review Apache Pinot correctness when null handling, numeric types, dispatch, or resource lifecycles change.","https:\u002F\u002Fgithub.com\u002Fapache\u002Fpinot\u002Fblob\u002Fmaster\u002F.claude\u002Fskills\u002Freview-correctness-nulls\u002FSKILL.md",[],[24,225,226,227,43,41,40,9,228,37,36,229,230,150,191,231,232,233,234,29],"review correctness nulls","review correctness","correctness","vector","default","switch","types","principles","changes","window"]