Update tickets
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# 034 — Params declaration UI
|
||||
|
||||
## Summary
|
||||
|
||||
`POST /api/params` (ticket 004) already lets a param be declared — name,
|
||||
`message_match_regex`, `capture_group`, `kind` — and `GET /api/params`
|
||||
(`fetchParams`, `webapp/src/lib/api.ts:245`) already feeds LogPreview's
|
||||
"Columns" picker (`webapp/src/components/LogPreview.tsx:63`) so a declared
|
||||
param can be shown as a log table column. But nothing in the webapp can
|
||||
*create* one — the only way to declare a param today is a raw `POST
|
||||
/api/params` call. Add a UI for it, following the same declare-then-list
|
||||
pattern `Metrics` already uses for `POST /api/metrics`
|
||||
(`webapp/src/components/Metrics.tsx`).
|
||||
|
||||
## Scope
|
||||
|
||||
- A "Params" section in the primary UI (alongside Log viewer / Metrics /
|
||||
Dashboards in `App.tsx`), listing currently-declared params (name, regex,
|
||||
capture group, kind) via `fetchParams`.
|
||||
- A declare form: name, `message_match_regex`, `capture_group`, kind
|
||||
(string/number/timestamp — mirror `MetricPrimitiveKind`), submitting via a
|
||||
new `declareParam` call to `POST /api/params`.
|
||||
- Surface `400` validation errors from the backend (bad regex, unknown
|
||||
capture group) inline on the form, matching how `Metrics`' declare form
|
||||
reports its own validation errors.
|
||||
- After a successful declare, refresh the params list so it (and
|
||||
LogPreview's Columns picker) immediately reflects the new param without a
|
||||
page reload.
|
||||
- Contextual "?" help icon on the section, matching [021](021-docs-contextual-help.md)'s pattern.
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- A param can be declared from the UI and immediately appears in LogPreview's
|
||||
Columns picker without a page reload.
|
||||
- An invalid regex or unknown capture group shows the backend's error message
|
||||
on the form instead of failing silently.
|
||||
- The declared-params list matches `GET /api/params` after a page reload.
|
||||
|
||||
## Depends on
|
||||
|
||||
- [021 — Docs contextual help](021-docs-contextual-help.md)
|
||||
Reference in New Issue
Block a user