Skip to content

docs: enhance README with traversal directory, seek guide, and runtime compat#64

Merged
flyingrobots merged 6 commits intomainfrom
chore/readme
Mar 7, 2026
Merged

docs: enhance README with traversal directory, seek guide, and runtime compat#64
flyingrobots merged 6 commits intomainfrom
chore/readme

Conversation

@flyingrobots
Copy link
Member

@flyingrobots flyingrobots commented Mar 6, 2026

Summary

  • Add Documentation Map section with links to Guide, Architecture, Protocol Specs, ADRs, and Cookbook
  • Add Graph Traversal Directory table listing all 11+ algorithms by category
  • Expand Time-Travel (Seek) section with prose, structured examples, and cache management flags
  • Add Runtime Compatibility section documenting Node.js, Bun, and Deno support
  • Add Local-First Applications to the "When git-warp is Most Useful" list
  • Update CHANGELOG with [Unreleased] entries

Review fixes

  • Fix unclosed code fence that caused the entire Seek section to render as literal text
  • Correct "NodeCrypto" → "WebCrypto" for Node.js (all runtimes use WebCryptoAdapter)
  • Remove duplicate "User Manual" link pointing to same docs/GUIDE.md already linked as "Guide"
  • Normalize list markers from * to - for consistency
  • Restore --clear-cache and --no-persistent-cache seek flags that were dropped in the rewrite

Test plan

  • npm run lint — zero errors/warnings
  • npm run test:local — 257 files, 4668 tests passing
  • Pre-push IRONCLAD gates all passed (lint, typecheck, policy, consumer types, unit tests)
  • Verified all Documentation Map links resolve to existing files/directories
  • Verified no * list markers remain (0 occurrences)
  • Verified code fences are properly paired (no unclosed fences)

Summary by CodeRabbit

  • Documentation
    • Added a Documentation Map and Graph Traversal Directory listing 15 deterministic algorithms with support notes.
    • Expanded Time-Travel (Seek) guide with absolute/relative positioning, bookmarking/restoring, and cursor behaviors.
    • Introduced Local‑First Applications use case and Runtime Compatibility (Node.js, Bun, Deno).
    • Added an Unreleased changelog section; deduplicated/standardized related docs and applied minor reformatting for consistency.

@coderabbitai
Copy link

coderabbitai bot commented Mar 6, 2026

📝 Walkthrough

Walkthrough

This PR updates documentation only: CHANGELOG.md gains an "Unreleased" section documenting added docs and use-case notes; README.md is reorganized with a Documentation Map, a Graph Traversal Directory (15 deterministic algorithms), a Time-Travel (Seek) subsection, a Local-First Applications use case, and a Runtime Compatibility section. No code or public API changes.

Changes

Cohort / File(s) Summary
Changelog
CHANGELOG.md
Adds an "Unreleased" section with Added entries for documentation enhancements (Documentation Map, Graph Traversal Directory, Time-Travel guide, Runtime Compatibility) and a Local-First Applications use-case; no code changes.
README / Docs
README.md
Reorganizes README: inserts a Documentation Map; adds a Graph Traversal Directory describing 15 deterministic algorithms (search, weighted, analytical, ancestry, reduction, critical path) and shared traversal controls; introduces a Time-Travel (Seek) subsection with absolute/relative ticks, bookmarks/restores, and seek behavior notes; adds Local-First Applications use case; adds Runtime Compatibility (Node.js, Bun, Deno); duplicates/relocates some blocks and minor formatting edits.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐰 I hopped through pages, mapped each trail,
I counted fifteen paths along the rail,
I bookmarked ticks and nudged time’s seam,
Runtimes dance in a cross-runtime dream,
Local roots sprout bright in the docstream.

🚥 Pre-merge checks | ✅ 2 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description includes a comprehensive summary and detailed test plan, but omits the required ADR checks section entirely. Add the ADR checks section from the template with the four required checkboxes (ADR 2/3, persisted ops, wire compatibility, schema constants).
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main changes: documentation enhancements including traversal directory, seek guide, and runtime compatibility section.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/readme

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

github-actions bot commented Mar 6, 2026

Release Preflight

  • package version: 13.1.0
  • prerelease: false
  • npm dist-tag on release: latest
  • npm pack dry-run: passed
  • jsr publish dry-run: passed

If you tag this commit as v13.1.0, release workflow will publish.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
README.md (1)

554-578: ⚠️ Potential issue | 🟠 Major

Close the existing bash fence before the new Seek section.

