Guide for the phoenix-client TypeScript package — experiment lifecycle, tracer provider management, and test conventions.
68
52%
Does it follow best practices?
Impact
100%
1.23xAverage score across 3 eval scenarios
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./js/packages/phoenix-client/.agents/skills/phoenix-client-development/SKILL.mdTwo-phase experiment provider lifecycle
Two phases exist
100%
100%
Task projectName
100%
100%
Eval projectName
0%
100%
global: false on providers
100%
100%
No direct register() global
100%
100%
Task cleanup before eval start
100%
100%
Cleanup order: flush then shutdown
30%
100%
detach in finally
100%
100%
Creator owns cleanup
100%
100%
Notes explain lifecycle
100%
100%
Unit test mock shapes and tracing assertions
Test file location
100%
100%
register() mock shape
40%
100%
attachGlobalTracerProvider mock shape
100%
100%
forceFlush returns promise
100%
100%
shutdown returns promise
100%
100%
register() called twice
100%
100%
register() called with global: false
100%
100%
Task phase projectName
100%
100%
Eval phase projectName
100%
100%
detach called once per handle
100%
100%
attachGlobalTracerProvider per phase
100%
100%
Integration test conventions and sentinel provider pattern
integration- prefix
0%
100%
No vitest imports
100%
100%
Plain assert helper
100%
100%
No console.log
100%
100%
process.exit(1) on failure
100%
100%
trace.disable() cleanup
0%
100%
context.disable() cleanup
0%
100%
propagation.disable() cleanup
0%
100%
Sentinel provider present
100%
100%
Integration notes
100%
100%
924117e
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.