Follow-up from PR #4 review (Standards axis — Divergent Change).
The at-file feature is split across namespaces: picker.clj owns open/update/select, but state.clj gained two at-file-domain predicates:
autocomplete-at? — src/eca_cli/state.clj:194
at-file-filter-keystroke? — src/eca_cli/state.clj:208
conventions: mode-specific logic should live in its owning namespace, not state.clj. These predicates are at-file domain knowledge and arguably belong in picker.clj alongside printable-char?. The cond dispatch arms themselves correctly stay in state.clj.
Low priority — judgement call, not a hard violation. Consider relocating the predicates next time the picker is touched.
Follow-up from PR #4 review (Standards axis — Divergent Change).
The at-file feature is split across namespaces:
picker.cljowns open/update/select, butstate.cljgained two at-file-domain predicates:autocomplete-at?—src/eca_cli/state.clj:194at-file-filter-keystroke?—src/eca_cli/state.clj:208conventions: mode-specific logic should live in its owning namespace, not
state.clj. These predicates are at-file domain knowledge and arguably belong inpicker.cljalongsideprintable-char?. Theconddispatch arms themselves correctly stay instate.clj.Low priority — judgement call, not a hard violation. Consider relocating the predicates next time the picker is touched.