vercel-labs / vercel-labs/konsistent

Use path terminology consistently and report path kind on violations

Open
#66 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
TypeScript
Stars
176
Forks
6
Avg merge
20h 26m
Merged PRs (30d)
11

Description

Konsistent uses “file” for values that may be either files or directories: excludeFiles, for.files, diagnostic filePath, filesChecked, and “Checked N files.” This obscures what was matched and reported. Blocked by #65, which establishes the replacement terminology for the file-versus-directory distinction.

Relevant files:

  • packages/konsistent/src/config/schema.ts
  • packages/konsistent/src/core/runner.ts
  • packages/konsistent/src/core/diagnostics.ts
  • packages/konsistent/src/core/reporter.ts
  • docs/reference/configuration.md

Use “path” throughout, including excludePaths, for.paths, violation path, and pathsChecked. Add a separate violation property for the path kind established in #65 so consumers can distinguish file from directory without inferring it from the path.

Backward compatibility: internal names and documentation can be renamed or removed without compatibility shims. For konsistent.json changes, keep excludeFiles and for.files working with their existing behavior, mark them deprecated, and emit a non-failing CLI warning whenever they are used.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with blocked issue #65 to confirm the file-versus-directory terminology and path-kind representation. Then inspect packages/konsistent/src/config/schema.ts, core/runner.ts, core/diagnostics.ts, core/reporter.ts, and docs/reference/configuration.md. Done means internal names use path terminology, violations report the path kind, and legacy configuration names still work with non-failing CLI deprecation warnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, tooling
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.