Add bulk clear-params action that re-extracts from retained logs (ticket 052)
DELETE /api/params clears the entire standalone-param set — manual and auto-derived alike — then immediately re-runs auto_declare_params against every IndexKey::IngestedLog entry still held in the engine's index (oldest to newest), so params come back fresh from currently-retained log text without requiring new lines to be ingested. This is a deliberate full reset, unlike reload_engine_declarations's profile-switch cleanup, which preserves auto-derived params since those are engine-discovered facts rather than profile state; here the immediate re-extraction step makes clearing them safe. Settings::clear_param_declarations empties the active profile's persisted params so they don't reappear on restart. The webapp's Params section gets a single "Clear all" button (with a confirm dialog and a status line reporting removed/re-derived/logs_considered) rather than a per-param delete loop; logs_considered surfaces that lines already evicted by max_logs can't regain their params. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01XFUNZwCvz3kcod3352ZR2o
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
d17cfe9b83
commit
4e37e2a7ee
@@ -287,6 +287,21 @@ export function declareParam(request: ParamDeclaration): Promise<ParamDeclaratio
|
||||
return postJson('/api/params', request)
|
||||
}
|
||||
|
||||
export interface ClearParamsResult {
|
||||
/** How many param declarations (manual + auto-derived) were removed. */
|
||||
removed: number
|
||||
/** How many params were immediately re-derived from log text still retained by the engine. */
|
||||
reextracted: number
|
||||
/** How many retained log lines were re-scanned — lines already evicted by `max_logs` before the clear can't regain their params, so this can be smaller than the total lines ever ingested. */
|
||||
logs_considered: number
|
||||
}
|
||||
|
||||
// Clears every declared param (ticket 052) and re-derives whatever the engine's still-retained log
|
||||
// text supports — see `ClearParamsResult`'s fields for what came back.
|
||||
export function clearParams(): Promise<ClearParamsResult> {
|
||||
return sendJson('/api/params', 'DELETE')
|
||||
}
|
||||
|
||||
export function fetchMetricDeclarations(): Promise<MetricDeclaration[]> {
|
||||
return getJson('/api/metrics')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user