[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M74ESP2D4DMDRK2BGE2F79GF":3,"skill-same:01M74ESP2D4DMDRK2BGE2F79GF":56},{"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":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":26,"commitSha":27,"skillDirectory":28,"forksCount":29,"repositoryHtmlUrl":30,"repositoryHomepageUrl":31,"ownerHtmlUrl":32,"ownerBlogUrl":33,"ownerDescription":34,"updatedAt":35,"install":36,"resources":49},"01M74ESP2D4DMDRK2BGE2F79GF","verify-root-cause-before-claiming",null,"Before telling anyone the CAUSE of a failure, verify it against the data, not against the symptom. A plausible unverified cause hurts trust more than saying 'I will confirm it shortly'. Triggers when writing 'fallo porque' or 'se debe a'.","CarlosCaPe\u002Foctorato","CarlosCaPe","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F39838249?v=4","01M72WXX4ZRR8MBH1EP1QND2FQ","dataqbs","01M72WXX5NA7YCKRSJ54GW1GQ8",18,"MIT","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fverify-root-cause-before-claiming\u002FSKILL.md",[],[],"2026-11-11 15:11:14",false,"---\nname: verify-root-cause-before-claiming\ndescription: \"Before telling anyone the CAUSE of a failure, verify it against the data, not against the symptom. A plausible unverified cause hurts trust more than saying 'I will confirm it shortly'. Triggers when writing 'fallo porque' or 'se debe a'.\"\nmetadata:\n  type: feedback\n---\n\n# verify-root-cause-before-claiming\n\n**Why:** In one session I drafted a client message explaining a permission-denied\nfailure as \"the grant landed after your run, so it wasn't there yet\". The operator\nasked \"are we sure?\" before sending. Checking the grant history showed the grant had\nexisted 12 minutes BEFORE the run. The real cause was different (UNLOGGED staging\ntables get recreated by each schema apply, dropping their grants). My causal claim was\nplausible, confident, and wrong. Had it shipped, the stakeholder would have retried on\na false premise and lost trust when it failed again.\n\n**The trap:** verifying the SYMPTOM (the grant is applied now, the build is green, the\nrow count is N) and then asserting a CAUSE (it failed because of timing) that you never\nchecked against the data. The symptom is real; the causal story is a guess wearing the\nsymptom's credibility.\n\n## How to apply\n\nBefore any outward-facing \"it failed because X\" \u002F \"the reason is Y\":\n\n1. **Separate what you verified from what you inferred.** \"The grant is applied\" is\n   verified. \"It wasn't applied at run time\" is an inference. Only the first earns a\n   flat claim.\n2. **Pull the timeline \u002F the history that the cause depends on.** If the claim is about\n   timing, get the actual timestamps of both events. If it's about a missing object,\n   confirm the object was missing AT the moment of failure, not just now.\n3. **Try to falsify your own cause once.** Ask \"what would make this explanation\n   wrong?\" and check that specific thing. Here it was \"did the grant already exist\n   before the run?\" — one query would have caught it.\n4. **If you cannot verify the cause, say so.** \"The fix is applied; the exact root cause\n   I'm still confirming\" is honest and costs far less trust than a confident wrong\n   story. Ship the verified part, hedge the unverified part explicitly.\n5. **Welcome the \"are we sure?\" check.** When the operator or a reviewer pauses you\n   before an outward-facing claim, that is the cheapest possible catch. Treat it as a\n   gift, re-verify, do not defend the draft.\n\n## Companion skills\n\n- `investigate-before-asking` — investigate before escalating; this is its outward-facing twin (investigate before *claiming*).\n- `source-citation-tagging` — every fact references where it came from; a cause with no source is a guess.\n- `incident-capture` — when the verified root cause is itself worth recording.\n","# verify-root-cause-before-claiming\n\n**Why:** In one session I drafted a client message explaining a permission-denied\nfailure as \"the grant landed after your run, so it wasn't there yet\". The operator\nasked \"are we sure?\" before sending. Checking the grant history showed the grant had\nexisted 12 minutes BEFORE the run. The real cause was different (UNLOGGED staging\ntables get recreated by each schema apply, dropping their grants). My causal claim was\nplausible, confident, and wrong. Had it shipped, the stakeholder would have retried on\na false premise and lost trust when it failed again.\n\n**The trap:** verifying the SYMPTOM (the grant is applied now, the build is green, the\nrow count is N) and then asserting a CAUSE (it failed because of timing) that you never\nchecked against the data. The symptom is real; the causal story is a guess wearing the\nsymptom's credibility.\n\n## How to apply\n\nBefore any outward-facing \"it failed because X\" \u002F \"the reason is Y\":\n\n1. **Separate what you verified from what you inferred.** \"The grant is applied\" is\n   verified. \"It wasn't applied at run time\" is an inference. Only the first earns a\n   flat claim.\n2. **Pull the timeline \u002F the history that the cause depends on.** If the claim is about\n   timing, get the actual timestamps of both events. If it's about a missing object,\n   confirm the object was missing AT the moment of failure, not just now.\n3. **Try to falsify your own cause once.** Ask \"what would make this explanation\n   wrong?\" and check that specific thing. Here it was \"did the grant already exist\n   before the run?\" — one query would have caught it.\n4. **If you cannot verify the cause, say so.** \"The fix is applied; the exact root cause\n   I'm still confirming\" is honest and costs far less trust than a confident wrong\n   story. Ship the verified part, hedge the unverified part explicitly.\n5. **Welcome the \"are we sure?\" check.** When the operator or a reviewer pauses you\n   before an outward-facing claim, that is the cheapest possible catch. Treat it as a\n   gift, re-verify, do not defend the draft.\n\n## Companion skills\n\n- `investigate-before-asking` — investigate before escalating; this is its outward-facing twin (investigate before *claiming*).\n- `source-citation-tagging` — every fact references where it came from; a cause with no source is a guess.\n- `incident-capture` — when the verified root cause is itself worth recording.\n",{"name":5,"metadata":24,"description":7},{"type":25},"feedback","master","b4414608cd5a3f87d1525b518f1c6add8363540d","skills\u002Fverify-root-cause-before-claiming",6,"https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato","https:\u002F\u002Fwww.dataqbs.com\u002Foctorato","https:\u002F\u002Fgithub.com\u002FCarlosCaPe","www.dataqbs.com"," AI-powered data engineering\r\n& consulting\r\n\r\nWe build data platforms that turn complexity into clarity — from cloud architecture and ETL pipelines to AI-driven","2026-11-14 00:21:00",{"source":8,"skillName":5,"commands":37,"prompt":47,"zipAvailable":48},[38,41,44],{"tool":39,"command":40},"npx","npx skills add CarlosCaPe\u002Foctorato --skill verify-root-cause-before-claiming",{"tool":42,"command":43},"bunx","bunx skills add CarlosCaPe\u002Foctorato --skill verify-root-cause-before-claiming",{"tool":45,"command":46},"pnpm","pnpm dlx skills add CarlosCaPe\u002Foctorato --skill verify-root-cause-before-claiming","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fverify-root-cause-before-claiming\u002FSKILL.md",true,[50],{"path":51,"resourceType":52,"resourceTypeDesc":53,"sizeBytes":54,"sourceHtmlUrl":55},"skill.json","REFERENCE","参考文档",370,"https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fverify-root-cause-before-claiming\u002Fskill.json",[57,66,74,81,89,97],{"skillNo":58,"name":59,"nameZh":6,"description":60,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":61,"licenseFileUrl":62,"sourceHtmlUrl":63,"categories":64,"keywords":65,"publishedAt":19},"01M74EVAA4A4B4AKR5TT732GP4","yeet","Use only when the user explicitly asks to stage, commit, push, and open a GitHub pull request in one flow using the GitHub CLI (`gh`).","Apache-2.0","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fyeet\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fyeet\u002FSKILL.md",[],[],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":61,"licenseFileUrl":70,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M74EV4WMRDKP2NQS4YWR8PXH","wrangler","Cloudflare Workers CLI for deploying, developing, and managing Workers, KV, R2, D1, Vectorize, Hyperdrive, Workers AI, Containers, Queues, Workflows, Pipelines, and Secrets Store. Load before running wrangler commands to ensure correct syntax and best practices. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fwrangler\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fwrangler\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M74EV05MHTXKEXD4B2QJEYTF","workspace-skill-discovery","Discover and include ALL skills across the workspace — not just global ones. Use at the start of every session or when the user asks about available skills. Ensures project-level skills (under .claude\u002Fskills\u002F or skills\u002F in any repo) are never missed.","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fworkspace-skill-discovery\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":61,"licenseFileUrl":85,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M74ETV78525B4VP2F28Z6NRD","workers-best-practices","Reviews and authors Cloudflare Workers code against production best practices. Load when writing new Workers, reviewing Worker code, configuring wrangler.jsonc, or checking for common Workers anti-patterns (streaming, floating promises, global state, secrets, bindings, observability). Biases towards retrieval from Cloudflare docs over pre-trained knowledge.","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fworkers-best-practices\u002FLICENSE","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fworkers-best-practices\u002FSKILL.md",[],[],{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":61,"licenseFileUrl":93,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":19},"01M74ETR75NF67WGVEN7288ACV","winui-app","Create, build and design WinUI 3 desktop apps with C# and the Windows App SDK following Microsoft's official guidance and CommunityToolkit. Covers XAML, navigation, theming, accessibility and deployment.","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fwinui-app\u002FLICENSE.txt","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fwinui-app\u002FSKILL.md",[],[],{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":103,"publishedAt":19},"01M74ETJFRNPPNSQZ36C6HD6CW","windows-brain-script-portability","Scripts in ~\u002F.claude\u002Fscripts\u002F that run on a Windows brain: use the python3.cmd shim and not bare python3, and reconfigure stdout to UTF-8 if you print symbols. Use it when writing a brain script or triaging a Windows-only crash.","https:\u002F\u002Fgithub.com\u002FCarlosCaPe\u002Foctorato\u002Fblob\u002Fmaster\u002Fskills\u002Fwindows-brain-script-portability\u002FSKILL.md",[],[]]