Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

bregctl: explain and check report structural paths with no file or line to go with them

Open
#1,244 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Active
Tech stack
rust
Domain
cli

Research direction

Start by comparing the current bregctl check --format json findings and bregctl explain output, then trace how structural paths are represented across projects assembled from several files. Define the chosen output shape and how it distinguishes authored configuration, module values, and engine defaults; done means every addressable construct has usable provenance or the opt-in locations map is available.

Written by the indexing model from the issue text.

Description

area:breg enhancement rust

Problem

Both bregctl check --format json findings and bregctl explain output identify configuration by structural path, for example entities[2].fields[5].constraints[0]. Neither says which file the construct came from, nor where in that file it sits.

For a single-file project a human can resolve this by reading. For a project assembled from several files, or one that a tool wants to link back to source, the structural path is not enough. Every consumer has to re-parse the project files itself and re-implement the mapping from structural path to file position, which means re-implementing assumptions about how the loader merges files.

Request

Either of:

  1. Source provenance inline: add file and range (start and end line/column) next to path in explain output and in check findings.
  2. A separate map: bregctl explain locations --format json returning structuralPath -> { file, range } for every addressable construct.

Option 2 is cheaper to add without disturbing existing payload shapes, and it lets consumers opt in.

Provenance should also distinguish authored configuration from values that came from a module or from an engine default, since "this field is not in your file because the engine supplied it" is a different answer from "this is at line 40".

Why it matters

Any tool that shows a project's configuration and wants to let a reader jump to where a rule is written needs this. Without it, the tool is guessing.

Dominant language
Rust
Stars
2
Forks
0
Avg merge
8h 25m
Merged PRs (30d)
266

Getting set up

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.

More from registrystack/registry-stack

All issues in registrystack/registry-stack

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.