340 lines
9.7 KiB
Plaintext
340 lines
9.7 KiB
Plaintext
TAP version 13
|
|
# Subtest: Chat Pipeline — handleSingleModelChat decomposition
|
|
# Subtest: should define resolveModelOrError helper
|
|
ok 1 - should define resolveModelOrError helper
|
|
---
|
|
duration_ms: 2.870676
|
|
type: 'test'
|
|
...
|
|
# Subtest: should define checkPipelineGates helper
|
|
ok 2 - should define checkPipelineGates helper
|
|
---
|
|
duration_ms: 0.539959
|
|
type: 'test'
|
|
...
|
|
# Subtest: should define executeChatWithBreaker helper
|
|
ok 3 - should define executeChatWithBreaker helper
|
|
---
|
|
duration_ms: 0.540611
|
|
type: 'test'
|
|
...
|
|
# Subtest: should keep cost accounting in the core chat pipeline
|
|
ok 4 - should keep cost accounting in the core chat pipeline
|
|
---
|
|
duration_ms: 0.583888
|
|
type: 'test'
|
|
...
|
|
# Subtest: handleSingleModelChat should use resolveModelOrError
|
|
ok 5 - handleSingleModelChat should use resolveModelOrError
|
|
---
|
|
duration_ms: 0.395358
|
|
type: 'test'
|
|
...
|
|
# Subtest: handleSingleModelChat should use checkPipelineGates
|
|
ok 6 - handleSingleModelChat should use checkPipelineGates
|
|
---
|
|
duration_ms: 0.725771
|
|
type: 'test'
|
|
...
|
|
# Subtest: handleSingleModelChat should use executeChatWithBreaker
|
|
ok 7 - handleSingleModelChat should use executeChatWithBreaker
|
|
---
|
|
duration_ms: 0.384009
|
|
type: 'test'
|
|
...
|
|
# Subtest: chatCore should record cost for both non-streaming and streaming responses
|
|
ok 8 - chatCore should record cost for both non-streaming and streaming responses
|
|
---
|
|
duration_ms: 0.717301
|
|
type: 'test'
|
|
...
|
|
1..8
|
|
ok 1 - Chat Pipeline — handleSingleModelChat decomposition
|
|
---
|
|
duration_ms: 12.510313
|
|
type: 'suite'
|
|
...
|
|
# Subtest: Chat Pipeline — combo fallback support
|
|
# Subtest: should import handleComboChat
|
|
ok 1 - should import handleComboChat
|
|
---
|
|
duration_ms: 0.683569
|
|
type: 'test'
|
|
...
|
|
# Subtest: should delegate to handleSingleModelChat for each combo model
|
|
ok 2 - should delegate to handleSingleModelChat for each combo model
|
|
---
|
|
duration_ms: 0.903143
|
|
type: 'test'
|
|
...
|
|
# Subtest: should check model availability before attempting combo models
|
|
ok 3 - should check model availability before attempting combo models
|
|
---
|
|
duration_ms: 0.37494
|
|
type: 'test'
|
|
...
|
|
1..3
|
|
ok 2 - Chat Pipeline — combo fallback support
|
|
---
|
|
duration_ms: 2.526966
|
|
type: 'suite'
|
|
...
|
|
# Subtest: Chat Pipeline — circuit breaker integration
|
|
# Subtest: should import CircuitBreakerOpenError
|
|
ok 1 - should import CircuitBreakerOpenError
|
|
---
|
|
duration_ms: 0.500942
|
|
type: 'test'
|
|
...
|
|
# Subtest: should handle CircuitBreakerOpenError with retry-after
|
|
ok 2 - should handle CircuitBreakerOpenError with retry-after
|
|
---
|
|
duration_ms: 0.262275
|
|
type: 'test'
|
|
...
|
|
# Subtest: should reject requests when circuit is open
|
|
ok 3 - should reject requests when circuit is open
|
|
---
|
|
duration_ms: 0.399071
|
|
type: 'test'
|
|
...
|
|
1..3
|
|
ok 3 - Chat Pipeline — circuit breaker integration
|
|
---
|
|
duration_ms: 1.532005
|
|
type: 'suite'
|
|
...
|
|
# Subtest: DI Container — container.ts
|
|
# Subtest: should export a container singleton
|
|
ok 1 - should export a container singleton
|
|
---
|
|
duration_ms: 293.16418
|
|
type: 'test'
|
|
...
|
|
# Subtest: should register and resolve a custom service
|
|
ok 2 - should register and resolve a custom service
|
|
---
|
|
duration_ms: 9.047061
|
|
type: 'test'
|
|
...
|
|
# Subtest: should return cached singleton on repeated resolve
|
|
ok 3 - should return cached singleton on repeated resolve
|
|
---
|
|
duration_ms: 2.700355
|
|
type: 'test'
|
|
...
|
|
# Subtest: should throw on resolving unregistered service
|
|
ok 4 - should throw on resolving unregistered service
|
|
---
|
|
duration_ms: 3.280776
|
|
type: 'test'
|
|
...
|
|
# Subtest: should have default registrations
|
|
ok 5 - should have default registrations
|
|
---
|
|
duration_ms: 2.960963
|
|
type: 'test'
|
|
...
|
|
# Subtest: should support re-registration (overwrite)
|
|
ok 6 - should support re-registration (overwrite)
|
|
---
|
|
duration_ms: 2.683065
|
|
type: 'test'
|
|
...
|
|
1..6
|
|
ok 4 - DI Container — container.ts
|
|
---
|
|
duration_ms: 314.82733
|
|
type: 'suite'
|
|
...
|
|
# [Plugins] Registered "test-logger" (priority: 10, enabled: true)
|
|
# Subtest: Plugin Architecture — plugins/index.ts
|
|
# Subtest: should register and list plugins
|
|
ok 1 - should register and list plugins
|
|
---
|
|
duration_ms: 7.470741
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "low" (priority: 200, enabled: true)
|
|
# [Plugins] Registered "high" (priority: 1, enabled: true)
|
|
# [Plugins] Registered "mid" (priority: 50, enabled: true)
|
|
# Subtest: should sort plugins by priority
|
|
ok 2 - should sort plugins by priority
|
|
---
|
|
duration_ms: 3.51882
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "first" (priority: 1, enabled: true)
|
|
# [Plugins] Registered "second" (priority: 2, enabled: true)
|
|
# Subtest: should run onRequest hooks in order
|
|
ok 3 - should run onRequest hooks in order
|
|
---
|
|
duration_ms: 2.940782
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "blocker" (priority: 1, enabled: true)
|
|
# [Plugins] Registered "never-runs" (priority: 2, enabled: true)
|
|
# [Plugins] Request blocked by "blocker"
|
|
# Subtest: should support request blocking
|
|
ok 4 - should support request blocking
|
|
---
|
|
duration_ms: 3.293988
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "toggle-me" (priority: 100, enabled: true)
|
|
# Subtest: should enable/disable plugins at runtime
|
|
ok 5 - should enable/disable plugins at runtime
|
|
---
|
|
duration_ms: 2.784824
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "removable" (priority: 100, enabled: true)
|
|
# Subtest: should unregister plugins
|
|
ok 6 - should unregister plugins
|
|
---
|
|
duration_ms: 2.608295
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "response-modifier" (priority: 100, enabled: true)
|
|
# Subtest: should run onResponse hooks
|
|
ok 7 - should run onResponse hooks
|
|
---
|
|
duration_ms: 2.746361
|
|
type: 'test'
|
|
...
|
|
# [Plugins] Registered "error-handler" (priority: 100, enabled: true)
|
|
# [Plugins] Error recovered by "error-handler"
|
|
# Subtest: should run onError hooks and allow recovery
|
|
ok 8 - should run onError hooks and allow recovery
|
|
---
|
|
duration_ms: 2.899465
|
|
type: 'test'
|
|
...
|
|
# Subtest: should return null from onError if no recovery
|
|
ok 9 - should return null from onError if no recovery
|
|
---
|
|
duration_ms: 2.313171
|
|
type: 'test'
|
|
...
|
|
1..9
|
|
ok 5 - Plugin Architecture — plugins/index.ts
|
|
---
|
|
duration_ms: 31.770504
|
|
type: 'suite'
|
|
...
|
|
# Subtest: Prompt Template Versioning — prompts.ts module existence
|
|
# Subtest: prompts.ts should exist
|
|
ok 1 - prompts.ts should exist
|
|
---
|
|
duration_ms: 0.369635
|
|
type: 'test'
|
|
...
|
|
# Subtest: should export CRUD functions
|
|
ok 2 - should export CRUD functions
|
|
---
|
|
duration_ms: 0.391134
|
|
type: 'test'
|
|
...
|
|
# Subtest: should define PromptTemplate interface
|
|
ok 3 - should define PromptTemplate interface
|
|
---
|
|
duration_ms: 0.333598
|
|
type: 'test'
|
|
...
|
|
# Subtest: should use content hashing for deduplication
|
|
ok 4 - should use content hashing for deduplication
|
|
---
|
|
duration_ms: 0.31716
|
|
type: 'test'
|
|
...
|
|
1..4
|
|
ok 6 - Prompt Template Versioning — prompts.ts module existence
|
|
---
|
|
duration_ms: 1.752975
|
|
type: 'suite'
|
|
...
|
|
# Subtest: Eval Scheduler — scheduler.ts module existence
|
|
# Subtest: scheduler.ts should exist
|
|
ok 1 - scheduler.ts should exist
|
|
---
|
|
duration_ms: 0.347059
|
|
type: 'test'
|
|
...
|
|
# Subtest: should export scheduling functions
|
|
ok 2 - should export scheduling functions
|
|
---
|
|
duration_ms: 0.582836
|
|
type: 'test'
|
|
...
|
|
# Subtest: should define ScheduledEval and EvalRunResult types
|
|
ok 3 - should define ScheduledEval and EvalRunResult types
|
|
---
|
|
duration_ms: 0.459196
|
|
type: 'test'
|
|
...
|
|
# Subtest: should have pluggable output provider
|
|
ok 4 - should have pluggable output provider
|
|
---
|
|
duration_ms: 0.310267
|
|
type: 'test'
|
|
...
|
|
1..4
|
|
ok 7 - Eval Scheduler — scheduler.ts module existence
|
|
---
|
|
duration_ms: 1.961338
|
|
type: 'suite'
|
|
...
|
|
# Subtest: Migration System — files exist
|
|
# Subtest: migrationRunner.ts should exist
|
|
ok 1 - migrationRunner.ts should exist
|
|
---
|
|
duration_ms: 0.381312
|
|
type: 'test'
|
|
...
|
|
# Subtest: 001_initial_schema.sql should exist
|
|
ok 2 - 001_initial_schema.sql should exist
|
|
---
|
|
duration_ms: 0.248336
|
|
type: 'test'
|
|
...
|
|
# Subtest: core.ts should reference migration runner
|
|
ok 3 - core.ts should reference migration runner
|
|
---
|
|
duration_ms: 0.542947
|
|
type: 'test'
|
|
...
|
|
1..3
|
|
ok 8 - Migration System — files exist
|
|
---
|
|
duration_ms: 1.448447
|
|
type: 'suite'
|
|
...
|
|
# Subtest: CORS — centralized configuration
|
|
# Subtest: shared/utils/cors.ts should exist
|
|
ok 1 - shared/utils/cors.ts should exist
|
|
---
|
|
duration_ms: 0.374376
|
|
type: 'test'
|
|
...
|
|
# Subtest: should export CORS_HEADERS and CORS_ORIGIN
|
|
ok 2 - should export CORS_HEADERS and CORS_ORIGIN
|
|
---
|
|
duration_ms: 0.390035
|
|
type: 'test'
|
|
...
|
|
1..2
|
|
ok 9 - CORS — centralized configuration
|
|
---
|
|
duration_ms: 0.962465
|
|
type: 'suite'
|
|
...
|
|
1..9
|
|
# tests 42
|
|
# suites 9
|
|
# pass 42
|
|
# fail 0
|
|
# cancelled 0
|
|
# skipped 0
|
|
# todo 0
|
|
# duration_ms 869.387894
|