Skip to content

docs(rfd): Add RFD 063 for Usage-Based Wizard Field Ordering#470

Merged
JeanMertz merged 2 commits intomainfrom
prr40
Mar 22, 2026
Merged

docs(rfd): Add RFD 063 for Usage-Based Wizard Field Ordering#470
JeanMertz merged 2 commits intomainfrom
prr40

Conversation

@JeanMertz
Copy link
Collaborator

Introduces RFD 063, which extends the interactive config wizard (RFD 061) with a frecency-based middle tier in the field selector, powered by the CLI usage tracking data from RFD 062.

Fields the user frequently sets via --cfg or dedicated CLI flags are promoted in the wizard list, making it increasingly personalized over time. The ranking combines logarithmic frequency scaling with a recency decay (half-life of ~7 days), so stale usage fades naturally without requiring manual resets.

The design introduces a three-tier field ordering: already-configured fields first, then frecent fields, then all remaining fields in natural order. Each tier gets a distinct visual indicator (, , or none).

The interactive_config_browser function gains a &CliUsage parameter, and a field_usage_scores() helper translates raw CliUsage data into per-field-path scores by parsing --cfg values through KvAssignment and reverse-mapping dedicated CLI args via the CliRecord registry from RFD 060.

@JeanMertz JeanMertz changed the title docs(rfd): Add RFD 063 — Usage-Based Wizard Field Ordering docs(rfd): Add RFD 063 for Usage-Based Wizard Field Ordering Mar 22, 2026
Base automatically changed from prr39 to main March 22, 2026 09:25
Introduces RFD 063, which extends the interactive config wizard (RFD
061) with a frecency-based middle tier in the field selector, powered
by the CLI usage tracking data from RFD 062.

Fields the user frequently sets via `--cfg` or dedicated CLI flags are
promoted in the wizard list, making it increasingly personalized over
time. The ranking combines logarithmic frequency scaling with a recency
decay (half-life of ~7 days), so stale usage fades naturally without
requiring manual resets.

The design introduces a three-tier field ordering: already-configured
fields first, then frecent fields, then all remaining fields in natural
order. Each tier gets a distinct visual indicator (`●`, `◦`, or none).

The `interactive_config_browser` function gains a `&CliUsage` parameter,
and a `field_usage_scores()` helper translates raw `CliUsage` data into
per-field-path scores by parsing `--cfg` values through `KvAssignment`
and reverse-mapping dedicated CLI args via the `CliRecord` registry from
RFD 060.

Signed-off-by: Jean Mertz <git@jeanmertz.com>
Signed-off-by: Jean Mertz <git@jeanmertz.com>
@JeanMertz JeanMertz merged commit 19b561f into main Mar 22, 2026
12 checks passed
@JeanMertz JeanMertz deleted the prr40 branch March 22, 2026 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant