Skip to content

docs: add Building section and refresh Status in README - #10

Merged
zzylol merged 2 commits into
mainfrom
docs/build-readme
May 28, 2026
Merged

zzylol merged 2 commits into
mainfrom
docs/build-readme

Conversation

@zzylol

@zzylol zzylol commented May 28, 2026

Copy link
Copy Markdown
Contributor

What

  • Add a Building section to the README documenting the one non-obvious prerequisite: crates/lower depends on the private ProjectASAP/promql-parser fork as a git dependency, so cargo needs GitHub auth to clone it. Documents the clean gh auth login + gh auth setup-git path and a plain cargo build.
  • Refresh the Status section: was "design phase, no code has landed"; now reflects the buildable workspace (crates/core, crates/lower).

Verification

  • cargo build — clean, both crates compile.
  • Forced cold re-fetch of the private dependency (cleared cargo git cache) — cargo fetch re-clones successfully.
  • Clean-room test of the documented path: temporarily disabled the personal url.insteadOf token rewrite in the global gitconfig, cleared the cache, and re-fetched — the gh credential helper authenticated the private clone successfully (rc=0). Config restored byte-for-byte afterward. This confirms the README's gh auth instructions work on a fresh machine, not just via a pre-existing token.

🤖 Generated with Claude Code

zzylol and others added 2 commits May 27, 2026 19:32
Document the one non-obvious build prerequisite (private promql-parser
git dependency requires GitHub auth via gh) and a plain cargo build.
Update Status from "design phase, no code" to reflect the buildable
core + lower crates.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Ignore the build output dir; Cargo.lock stays tracked.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zzylol
zzylol merged commit a489f95 into main May 28, 2026
1 check passed
@zzylol
zzylol deleted the docs/build-readme branch May 28, 2026 01:48
zzylol added a commit that referenced this pull request Aug 24, 2026
Restructure the flat 19-section developer guide into the three-part
structure the doc owner asked for: Part 1 - Code Architecture, Part 2
- Interfaces and Definitions, Part 3 - How to Add X, Y, Z (each ending
in how to verify). Content is moved, not rewritten:

Part 1 (Mental model first, per doc-owner follow-up, then a new
whole-PR architecture diagram, then "How the current pieces fit
together"):
- old #1 Mental model -> Part 1 #1
- new: whole-PR architecture diagram (TargetSubDAG's two entry points
  through ReplacementStrategy, PlanSpace/cost_sorted, explanation.rs,
  to a downstream consumer) -> Part 1 #2
- old #3 How the current pieces fit together -> Part 1 #3

Part 2:
- old Terminology's "Implementation" definition merged into the
  Glossary as one more entry (### Implementation), next to
  ReplacementStrategy
- old #2 Glossary -> Part 2 #1 (plus the merged Implementation entry
  and old #10 Matcher, retitled to match glossary-entry style)
- old #10 Matcher (implementation.rs) -> ### Matcher inside the
  Glossary; implementation.rs no longer exists, so the stale title
  is fixed
- old #19's definitional content (ReplacementExplanation/
  ExplanationKind shapes, node_hash, why there's no ExplanationRule
  trait, location-text ownership) -> Part 2 #2

Part 3:
- old #4, #5, #6, #7, #13, #14 -> Part 3 #1, Adding a new
  ReplacementStrategy (ending in Testing a new strategy)
- old #8, #9, #15 -> Part 3 #2, Adding or customizing a CostModel
  (ending in Testing a new cost model)
- old #12 -> Part 3 #3, Adding a new sketch algorithm, with its
  stale implementation.rs/binder references fixed to replacement.rs/
  construct_summary vocabulary, plus a new "Verifying a new sketch
  algorithm" close grounded in the existing coverage-matrix tests
- old #11, #16, #17, #18 -> Part 3 #4-#7 (capstone + closing
  reference material); #18's extension-map table's implementation.rs
  row fixed to replacement.rs
- old #19's "Using it"/"Adding a new kind" content -> Part 3 #8,
  Using and extending explanation.rs

cargo build --workspace --all-targets is clean (docs-only change).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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