From 6717a3dfa6af1b6f89ad9d1527c3a608281a3bac Mon Sep 17 00:00:00 2001 From: whyour Date: Wed, 2 Sep 2026 04:06:13 +0800 Subject: [PATCH] fix(ql3): preserve legacy running instances --- .../reconciliation/planning/inventory.ts | 4 +++- .../test/reconciliationInventory.test.cjs | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 packages/ql3-local-owner-cli/test/reconciliationInventory.test.cjs diff --git a/packages/ql3-local-owner-cli/src/deployment/reconciliation/planning/inventory.ts b/packages/ql3-local-owner-cli/src/deployment/reconciliation/planning/inventory.ts index 4c00958d..3cff7251 100644 --- a/packages/ql3-local-owner-cli/src/deployment/reconciliation/planning/inventory.ts +++ b/packages/ql3-local-owner-cli/src/deployment/reconciliation/planning/inventory.ts @@ -86,7 +86,9 @@ function legacyDomain(name: string): LocalReconciliationPlanDomain { if (['Dependences', 'Dependencies', 'Apps'].includes(name)) { return 'plugin_package'; } - if (['CrontabStats', 'Logs'].includes(name)) return 'run_history'; + if (['CrontabStats', 'Logs', 'RunningInstances'].includes(name)) { + return 'run_history'; + } return 'unknown'; } diff --git a/packages/ql3-local-owner-cli/test/reconciliationInventory.test.cjs b/packages/ql3-local-owner-cli/test/reconciliationInventory.test.cjs new file mode 100644 index 00000000..278a2e50 --- /dev/null +++ b/packages/ql3-local-owner-cli/test/reconciliationInventory.test.cjs @@ -0,0 +1,17 @@ +const assert = require('node:assert/strict'); +const { test } = require('node:test'); + +const { + classifyLocalReconciliationFact, +} = require('../dist/deployment/reconciliation/planning/inventory.js'); + +test('classifies Legacy runtime instances as preserved run history', () => { + assert.equal( + classifyLocalReconciliationFact('legacy', 'RunningInstances'), + 'run_history', + ); + assert.equal( + classifyLocalReconciliationFact('legacy', 'PluginOwnedState'), + 'unknown', + ); +});