원클릭으로
kea-atomic-selectors
TypeScript Kea framework - adding atomic signal selectors and logic.selectorHealth
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
TypeScript Kea framework - adding atomic signal selectors and logic.selectorHealth
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Frontend design and UI component implementation patterns.
Go agent patterns for exploring, editing, and validating Go codebases.
TypeScript library framework-wiring patterns for adding features to existing codebases.
| name | kea-atomic-selectors |
| description | TypeScript Kea framework - adding atomic signal selectors and logic.selectorHealth |
| args | [] |
When a task asks you to add atomic/signal selectors to Kea, the implementation is not complete until you modify the existing Kea source files to wire the feature in. Do not leave the code in standalone files.
src/kea/build.ts
BuiltLogic object is constructed in getBuiltLogic() around lines 88-119.mount, unmount, isMounted) are attached, attach selectorHealth.selectorHealth must be a method on the logic instance that returns health metadata for every selector in this logic.src/core/selectors.ts
src/kea/build.ts.src/kea/context.ts
atomicSelectors option from resetContext({ atomicSelectors: true }).src/kea/build.ts and src/core/selectors.ts can decide whether to enable atomic tracking.src/index.ts
AtomicSelectorHealth, AtomicSelectorEngine).logic.selectorHealth() exists on mounted BuiltLogic instances.logic.selectorHealth() returns { selectors: Record<name, { dependencies, dependents, evaluations, dirtyCause }>, topologicalOrder: string[] }.user.name, not just user.resetContext({ atomicSelectors: true }) was used.rollup.config.js, tsconfig.json, or build tooling unless the task explicitly requires it. If npm test fails inside the test:tsd or build step, run the focused jest test file instead: npx jest test/jest/atomic.js (or the relevant test file). Only run the full npm test after the focused atomic tests pass.const { kea } = require('./src/index.ts') // or built output
const logic = kea({ selectors: { userName: [(s) => s.user, (u) => u.name]] } })
logic.mount()
console.log(typeof logic.selectorHealth) // must be 'function'
If logic.selectorHealth is undefined, you have not wired it into src/kea/build.ts. Fix that before finishing.