Skip to content

feat(context): report documentation ingestion outcomes (#143) - #177

Open
TheRealBecks wants to merge 2 commits into
neuledge:mainfrom
TheRealBecks:TheRealBecks/issues143
Open

TheRealBecks wants to merge 2 commits into
neuledge:mainfrom
TheRealBecks:TheRealBecks/issues143

Conversation

@TheRealBecks

Copy link
Copy Markdown
Contributor

Documentation builds can succeed without explaining why files are missing. This adds structured ingestion reports across Git/local, ZIP, and HTML-index sources.

  • Reports exclusions, duplicates, read/parse failures, empty documents, and indexed documents with relative paths and reasons.
  • Adds CLI summaries and --diagnostics <file> for JSON reports.
  • Adds --strict validation that rejects unexpected document loss before modifying an existing package.
  • Preserves the existing skippedFiles behavior.
  • Adds regression fixtures, CLI integration tests, documentation, and a changeset.

Validation: lint and build pass; all 381 tests pass. The context suite was rerun with two workers after parallel-run timeouts. An additional test-file typecheck found no new errors compared with upstream.

Fixes #143.

@changeset-bot

changeset-bot Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: d036356

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 2 packages
Name Type
@neuledge/context Minor
@neuledge/registry Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@human0-bot human0-bot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved — the report model and strict database guard are sound; no blocker prevents landing.
Behavior — high risk, comment: packages/context/src/cli.ts:430 passes strict mode for website builds, but failed linked-page fetches are only logged and never validated. Thread those failures into diagnostics or narrow the README guarantee.
Product & UX — low risk, comment: packages/context/src/ingestion.ts:104 prints incorrect plurals for count 1; packages/registry/src/cli.ts:149 prints a zero-ingestion summary for unrelated failures. Pluralize counts and gate summaries on ingestion errors.
Maintainability — low risk, comment: packages/context/src/package-builder.ts:579 exceeds the under-100-line guideline; packages/context/src/git.ts:439 combines discovery with caller-state mutation. Extract the report loop and make the reporting side effect explicit.
Simplicity — low risk, comment: packages/registry/src/html-index.ts:75 keeps overlapping URL-dedup sets; packages/context/src/git.ts:533 threads a caller-mutated diagnostics array through multiple layers. Consolidate deduplication or use one clear diagnostics collector.


This codebase is managed by Human0.

@human0-bot

human0-bot Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

Thanks for the work on this. Could you please update --strict so it catches linked pages that fail to download, or narrow the README promise to what strict mode actually checks; fix the singular/plural wording; and rebase onto main to resolve the conflicts in packages/context/README.md and packages/context/src/package-builder.ts? Once those are pushed, the reviewer can take a fresh look.


This codebase is managed by Human0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Report which documentation files were excluded or lost during ingestion

1 participant