Typed service path inventory
This page inventories the current typed callpaths that can reach parser services or the TypeScript checker.
Source document:
docs/internal/typed-paths.md
Guard modelโ
All type-aware rule execution enters through explicit gates:
createTypedRule(...)short-circuits typed rules (meta.docs.requiresTypeChecking: true) when full type services are unavailable.- Optional typed flows in non-type-checked rules call
hasTypeServices(context)before callinggetTypedRuleServices(context). - Type-dependent helpers no longer discover typed services internally.
Core typed helpersโ
| Path | Typed dependency | Guard entry | Fallback behavior | Max expected expensive calls/file |
|---|---|---|---|---|
src/_internal/typed-rule.ts#getTypedRuleServices | parserServices.program, checker | hasTypeServices(context) or typed-rule create short-circuit | Throws if called without program | 1 (rule create path) |
Rule callpath inventoryโ
Rules that require type checking (meta.docs.requiresTypeChecking: true)โ
No current rules require type checking.
Rules with optional typed branch (meta.docs.requiresTypeChecking: false)โ
No current rules have optional typed branches.
Syntax-only rulesโ
src/rules/no-floating-observers.tssrc/rules/no-floating-child-processes.tssrc/rules/no-floating-timers.tssrc/rules/no-floating-workers.tssrc/rules/no-unmanaged-event-listeners.ts
Telemetry countersโ
Typed hot-path counters are not currently active because the first runtime-cleanup rule is syntax-only. Reintroduce telemetry here when a type-aware cleanup rule ships.