The section starting at Line 554 is still inside the CLI code block opened at Line 535, so GitHub will render the heading, prose, and examples as literal shell text instead of Markdown. Close the first fence after git warp check, then open a new fence just for the seek commands.

Suggested fix
 # Check graph health, status, and GC metrics
 git warp check
+```
 
 ### Time-Travel (Seek)
 
 One of git-warp's most powerful features is the ability to query the graph at any point in its history without modifying your Git HEAD.
 
 ```bash
 # Jump to absolute Lamport tick 3
 git warp seek --tick 3
@@
 # Return to the present and clear the cursor
 git warp seek --latest

When a seek cursor is active, query, info, materialize, and history automatically show state at the selected tick.

+```bash

Visualize query results (ascii output by default)

git warp query --match 'user:*' --outgoing manages --view

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 554 - 578, The README's Seek section is still inside
the earlier bash code fence; close the first fence immediately after the `git
warp check` example and then open a new triple-backtick fence for the Seek
command examples so the `### Time-Travel (Seek)` heading and prose render as
Markdown; specifically, update the area around the `git warp check` block and
the `### Time-Travel (Seek)` / `git warp seek` examples to end the previous
```bash fence and start a fresh ```bash fence only for the seek commands and the
final `git warp query` snippet.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@README.md`:
- Around line 554-578: The README's Seek section is still inside the earlier
bash code fence; close the first fence immediately after the `git warp check`
example and then open a new triple-backtick fence for the Seek command examples
so the `### Time-Travel (Seek)` heading and prose render as Markdown;
specifically, update the area around the `git warp check` block and the `###
Time-Travel (Seek)` / `git warp seek` examples to end the previous ```bash fence
and start a fresh ```bash fence only for the seek commands and the final `git
warp query` snippet.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 6bd66193-4a43-437c-b014-eb699125864c

📥 Commits

Reviewing files that changed from the base of the PR and between 6a055ec and 77bc995.

📒 Files selected for processing (2)
  • CHANGELOG.md
  • README.md

