Skip to content

docs: add real directory structure to README + reconcile migration-plan - #64

Merged
zzylol merged 1 commit into
mainfrom
docs/reconcile-migration-and-dir-structure
Jul 2, 2026
Merged

docs: add real directory structure to README + reconcile migration-plan#64
zzylol merged 1 commit into
mainfrom
docs/reconcile-migration-and-dir-structure

Conversation

@zzylol

@zzylol zzylol commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Addresses @milindsrivastava1997's feedback on #57 ("show the new directory structure; the DAG is confusing and fits a lot into asap-ir").

README.md

  • Replaced the ASCII crate-DAG (ambiguous arrows) with an unambiguous dependency table (crate → role → depends-on → LOC) + the single invariant: everything depends on asap-ir; asap-ir depends on nothing above it.
  • Added a real file-level crates/ tree that exposes asap-ir's internals (relational / query_expr / agg_intent / lower / binder / schema / …) — so it's no longer a black box.
  • Added a "Why asap-ir holds the most" note: L2 + L3 live in one crate because the L2→L3 converter needs both (front ends only emit L2); the modules are cleanly separated and can split later if it grows.

docs/migration-plan.md

  • Status banner + per-phase "As landed" notes reconciling the plan (single core crate) with what shipped (the layer-named split, L1–3 only; L4/L5 framework pending).
  • Fixed stale asap-control-coreasap-ir, asap-control-optimizerasap-plan.

docs/promql-lowering.md

  • asap-control-lowerasap-frontend-promql; crates/corecrates/ir.

Docs only. This is the companion to #63 (which reconciled design.md + the README consumption modes).

🤖 Generated with Claude Code

Follow-up to the reorg doc reconciliation (addresses @milind's #57 feedback:
"show the new directory structure; the DAG is confusing and fits a lot into
asap-ir").

README.md:
- Replace the ASCII crate-DAG (ambiguous arrows) with an unambiguous
  dependency TABLE (crate → role → depends-on → LOC) + the one invariant
  (everything depends on asap-ir; asap-ir depends on nothing above it).
- Add a real file-level `crates/` directory tree that exposes asap-ir's
  internals (relational / query_expr / agg_intent / lower / binder / schema /
  …), so it's no longer a black box.
- Add a "Why asap-ir holds the most" note: L2 + L3 live together because the
  L2→L3 converter needs both; modules are separable later if it grows.

docs/migration-plan.md:
- Status banner: Phases 0–1 landed but split into the layer-named stack, not
  the single `core` crate; Phases 2–7 pending.
- "As landed" notes on Phase 0 (crate set) and Phase 1 (L1–3 shipped as
  separate crates + a refactored fork; L4/L5 framework not built).
- Stale names: asap-control-core -> asap-ir, asap-control-optimizer -> asap-plan.

docs/promql-lowering.md:
- asap-control-lower -> asap-frontend-promql; crates/core -> crates/ir.

Docs only.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@zzylol
zzylol merged commit c770165 into main Jul 2, 2026
1 check passed
@zzylol
zzylol deleted the docs/reconcile-migration-and-dir-structure branch July 2, 2026 17:24
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