import assert from 'node:assert/strict'; import plugin, { runForceRecallContinuityAdapter, validateContinuityConfig, } from '../src/index.mjs'; const configResult = validateContinuityConfig(plugin.defaultConfig); assert.equal(configResult.ok, true); const smoke = runForceRecallContinuityAdapter({ config: plugin.defaultConfig, wrapperResult: { classification: 'long_task', planId: 'plan-smoke', currentTask: 'task-8', replyClosureState: 'completed', dispatchReceipt: null, }, autoChainPlanResult: { derivedAction: 'continue_task_9', dispatchMode: 'message_subagent', }, }); assert.equal(smoke.result.ok, false); assert.equal(smoke.result.reason, 'missing_auto_next_dispatch'); assert.match(smoke.block, /APPROVED_PLAN_CONTINUITY_GATE/); console.log('continuity.smoke.test.mjs PASS');