- 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>
185 lines
13 KiB
TypeScript
185 lines
13 KiB
TypeScript
import '@adonisjs/core/types/http'
|
|
|
|
type ParamValue = string | number | bigint | boolean
|
|
|
|
export type ScannedRoutes = {
|
|
ALL: {
|
|
'cwmp': { paramsTuple?: []; params?: {} }
|
|
'health.checklife': { paramsTuple?: []; params?: {} }
|
|
'health.checkservice': { paramsTuple?: []; params?: {} }
|
|
'health.check_tr_069_exchanges': { paramsTuple?: []; params?: {} }
|
|
'devices.index': { paramsTuple?: []; params?: {} }
|
|
'devices.criteria_values': { paramsTuple?: []; params?: {} }
|
|
'devices.show': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'devices.destroy': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'devices.execute_command': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'devices.refresh': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.index': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.show': { paramsTuple: [ParamValue,ParamValue]; params: {'identifier': ParamValue,'provider': ParamValue} }
|
|
'references.resolve_all': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.resolve_one': { paramsTuple: [ParamValue,ParamValue]; params: {'identifier': ParamValue,'provider': ParamValue} }
|
|
'commands.index': { paramsTuple?: []; params?: {} }
|
|
'commands.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'commands.store': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.index': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.store': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.raw_config': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.save_raw_config': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.destroy': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'tr_069_trace.show_log': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'exchange.index': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'exchange.destroy': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'exchange.stream': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'configurations_v_1.index': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.list_tags': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.store': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.update': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.destroy': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.toggle_enabled': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.manage_tags': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.history': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.dry_run': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.compliance': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.index': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.list_entries': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.show_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.list_routes': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.create_entry': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.update_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.delete_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.create_route': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.update_route': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.delete_route': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.home': { paramsTuple?: []; params?: {} }
|
|
'pages.device_detail': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'pages.refresh_device': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'pages.get_model': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'commands.page': { paramsTuple?: []; params?: {} }
|
|
'pages.commands_fleet': { paramsTuple?: []; params?: {} }
|
|
'pages.tr_069_trace': { paramsTuple?: []; params?: {} }
|
|
'pages.store_fleet_devices': { paramsTuple?: []; params?: {} }
|
|
'pages.store_fleet_command': { paramsTuple?: []; params?: {} }
|
|
'pages.configurations_list': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_create': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.configuration_detail': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.firmware_catalog': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_create': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
POST: {
|
|
'cwmp': { paramsTuple?: []; params?: {} }
|
|
'devices.execute_command': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'devices.refresh': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.resolve_all': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.resolve_one': { paramsTuple: [ParamValue,ParamValue]; params: {'identifier': ParamValue,'provider': ParamValue} }
|
|
'commands.store': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.store': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.store': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.dry_run': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.create_entry': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.create_route': { paramsTuple?: []; params?: {} }
|
|
'pages.refresh_device': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'pages.get_model': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'pages.store_fleet_devices': { paramsTuple?: []; params?: {} }
|
|
'pages.store_fleet_command': { paramsTuple?: []; params?: {} }
|
|
}
|
|
GET: {
|
|
'health.checklife': { paramsTuple?: []; params?: {} }
|
|
'health.checkservice': { paramsTuple?: []; params?: {} }
|
|
'health.check_tr_069_exchanges': { paramsTuple?: []; params?: {} }
|
|
'devices.index': { paramsTuple?: []; params?: {} }
|
|
'devices.criteria_values': { paramsTuple?: []; params?: {} }
|
|
'devices.show': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.index': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.show': { paramsTuple: [ParamValue,ParamValue]; params: {'identifier': ParamValue,'provider': ParamValue} }
|
|
'commands.index': { paramsTuple?: []; params?: {} }
|
|
'commands.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'tr_069_trace.index': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.raw_config': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.show_log': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'exchange.index': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'exchange.stream': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'configurations_v_1.index': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.list_tags': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.history': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.compliance': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.index': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.list_entries': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.show_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.list_routes': { paramsTuple?: []; params?: {} }
|
|
'pages.home': { paramsTuple?: []; params?: {} }
|
|
'pages.device_detail': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'commands.page': { paramsTuple?: []; params?: {} }
|
|
'pages.commands_fleet': { paramsTuple?: []; params?: {} }
|
|
'pages.tr_069_trace': { paramsTuple?: []; params?: {} }
|
|
'pages.configurations_list': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_create': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.configuration_detail': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.firmware_catalog': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_create': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
HEAD: {
|
|
'health.checklife': { paramsTuple?: []; params?: {} }
|
|
'health.checkservice': { paramsTuple?: []; params?: {} }
|
|
'health.check_tr_069_exchanges': { paramsTuple?: []; params?: {} }
|
|
'devices.index': { paramsTuple?: []; params?: {} }
|
|
'devices.criteria_values': { paramsTuple?: []; params?: {} }
|
|
'devices.show': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.index': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'references.show': { paramsTuple: [ParamValue,ParamValue]; params: {'identifier': ParamValue,'provider': ParamValue} }
|
|
'commands.index': { paramsTuple?: []; params?: {} }
|
|
'commands.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'tr_069_trace.index': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.raw_config': { paramsTuple?: []; params?: {} }
|
|
'tr_069_trace.show_log': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'exchange.index': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'exchange.stream': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'configurations_v_1.index': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.list_tags': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.show': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.history': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.compliance': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.index': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.list_entries': { paramsTuple?: []; params?: {} }
|
|
'firmware_catalog.show_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.list_routes': { paramsTuple?: []; params?: {} }
|
|
'pages.home': { paramsTuple?: []; params?: {} }
|
|
'pages.device_detail': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'commands.page': { paramsTuple?: []; params?: {} }
|
|
'pages.commands_fleet': { paramsTuple?: []; params?: {} }
|
|
'pages.tr_069_trace': { paramsTuple?: []; params?: {} }
|
|
'pages.configurations_list': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_create': { paramsTuple?: []; params?: {} }
|
|
'pages.configuration_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.configuration_detail': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'pages.firmware_catalog': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_create': { paramsTuple?: []; params?: {} }
|
|
'pages.firmware_catalog_edit': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
DELETE: {
|
|
'devices.destroy': { paramsTuple: [ParamValue]; params: {'identifier': ParamValue} }
|
|
'tr_069_trace.destroy': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'exchange.destroy': { paramsTuple: [ParamValue]; params: {'deviceId': ParamValue} }
|
|
'configurations_v_1.destroy': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.delete_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.delete_route': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
PUT: {
|
|
'tr_069_trace.save_raw_config': { paramsTuple?: []; params?: {} }
|
|
'configurations_v_1.update': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.update_entry': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'firmware_catalog.update_route': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
PATCH: {
|
|
'configurations_v_1.toggle_enabled': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
'configurations_v_1.manage_tags': { paramsTuple: [ParamValue]; params: {'id': ParamValue} }
|
|
}
|
|
}
|
|
declare module '@adonisjs/core/types/http' {
|
|
export interface RoutesList extends ScannedRoutes {}
|
|
} |