Skip to content

docs: add dogfood report for v2.2.3-dev#83

Merged
carlos-alm merged 1 commit intomainfrom
docs/dogfood-report-v2.2.3-dev
Feb 24, 2026
Merged

docs: add dogfood report for v2.2.3-dev#83
carlos-alm merged 1 commit intomainfrom
docs/dogfood-report-v2.2.3-dev

Conversation

@carlos-alm
Copy link
Contributor

Summary

  • Adds the dogfood report (generated/DOGFOOD_REPORT_v2.2.3-dev.44e8146.md) that was left behind as an untracked file after the dogfooding session
  • Updates the dogfood skill (.claude/skills/dogfood/SKILL.md) with a new Phase 10 — Commit the Report so future reports are always committed — either with the first bug-fix PR or in a dedicated PR

Test plan

  • Report file is present in generated/
  • Skill update adds clear instructions for committing reports

…ports

- Add the dogfood report that was left as an untracked file
- Add Phase 10 to the dogfood skill ensuring future reports are
  committed with the first PR or in a dedicated PR
@claude
Copy link

claude bot commented Feb 24, 2026

Claude finished @carlos-alm's task —— View job


PR Review: docs: add dogfood report for v2.2.3-dev

Todo List:

  • Phase 1: Root Cause Analysis - understand what problem this PR solves
  • Phase 2: Configuration Change Detection - check for high-risk changes
  • Phase 3: Test Integrity - look for red flags in testing
  • Phase 4: Code Quality - review documentation content and structure
  • Provide final rating and recommendation

Phase 1: Root Cause Analysis ✅

Problem Being Solved: This PR addresses a process gap where the dogfood report from v2.2.3-dev testing was left as an untracked file after the dogfooding session completed. The dogfood skill was missing explicit instructions for committing the report to the repository.

Why This Approach:

  • Adds the completed dogfood report to version control for historical tracking
  • Updates the dogfood skill with "Phase 10 — Commit the Report" to prevent this gap in future sessions
  • Follows the skill's own improvement directive: "If during the dogfooding session you discover that this skill is missing steps... you are encouraged to edit it"

Risk Assessment: Very low risk - this is pure documentation with no code changes, configuration modifications, or functional impacts.

Phase 2: Configuration Change Detection ✅

No high-risk changes detected:

  • No biome/linting rule modifications
  • No test configuration changes
  • No build or module resolution modifications
  • No TypeScript configuration changes
  • Only documentation files modified (.claude/skills/dogfood/SKILL.md and new report file)

Phase 3: Test Integrity ✅

No test-related red flags:

  • No test files modified
  • No test assertions weakened or removed
  • No test timeouts or coverage thresholds lowered
  • This is pure documentation addition with no impact on test suite

Phase 4: Code Quality ✅

Documentation Content Quality:

  • Dogfood report (generated/DOGFOOD_REPORT_v2.2.3-dev.44e8146.md): Comprehensive 372-line testing report following established format. Covers installation, cold start testing, full command sweep, rebuilds, engine comparison, and identified 2 bugs with fixes.
  • Skill update (.claude/skills/dogfood/SKILL.md): Adds clear procedural Phase 10 with branching logic for different scenarios (bug-fix PRs vs clean runs). Includes verification step.

Structure and Clarity:

  • Both additions follow existing patterns in the repository
  • The skill update is properly sequenced as Phase 10 after Phase 9 (Report writing)
  • Instructions are clear with concrete bash commands for both scenarios
  • Maintains consistency with existing skill phases

Root Cause Analysis

Problem Being Solved: Process improvement — ensuring dogfood reports are committed rather than left untracked
Why This Approach: Direct fix for identified gap, follows repository's self-improvement philosophy
Risk Assessment: Minimal — documentation-only changes with no functional impact

Critical Concerns

None identified. This is straightforward documentation maintenance.

