[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M78F0QJ7FS7FJRHEDJYN2YPF":3,"skill-same:01M78F0QJ7FS7FJRHEDJYN2YPF":65},{"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":24,"commitSha":25,"skillDirectory":26,"forksCount":27,"repositoryHtmlUrl":28,"repositoryHomepageUrl":6,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":31,"updatedAt":32,"install":33,"resources":46},"01M78F0QJ7FS7FJRHEDJYN2YPF","testing",null,"Choose and implement proportionate tests for observable behavior, important failures and integration boundaries.","kok-o\u002Fcontextos-agents","kok-o","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F173567992?v=4","01M78EV59TFZZ32P2FNN27BHW5","Nurkhan Esenbek","01M78EV5AFG9E8PEC10N3W7JNH",10,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: testing\ndescription: Choose and implement proportionate tests for observable behavior,\n  important failures and integration boundaries.\n---\n\n# testing\n\n## Overview\n\nChoose and implement proportionate tests for observable behavior, important failures and integration boundaries. Match guidance to the actual task and project; this document does not implement an automatic enforcer.\n\n## When to Use\n\nThe task adds tests, fixes a regression or needs verification evidence. Reuse the project's language and runner rather than forcing a JavaScript testing stack.\n\n## Rules & Patterns\n\nIdentify the behavior that can fail and the cheapest reliable layer that observes it. Select unit, contract, integration or browser checks according to risk; no fixed percentage pyramid or whole-suite time limit applies to every project.\n\nPrefer assertions on behavior and relevant failures. Avoid tests that merely repeat an implementation, count instruction phrases or replace the behavior under test with a stub.\n\nUse real small components where practical. Mock a boundary when isolation or unavailable infrastructure warrants it, and state what that mock does not verify. Dependency injection and controllable clocks can make nondeterministic cases testable.\n\nKeep state isolated and readiness explicit. Use supported retrying assertions or events instead of arbitrary sleeps. Choose user-facing locators where suitable; a stable test ID or scoped selector can be appropriate when semantics do not uniquely identify the target.\n\nRun the relevant checks and report failures, skips and environment limits. Coverage describes executed code, not proof of correctness; TDD is an available technique rather than mandatory ceremony for every change.\n\n## Code Examples\n\nFor an authorization fix, verify an allowed caller and a denied caller through the real boundary. For a pure calculation, use focused cases rather than installing a browser runner. A mock API test does not establish real persistence.\n\nSee [EXAMPLES.md](EXAMPLES.md) for scoped scenarios and evidence boundaries.\n\n## Validation Checklist\n\n- [ ] Confirm that the test fails for the targeted broken behavior when feasible.\n- [ ] Distinguish unit, integration, simulated and real-browser evidence.\n\n## Common Mistakes\n\nImplementation-mirroring tests; arbitrary coverage goals; substituting a mock for the claimed integration; omitting a meaningful failure case.\n\n## Integration Notes\n\nOptional companion guidance: engineering-workflow, webapp-testing. Use it only when relevant and available; the skill does not install tools or authorize external actions.\n","# testing\n\n## Overview\n\nChoose and implement proportionate tests for observable behavior, important failures and integration boundaries. Match guidance to the actual task and project; this document does not implement an automatic enforcer.\n\n## When to Use\n\nThe task adds tests, fixes a regression or needs verification evidence. Reuse the project's language and runner rather than forcing a JavaScript testing stack.\n\n## Rules & Patterns\n\nIdentify the behavior that can fail and the cheapest reliable layer that observes it. Select unit, contract, integration or browser checks according to risk; no fixed percentage pyramid or whole-suite time limit applies to every project.\n\nPrefer assertions on behavior and relevant failures. Avoid tests that merely repeat an implementation, count instruction phrases or replace the behavior under test with a stub.\n\nUse real small components where practical. Mock a boundary when isolation or unavailable infrastructure warrants it, and state what that mock does not verify. Dependency injection and controllable clocks can make nondeterministic cases testable.\n\nKeep state isolated and readiness explicit. Use supported retrying assertions or events instead of arbitrary sleeps. Choose user-facing locators where suitable; a stable test ID or scoped selector can be appropriate when semantics do not uniquely identify the target.\n\nRun the relevant checks and report failures, skips and environment limits. Coverage describes executed code, not proof of correctness; TDD is an available technique rather than mandatory ceremony for every change.\n\n## Code Examples\n\nFor an authorization fix, verify an allowed caller and a denied caller through the real boundary. For a pure calculation, use focused cases rather than installing a browser runner. A mock API test does not establish real persistence.\n\nSee [EXAMPLES.md](EXAMPLES.md) for scoped scenarios and evidence boundaries.\n\n## Validation Checklist\n\n- [ ] Confirm that the test fails for the targeted broken behavior when feasible.\n- [ ] Distinguish unit, integration, simulated and real-browser evidence.\n\n## Common Mistakes\n\nImplementation-mirroring tests; arbitrary coverage goals; substituting a mock for the claimed integration; omitting a meaningful failure case.\n\n## Integration Notes\n\nOptional companion guidance: engineering-workflow, webapp-testing. Use it only when relevant and available; the skill does not install tools or authorize external actions.\n",{"name":5,"description":7},"main","7fb8666fa73d9b8f9707a47505553f0f1af474ea","catalog\u002Fskills\u002Ftesting",1,"https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents","https:\u002F\u002Fgithub.com\u002Fkok-o","nurkhan.space","Software engineer focused on AI tooling and ML infrastructure. \r\n\r\n","2026-11-11 02:56:50",{"source":8,"skillName":5,"commands":34,"prompt":44,"zipAvailable":45},[35,38,41],{"tool":36,"command":37},"npx","npx skills add kok-o\u002Fcontextos-agents --skill testing",{"tool":39,"command":40},"bunx","bunx skills add kok-o\u002Fcontextos-agents --skill testing",{"tool":42,"command":43},"pnpm","pnpm dlx skills add kok-o\u002Fcontextos-agents --skill testing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002FSKILL.md",true,[47,53,57,61],{"path":48,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":51,"sourceHtmlUrl":52},"EXAMPLES.md","REFERENCE","参考文档",617,"https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002FEXAMPLES.md",{"path":54,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":55,"sourceHtmlUrl":56},"skill.yaml",396,"https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002Fskill.yaml",{"path":58,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":59,"sourceHtmlUrl":60},"TROUBLESHOOTING.md",316,"https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002FTROUBLESHOOTING.md",{"path":62,"resourceType":49,"resourceTypeDesc":50,"sizeBytes":63,"sourceHtmlUrl":64},"VALIDATION.json",320,"https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fcatalog\u002Fskills\u002Ftesting\u002FVALIDATION.json",[66,73,80,87,94,100],{"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":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":19},"01M78F25RVZVK4KYXZZKW42DZH","scoped-frontend","Frontend component design and React guidelines","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fadapter-contracts\u002F.agents\u002Fcore\u002Fskills\u002Fscoped-frontend\u002FSKILL.md",[],[],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":77,"categories":78,"keywords":79,"publishedAt":19},"01M78F23169Y0R4CB819166JZP","scoped-backend","Backend service architecture and API endpoints","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fadapter-contracts\u002F.agents\u002Fcore\u002Fskills\u002Fscoped-backend\u002FSKILL.md",[],[],{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":19},"01M78F1ZSMZAMY7S2ECNB065QR","engineering-workflow","Core software engineering lifecycle workflow","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fadapter-contracts\u002F.agents\u002Fcore\u002Fskills\u002Fengineering-workflow\u002FSKILL.md",[],[],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":19},"01M78F1WWD36GB27TAS4TSM3MJ","team-auth","ContextOS skill for team-auth","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fscripts\u002Freadme-gif\u002Fevidence\u002Fexports\u002Fcodex\u002FSKILL.md",[],[],{"skillNo":95,"name":96,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":99,"publishedAt":19},"01M78F1TEZPGE4NCTPZRC7Q1KK","claude","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fscripts\u002Freadme-gif\u002Fevidence\u002Fexports\u002Fclaude\u002FSKILL.md",[],[],{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":19},"01M78F1Q8JG229RWD6ESVKT9R9","team-order","Team conventions for createOrder and item name normalization in src\u002Forder.ts.","https:\u002F\u002Fgithub.com\u002Fkok-o\u002Fcontextos-agents\u002Fblob\u002Fmain\u002Fexamples\u002Freadme-demo\u002Fteam-order\u002FSKILL.md",[],[]]