- Change premature [13.1.1] CHANGELOG entry to [Unreleased]
- Restore --clear-cache and --no-persistent-cache to seek docs
- Fix orphaned code block for visualize example (missing opening fence)
- Remove duplicate "seek cursor is active" sentence
- Close unclosed ```bash fence before ### Time-Travel heading (critical:
  entire seek section was rendering as literal code)
- Remove duplicate "User Manual" link that pointed to same docs/GUIDE.md
  already linked as "Guide" in the same paragraph
- Correct "NodeCrypto" to "WebCrypto" for Node.js runtime — CLI and
  WarpGraph use WebCryptoAdapter across all runtimes
- Normalize list markers from `*   ` to `- ` for consistency (8 items)
- Replace bare "Cache management" comment with descriptive per-command
  comments matching the style of adjacent seek examples
@flyingrobots flyingrobots changed the title docs: update README documentation and CHANGELOG docs: enhance README with traversal directory, seek guide, and runtime compat Mar 6, 2026
@github-actions
Copy link

github-actions bot commented Mar 6, 2026

Release Preflight

  • package version: 13.1.0
  • prerelease: false
  • npm dist-tag on release: latest
  • npm pack dry-run: passed
  • jsr publish dry-run: passed

If you tag this commit as v13.1.0, release workflow will publish.

- Add Common Ancestors and Root Ancestors to Graph Traversal Directory
- Update algorithm count from "11+" to 15 (matches actual public API)
- Remove "Fixed" CHANGELOG section that described bugs introduced and
  corrected within this branch — never existed in a released version
@github-actions
Copy link

github-actions bot commented Mar 6, 2026

Release Preflight

  • package version: 13.1.0
  • prerelease: false
  • npm dist-tag on release: latest
  • npm pack dry-run: passed
  • jsr publish dry-run: passed

If you tag this commit as v13.1.0, release workflow will publish.

1 similar comment
@github-actions
Copy link

github-actions bot commented Mar 6, 2026

Release Preflight

  • package version: 13.1.0
  • prerelease: false
  • npm dist-tag on release: latest
  • npm pack dry-run: passed
  • jsr publish dry-run: passed

If you tag this commit as v13.1.0, release workflow will publish.

@flyingrobots
Copy link
Member Author

@coderabbitai Thanks for catching the unclosed code fence — good eye. ✅ Addressed in commits:

  • 1968dda — closed the bash fence after git warp check (line 553), added opening fence for the visualize example, removed duplicate "seek cursor" sentence, corrected NodeCrypto → WebCrypto, normalized list markers
  • bdf0581 — restored dropped --clear-cache / --no-persistent-cache flags
  • a10f89e — completed the traversal directory (added Common Ancestors, Root Ancestors), removed phantom CHANGELOG "Fixed" section

@coderabbitai review 🥕

@coderabbitai
Copy link

coderabbitai bot commented Mar 6, 2026

@flyingrobots Thanks for the thorough follow-through! Great to see all those issues wrapped up across the three commits — the fence closures, crypto adapter correction, flag restoration, and the completed traversal directory all look like solid fixes. Kicking off a fresh review now! 🥕

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Around line 332-346: Update the Architecture description to reflect the
correct algorithm count: change the `GraphTraversal` summary string to say "(15
algorithms, `nodeWeightFn`)" instead of "(11 algorithms, `nodeWeightFn`)" so the
`GraphTraversal` entry matches the 15 algorithms listed and implemented.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 746e559c-c2a1-4b21-b1ac-3f11bba4906a

📥 Commits

Reviewing files that changed from the base of the PR and between b46658e and f0afc04.

📒 Files selected for processing (2)
  • CHANGELOG.md
  • README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • CHANGELOG.md

Comment on lines +332 to +346
### Graph Traversal Directory

git-warp includes a high-performance traversal engine with 15 deterministic algorithms:

| Category | Algorithms |
| :--- | :--- |
| **Search** | BFS, DFS, Shortest Path (Unweighted), Reachability |
| **Weighted** | Dijkstra (Weighted Shortest Path), A*, Bidirectional A* |
| **Analytical** | Topological Sort (Kahn's), Connected Components, Levels (DAG) |
| **Ancestry** | Common Ancestors, Root Ancestors |
| **Reduction** | **Transitive Reduction** (v13.1), **Transitive Closure** (v13.1) |
| **Critical Path** | Weighted Longest Path (DAG) |

All algorithms support `maxDepth`, `maxNodes`, and `AbortSignal` cancellation.

Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Count traversal algorithms in GraphTraversal implementation

echo "Searching for GraphTraversal algorithm implementations..."

# Look for method definitions in GraphTraversal class/module
rg -n -A 2 'class GraphTraversal|export.*GraphTraversal' --type=ts --type=js

# Search for public algorithm methods (common patterns)
rg -n -P '^\s*(public\s+)?(async\s+)?\w+(Path|Sort|Search|Component|Ancestor|Reduction|Closure|Level|Reachable)' \
  --glob '**/GraphTraversal*' --glob '**/graph-traversal*' \
  --type=ts --type=js -C 1

Repository: git-stunts/git-warp

Length of output: 4198


🏁 Script executed:

# Check line 670 in README.md
head -n 670 README.md | tail -n 5

Repository: git-stunts/git-warp

Length of output: 367


🏁 Script executed:

# Find all public methods in GraphTraversal.js
rg -n '^\s*async\s+\w+\(' src/domain/services/GraphTraversal.js | head -20

Repository: git-stunts/git-warp

Length of output: 665


🏁 Script executed:

# Search for BFS and DFS specifically
rg -n 'async (bfs|dfs)' src/domain/services/GraphTraversal.js

Repository: git-stunts/git-warp

Length of output: 98


🏁 Script executed:

# Get total line count of GraphTraversal.js to understand file structure
wc -l src/domain/services/GraphTraversal.js

Repository: git-stunts/git-warp

Length of output: 105


Update line 670 in Architecture section: algorithm count is 15, not 11.

The Graph Traversal Directory table (lines 332-346) correctly lists 15 algorithms, and the GraphTraversal.js implementation confirms all 15 exist. However, line 670's Architecture description still states "11 algorithms" and must be updated to match.

Update line 670 from:

`GraphTraversal` -- unified traversal engine (11 algorithms, `nodeWeightFn`)

to:

`GraphTraversal` -- unified traversal engine (15 algorithms, `nodeWeightFn`)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 332 - 346, Update the Architecture description to
reflect the correct algorithm count: change the `GraphTraversal` summary string
to say "(15 algorithms, `nodeWeightFn`)" instead of "(11 algorithms,
`nodeWeightFn`)" so the `GraphTraversal` entry matches the 15 algorithms listed
and implemented.

@flyingrobots flyingrobots merged commit 91cb598 into main Mar 7, 2026
8 checks passed
@flyingrobots flyingrobots deleted the chore/readme branch March 7, 2026 00:46
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