- TR-069 CWMP state machine hardening (14 phases): shared event utility, multi-event routing, GPN circuit breaker, IdleState GPN guard, expanded GPN fault codes, CriticalReadsState, ConfigEval GPN guard, task queue race condition fix, explicit error handling, terminal states (OperationalState/PartialOperationalState), consolidated reclassify, crash pattern detection, removed enqueueImmediate, state flow wiring - Fix SOAP Fault not processed by state machine (soap-env:Fault detection) - Fix GPN circuit breaker not persisting after session drops - Fix CriticalReadsState GPV response parsing (xsi:type normalization) - Fix CriticalReadsState not processing GPV response values - Skip SPV when device is already compliant (ProvisioningCode check) - Add Device.DeviceInfo.ModelName to critical reads GPV - Fix TypeError on DeviceDetail parameters view (null guards) - Log empty 204 responses in exchange trace UI - TR-181 catalog: type corrections and new entries (+6640 lines) - SequenceViewer: replace session-nav buttons with compact dropdown select - SequenceViewer: fix CPE/ACS lifeline headers wrapping to 2 lines - Add 20 unit tests for state machine fixes (SOAP Fault, GPN circuit breaker, CriticalReads, stale session, ConfigEval/ComplianceUpdate skips) Generated with [Continue](https://continue.dev) Co-Authored-By: Continue <noreply@continue.dev>
87 lines
3.7 KiB
TypeScript
87 lines
3.7 KiB
TypeScript
/* eslint-disable prettier/prettier */
|
|
import type { routes } from './index.ts'
|
|
|
|
export interface ApiDefinition {
|
|
cwmp: typeof routes['cwmp']
|
|
health: {
|
|
checklife: typeof routes['health.checklife']
|
|
checkservice: typeof routes['health.checkservice']
|
|
checkTr069Exchanges: typeof routes['health.check_tr_069_exchanges']
|
|
}
|
|
devices: {
|
|
index: typeof routes['devices.index']
|
|
criteriaValues: typeof routes['devices.criteria_values']
|
|
show: typeof routes['devices.show']
|
|
destroy: typeof routes['devices.destroy']
|
|
executeCommand: typeof routes['devices.execute_command']
|
|
refresh: typeof routes['devices.refresh']
|
|
}
|
|
references: {
|
|
index: typeof routes['references.index']
|
|
show: typeof routes['references.show']
|
|
resolveAll: typeof routes['references.resolve_all']
|
|
resolveOne: typeof routes['references.resolve_one']
|
|
}
|
|
commands: {
|
|
index: typeof routes['commands.index']
|
|
show: typeof routes['commands.show']
|
|
store: typeof routes['commands.store']
|
|
page: typeof routes['commands.page']
|
|
}
|
|
tr069Trace: {
|
|
index: typeof routes['tr_069_trace.index']
|
|
store: typeof routes['tr_069_trace.store']
|
|
rawConfig: typeof routes['tr_069_trace.raw_config']
|
|
saveRawConfig: typeof routes['tr_069_trace.save_raw_config']
|
|
destroy: typeof routes['tr_069_trace.destroy']
|
|
showLog: typeof routes['tr_069_trace.show_log']
|
|
}
|
|
exchange: {
|
|
index: typeof routes['exchange.index']
|
|
destroy: typeof routes['exchange.destroy']
|
|
stream: typeof routes['exchange.stream']
|
|
}
|
|
configurationsV1: {
|
|
index: typeof routes['configurations_v_1.index']
|
|
listTags: typeof routes['configurations_v_1.list_tags']
|
|
store: typeof routes['configurations_v_1.store']
|
|
show: typeof routes['configurations_v_1.show']
|
|
update: typeof routes['configurations_v_1.update']
|
|
destroy: typeof routes['configurations_v_1.destroy']
|
|
toggleEnabled: typeof routes['configurations_v_1.toggle_enabled']
|
|
manageTags: typeof routes['configurations_v_1.manage_tags']
|
|
history: typeof routes['configurations_v_1.history']
|
|
dryRun: typeof routes['configurations_v_1.dry_run']
|
|
compliance: typeof routes['configurations_v_1.compliance']
|
|
}
|
|
firmwareCatalog: {
|
|
index: typeof routes['firmware_catalog.index']
|
|
listEntries: typeof routes['firmware_catalog.list_entries']
|
|
showEntry: typeof routes['firmware_catalog.show_entry']
|
|
listRoutes: typeof routes['firmware_catalog.list_routes']
|
|
createEntry: typeof routes['firmware_catalog.create_entry']
|
|
updateEntry: typeof routes['firmware_catalog.update_entry']
|
|
deleteEntry: typeof routes['firmware_catalog.delete_entry']
|
|
createRoute: typeof routes['firmware_catalog.create_route']
|
|
updateRoute: typeof routes['firmware_catalog.update_route']
|
|
deleteRoute: typeof routes['firmware_catalog.delete_route']
|
|
}
|
|
pages: {
|
|
home: typeof routes['pages.home']
|
|
deviceDetail: typeof routes['pages.device_detail']
|
|
refreshDevice: typeof routes['pages.refresh_device']
|
|
getModel: typeof routes['pages.get_model']
|
|
commandsFleet: typeof routes['pages.commands_fleet']
|
|
tr069Trace: typeof routes['pages.tr_069_trace']
|
|
storeFleetDevices: typeof routes['pages.store_fleet_devices']
|
|
storeFleetCommand: typeof routes['pages.store_fleet_command']
|
|
configurationsList: typeof routes['pages.configurations_list']
|
|
configurationCreate: typeof routes['pages.configuration_create']
|
|
configurationEdit: typeof routes['pages.configuration_edit']
|
|
configurationDetail: typeof routes['pages.configuration_detail']
|
|
firmwareCatalog: typeof routes['pages.firmware_catalog']
|
|
firmwareCatalogCreate: typeof routes['pages.firmware_catalog_create']
|
|
firmwareCatalogEdit: typeof routes['pages.firmware_catalog_edit']
|
|
}
|
|
}
|