Skip to content

Latest commit

 

History

History
38 lines (29 loc) · 1.52 KB

roadmap.md

File metadata and controls

38 lines (29 loc) · 1.52 KB

Roadmap

A short index of the todo.md items: groups by code letter, with the code, topic and dependencies. Details are in todo. Roadmap is updated together with todo when work is completed.

Legend. [x] implemented, [ ] not implemented, [~] in progress (branch in .work/). "After: ..." means what must be ready first.

A: Level control

  • A0 Run-time level change
  • A1 LevelsHandler() for an admin port (after: A0)

B: Consistent style and safety

  • B1 Static service fields in the config
  • B2 Redaction of fields by key name
  • B3 Control character escaping in the text format
  • B4 Hooks for metrics

C: Replaceability

  • C1 NewTestLogger, UseTestLogger
  • C2 Optional interfaces Panicer, Namer

D: Compatibility and accuracy

  • D1 Caller in the slog adapter
  • D2 Measured the cost of Keys: typed fields are not needed
  • D3 Value, TypedKey[T], RedactedKey[T], WithValuesFrom

Possible next steps

Open items, details in todo.md and issues.md:

  • Keep the caller when the level is raised at run time.
  • Avoid duplicate keys on repeated WithContext.
  • Answer 413 instead of 400 for an oversized LevelsHandler body.
  • Package-level loggers following Init.
  • Migrate Key constants to generic Key[T].

Not doing

  • ApplyLevels and SIGHUP (formerly A2): recipe in docs/usage.md, reasons in docs/todo.md.

Done during the audit

  • Z1 Audit fixes; Z2 trace level; Z3 slog.Handler, the logging_legacy tag