Final Recommendation

  • Rating: ⭐⭐⭐⭐☆ (4/5)
  • Action: APPROVE
  • Reasoning: Clean documentation addition that solves a real process gap. High quality report content and sensible skill improvement. No configuration risks or test impacts. Only missing the 5th star due to being purely administrative rather than feature work.

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Feb 24, 2026

Greptile Summary

This PR adds the dogfood report for v2.2.3-dev.44e8146 that was previously left as an untracked file, and updates the dogfood skill with a new Phase 10 to ensure future reports are always committed.

Key changes:

  • Added comprehensive dogfood report (generated/DOGFOOD_REPORT_v2.2.3-dev.44e8146.md) documenting the testing session that found 2 bugs (both fixed in PR fix(cli): graceful error for cycles, export, embed when no graph.db exists #79)
  • Updated .claude/skills/dogfood/SKILL.md with Phase 10 instructions for committing reports, covering both scenarios: adding to first bug-fix PR or creating dedicated PR for green-path sessions
  • Report is well-structured with 12 sections covering setup, cold start testing, command sweep, rebuild/staleness, engine comparison, release-specific tests, bugs found, and overall 8/10 rating

Confidence Score: 5/5

  • This PR is safe to merge with no risk
  • This is a documentation-only PR that adds a previously generated dogfood report and updates the dogfood skill with clear instructions. No code changes, no functionality changes, zero risk of introducing bugs.
  • No files require special attention

Important Files Changed

Filename Overview
.claude/skills/dogfood/SKILL.md Added Phase 10 with clear instructions for committing dogfood reports to prevent leaving them as untracked files
generated/DOGFOOD_REPORT_v2.2.3-dev.44e8146.md Comprehensive dogfood report documenting v2.2.3-dev.44e8146 testing, found 2 bugs (both fixed in PR #79), rated 8/10

Last reviewed commit: 8247d5d

Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

2 files reviewed, no comments

Edit Code Review Agent Settings | Greptile

@carlos-alm carlos-alm merged commit 4ad3fbb into main Feb 24, 2026
17 checks passed
@carlos-alm carlos-alm deleted the docs/dogfood-report-v2.2.3-dev branch February 24, 2026 04:26
carlos-alm added a commit that referenced this pull request Mar 16, 2026
…in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java
carlos-alm added a commit that referenced this pull request Mar 16, 2026
* docs: move 3.16 items to new Phase 5 (Runtime & Extensibility)

Expand the deferred Phase 3 items into a dedicated phase after
TypeScript Migration with detailed descriptions for each sub-item:
event-driven pipeline, unified engine strategy, subgraph export
filtering, transitive confidence, query caching, config profiles,
pagination standardization, and plugin system.

Renumber subsequent phases 5-9 → 6-10 with all cross-references
updated.

* refactor: migrate integration tests to InMemoryRepository

Add openRepo() utility that accepts an injected Repository instance or
falls back to SQLite, enabling tests to bypass the filesystem entirely.

- Add openRepo(dbPath, opts) to src/db/connection.js
- Make findMatchingNodes and buildDependencyGraph polymorphic (accept
  db or Repository via instanceof check)
- Refactor triageData, sequenceData, communitiesData to use openRepo
- Convert triage, sequence, communities test fixtures to createTestRepo()
  fluent builder (sequence dataflow tests stay on SQLite)
- Mark ROADMAP 3.13 InMemoryRepository migration item complete

Impact: 10 functions changed, 11 affected

* fix: use instanceof SqliteRepository guard and validate openRepo opts

Impact: 2 functions changed, 18 affected

* docs: add Phase 4 (Native Analysis Acceleration) to roadmap

Add new Phase 4 covering the port of JS-only build phases to Rust:
- 4.1-4.3: AST nodes, CFG, dataflow visitor ports (~587ms savings)
- 4.4: Batch SQLite inserts (~143ms)
- 4.5: Role classification & structure (~42ms)
- 4.6: Complete complexity pre-computation
- 4.7: Fix incremental rebuild data loss on native engine
- 4.8: Incremental rebuild performance (target sub-100ms)

Bump old Phases 4-10 to 5-11 with all cross-references updated.
Benchmark evidence shows ~50% of native build time is spent in
JS visitors that run identically on both engines.
carlos-alm added a commit that referenced this pull request Mar 16, 2026
* docs: promote #83 (brief command) and #71 (type inference) to Tier 0 in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java

* docs: add Phase 4 (Native Analysis Acceleration) to roadmap

Add new Phase 4 covering the port of JS-only build phases to Rust:
- 4.1-4.3: AST nodes, CFG, dataflow visitor ports (~587ms savings)
- 4.4: Batch SQLite inserts (~143ms)
- 4.5: Role classification & structure (~42ms)
- 4.6: Complete complexity pre-computation
- 4.7: Fix incremental rebuild data loss on native engine
- 4.8: Incremental rebuild performance (target sub-100ms)

Bump old Phases 4-10 to 5-11 with all cross-references updated.
Benchmark evidence shows ~50% of native build time is spent in
JS visitors that run identically on both engines.

* docs: fix sub-section numbering to match parent phase headings
carlos-alm added a commit that referenced this pull request Mar 17, 2026
* docs: promote #83 (brief command) and #71 (type inference) to Tier 0 in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java

* fix: include constant nodes in edge building and downstream queries (#487)

The edge-building stage excluded 'constant'-kind nodes from the node
lookup maps, so no import/dependency edges were ever created for
exported constants. This made them invisible to where, fn-impact,
query, roles, and all other graph queries. Also adds missing 'record'
kind to build-edges.js to match CORE_SYMBOL_KINDS.

Impact: 6 functions changed, 33 affected

* fix: include constant kind in whereSymbol and findMatchingNodes queries (#487)

whereSymbolImpl used ALL_SYMBOL_KINDS (core 10, no constant) so
codegraph where could not find constants. findMatchingNodes defaulted
to FUNCTION_KINDS which also excluded constant. Switch whereSymbolImpl
to EVERY_SYMBOL_KIND and add constant to FUNCTION_KINDS default.

Impact: 1 functions changed, 6 affected
carlos-alm added a commit that referenced this pull request Mar 17, 2026
* docs: promote #83 (brief command) and #71 (type inference) to Tier 0 in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java

* docs: add Phase 4 (Native Analysis Acceleration) to roadmap

Add new Phase 4 covering the port of JS-only build phases to Rust:
- 4.1-4.3: AST nodes, CFG, dataflow visitor ports (~587ms savings)
- 4.4: Batch SQLite inserts (~143ms)
- 4.5: Role classification & structure (~42ms)
- 4.6: Complete complexity pre-computation
- 4.7: Fix incremental rebuild data loss on native engine
- 4.8: Incremental rebuild performance (target sub-100ms)

Bump old Phases 4-10 to 5-11 with all cross-references updated.
Benchmark evidence shows ~50% of native build time is spent in
JS visitors that run identically on both engines.

* docs: fix sub-section numbering to match parent phase headings

* fix: align version computation between publish.yml and bench-version.js

- Add COMMITS=0 guard in publish.yml to return clean version when HEAD
  is exactly at a tag (mirrors bench-version.js early return)
- Change bench-version.js to use PATCH+1-dev.COMMITS format instead of
  PATCH+COMMITS-dev.SHA (mirrors publish.yml's new scheme)
- Fix fallback in bench-version.js to use dev.1 matching publish.yml's
  no-tags COMMITS=1 default

Impact: 1 functions changed, 0 affected

* feat: auto-detect semver bump in /release skill when no version provided

The release skill now scans commit history using conventional commit
rules to determine major/minor/patch automatically. Explicit version
argument still works as before.

* fix: restore SHA-based uniqueness in bench-version fallback and add -dev.0 suffix

The no-tags fallback hardcoded dev.1, causing repeated benchmark runs
to silently overwrite each other. Restore short SHA for uniqueness.
Also add -dev.0 suffix when COMMITS=0 so dev builds at an exact tag
are never confused with stable releases.

Impact: 1 functions changed, 0 affected

* fix: add -dev.0 suffix for COMMITS=0 dev builds in publish.yml

When HEAD is exactly at a release tag, the dev build emitted a clean
semver string identical to the stable release. Add -dev.0 suffix to
prevent confusion between dev pre-releases and stable releases.
carlos-alm added a commit that referenced this pull request Mar 17, 2026
* docs: promote #83 (brief command) and #71 (type inference) to Tier 0 in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java

* fix: include constant nodes in edge building and downstream queries (#487)

The edge-building stage excluded 'constant'-kind nodes from the node
lookup maps, so no import/dependency edges were ever created for
exported constants. This made them invisible to where, fn-impact,
query, roles, and all other graph queries. Also adds missing 'record'
kind to build-edges.js to match CORE_SYMBOL_KINDS.

Impact: 6 functions changed, 33 affected

* fix: include constant kind in whereSymbol and findMatchingNodes queries (#487)

whereSymbolImpl used ALL_SYMBOL_KINDS (core 10, no constant) so
codegraph where could not find constants. findMatchingNodes defaulted
to FUNCTION_KINDS which also excluded constant. Switch whereSymbolImpl
to EVERY_SYMBOL_KIND and add constant to FUNCTION_KINDS default.

Impact: 1 functions changed, 6 affected
carlos-alm added a commit that referenced this pull request Mar 17, 2026
* docs: promote #83 (brief command) and #71 (type inference) to Tier 0 in backlog

These two items deliver the highest immediate impact on agent experience
and graph accuracy without requiring Rust porting or TypeScript migration.
They should be implemented before any Phase 4+ roadmap work.

- #83: hook-optimized `codegraph brief` enriches passively-injected context
- #71: basic type inference closes the biggest resolution gap for TS/Java

* docs: add Phase 4 (Native Analysis Acceleration) to roadmap

Add new Phase 4 covering the port of JS-only build phases to Rust:
- 4.1-4.3: AST nodes, CFG, dataflow visitor ports (~587ms savings)
- 4.4: Batch SQLite inserts (~143ms)
- 4.5: Role classification & structure (~42ms)
- 4.6: Complete complexity pre-computation
- 4.7: Fix incremental rebuild data loss on native engine
- 4.8: Incremental rebuild performance (target sub-100ms)

Bump old Phases 4-10 to 5-11 with all cross-references updated.
Benchmark evidence shows ~50% of native build time is spent in
JS visitors that run identically on both engines.

* docs: fix sub-section numbering to match parent phase headings

* fix: align version computation between publish.yml and bench-version.js

- Add COMMITS=0 guard in publish.yml to return clean version when HEAD
  is exactly at a tag (mirrors bench-version.js early return)
- Change bench-version.js to use PATCH+1-dev.COMMITS format instead of
  PATCH+COMMITS-dev.SHA (mirrors publish.yml's new scheme)
- Fix fallback in bench-version.js to use dev.1 matching publish.yml's
  no-tags COMMITS=1 default

Impact: 1 functions changed, 0 affected

* feat: auto-detect semver bump in /release skill when no version provided

The release skill now scans commit history using conventional commit
rules to determine major/minor/patch automatically. Explicit version
argument still works as before.

* fix: restore SHA-based uniqueness in bench-version fallback and add -dev.0 suffix

The no-tags fallback hardcoded dev.1, causing repeated benchmark runs
to silently overwrite each other. Restore short SHA for uniqueness.
Also add -dev.0 suffix when COMMITS=0 so dev builds at an exact tag
are never confused with stable releases.

Impact: 1 functions changed, 0 affected

* fix: add -dev.0 suffix for COMMITS=0 dev builds in publish.yml

When HEAD is exactly at a release tag, the dev build emitted a clean
semver string identical to the stable release. Add -dev.0 suffix to
prevent confusion between dev pre-releases and stable releases.
@carlos-alm carlos-alm mentioned this pull request Mar 17, 2026
3 tasks
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.

1 participant