Skip to content

Document and surface a non-gitignore exclude for committed dirs (graph-ignore.json today, .nectarignore alias?) #24

Description

@thenotoriousllama

Field report

On an ~85k-file repo the operator had to gitignore-exclude .claude/worktrees and node_modules to tame indexing, but committed vendored code (vendor/, 9,262 files) cannot be gitignored, so it is walked and described every brood. Ask: provide a non-gitignore exclude (.nectarignore or config) for committed dirs.

What already exists (and is not discoverable)

.honeycomb/graph-ignore.json at the repo root is exactly this: a per-repo JSON prefix list (["vendor/"] or { "ignore": ["vendor/"] }) honored in UNION with gitignore semantics by the shared ignore contract (src/registration/ignore.ts:43-127), applied on the git discovery path AND the walk AND (since PRD-019d) every CLI discovery path. The reporter's exact case is a one-line file, no gitignore change needed.

Gaps to close

  1. Documentation: no user-facing doc names graph-ignore.json as the committed-dirs exclude; the README/first-run guidance should, with the vendor/ example.
  2. Discoverability/naming: consider a .nectarignore file (gitignore syntax) as a friendlier alias feeding the same predicate, or at minimum surface the ignore sources and their effect in nectar brood --dry-run output ("N files excluded by graph-ignore.json").
  3. The dry-run report should make it obvious BEFORE a brood which excludes are active, so an operator on a large repo can iterate without paying for a full walk.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions