refactor: remove legacy reflexes backward-compat code
BREAKING CHANGE: NerveConfig no longer has 'reflexes' field. SenseReflexConfig/ReflexConfig types removed. Config with top-level 'reflexes' array now errors instead of migrating. Use sense-level 'interval' and 'on' fields instead. - Remove reflexes from NerveConfig type - Remove legacy parsing, deprecation warning, buildReflexesFromSenses - Simplify reflex-scheduler to only read sense-level config - Rename senseTriggerLabelsWithFallback → senseTriggerLabels - Delete all legacy reflexes test cases - -639/+114 lines Fixes #199
This commit is contained in:
@@ -187,7 +187,6 @@ function defaultTestConfig(withNoopWorkflow: boolean): NerveConfig {
|
||||
on: [],
|
||||
},
|
||||
},
|
||||
reflexes: [],
|
||||
workflows: {
|
||||
echo: { concurrency: 1, overflow: "queue" as const, maxQueue: 10 },
|
||||
...(withNoopWorkflow ? { noop: { concurrency: 1, overflow: "drop" as const } } : {}),
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
type SenseInfo,
|
||||
isPlainRecord,
|
||||
parseNerveConfig,
|
||||
senseTriggerLabelsWithFallback,
|
||||
senseTriggerLabels,
|
||||
} from "@uncaged/nerve-core";
|
||||
import { defineCommand } from "citty";
|
||||
|
||||
@@ -69,13 +69,13 @@ export function sensesFromConfig(configPath: string): SenseInfo[] {
|
||||
}
|
||||
const result = parseNerveConfig(raw);
|
||||
if (!result.ok) return [];
|
||||
const { senses, reflexes } = result.value;
|
||||
const { senses } = result.value;
|
||||
return Object.entries(senses).map(([name, cfg]) => ({
|
||||
name,
|
||||
group: cfg.group,
|
||||
throttle: cfg.throttle,
|
||||
timeout: cfg.timeout,
|
||||
triggers: senseTriggerLabelsWithFallback(name, senses, reflexes),
|
||||
triggers: senseTriggerLabels(name, senses),
|
||||
lastSignalTimestamp: null,
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -30,7 +30,9 @@ export const validateCommand = defineCommand({
|
||||
|
||||
const config = result.value;
|
||||
const senseCount = Object.keys(config.senses).length;
|
||||
const triggerScheduleCount = config.reflexes.length;
|
||||
const triggerScheduleCount = Object.values(config.senses).filter(
|
||||
(s) => s.interval !== null || s.on.length > 0,
|
||||
).length;
|
||||
const workflowCount = Object.keys(config.workflows).length;
|
||||
|
||||
process.stdout.write(
|
||||
|
||||
Reference in New Issue
Block a user