Skip to content

History

Revisions

  • Updated release notes.

    @uhop uhop committed Jul 17, 2026
    ace36db
  • Added more docs.

    @uhop uhop committed Jul 17, 2026
    7a33d2f
  • Documented changes.

    @uhop uhop committed Jul 17, 2026
    9f60f21
  • Added an example for a plain hand-rolled adapter.

    @uhop uhop committed Jul 16, 2026
    c89ae0a
  • Added docs for adapters.

    @uhop uhop committed Jul 16, 2026
    f69eb92
  • Added adapters.

    @uhop uhop committed Jul 16, 2026
    4ad495f
  • Up to the standards.

    @uhop uhop committed Jul 16, 2026
    80e9dae
  • Added shields.

    @uhop uhop committed Jun 29, 2026
    7446028
  • Updated hook docs.

    @uhop uhop committed Jun 29, 2026
    28219ec
  • More recipes.

    @uhop uhop committed Apr 23, 2026
    ac26ba8
  • Updated release notes.

    @uhop uhop committed Apr 23, 2026
    8082213
  • Recipe: querying subtree.

    @uhop uhop committed Apr 23, 2026
    da64786
  • Recipies: cascade + index.

    @uhop uhop committed Apr 23, 2026
    14f7cc3
  • Recipies: cascade + index.

    @uhop uhop committed Apr 23, 2026
    cd408c3
  • Added recipe on "keys only" GSI.

    @uhop uhop committed Apr 23, 2026
    cf02af4
  • Added a guide on key selection.

    @uhop uhop committed Apr 23, 2026
    b5c8f09
  • Added the auto-release recipe.

    @uhop uhop committed Apr 23, 2026
    1b34385
  • Updated docs.

    @uhop uhop committed Apr 23, 2026
    96af3a4
  • Updated hooks.

    @uhop uhop committed Apr 23, 2026
    685503e
  • Release-notes: date 3.7.0 entry.

    @uhop uhop committed Apr 23, 2026
    4d9b11a
  • Recipe book: three sparse-index patterns for tier listing (F10 trio). First tranche of the pattern-first wiki content promised in the `project_wiki_recipe_book` memory — SQL-minded DynamoDB users land on the wiki wanting to answer "how do I list all records of type X", and the base-table Query can't do that. These three recipes cover the full design space for the question. - **Recipe: List records of a tier** (`Recipe:-List-records-of-a-tier`) — Pattern 1. Single sparse GSI keyed on the auto-populated `typeField`. Simplest cross-partition tier listing: one GSI, every record indexed, one Query per tier. Hot-partition ceiling + sharding escape hatch noted. - **Recipe: Per-tier sparse GSI markers** (`Recipe:-Per-tier-sparse-GSI-markers`) — Pattern 2. One sparse GSI per tier, with tier-specific marker attributes. Per-tier projection control, lower write amplification on tiers the index doesn't cover, and sharded-marker variant for leaf-tier scale past 3000 RCU / 1000 WCU per partition. - **Recipe: List records of a tier within a partition** (`Recipe:-List-records-of-a-tier-within-a-partition`) — Pattern 3. Sparse LSI. Cheap (shares base partition) when the listing is always scoped to a known partition value. 10 GB partition cap flagged; `typeField`-based non-sparse variant shown as an alternative that skips a custom prepare hook. Each recipe follows the house style: SQL-equivalent question up top, why DynamoDB can't answer it natively, the pattern, concrete code for both declaration and query, cost/scale trade-offs, "when this fits" and "when it doesn't" sections, and cross-links to the other patterns so users land on the right one. Home.md picks up a `## Recipes` section linking all three. **Not in this commit (deferred to later tranches).** Recipes for `buildKey` shapes, filter URL grammar, text search, cascade, OC, resumable mass ops, provisioning. The F10 trio was the critical gap (new 3.7.0 surface that users won't discover without pedagogy); the rest are incremental and can ship asynchronously. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    @uhop uhop committed Apr 23, 2026
    a260b1c
  • Rename colon-bearing filenames to fullwidth colon (Windows fix) + update wiki for 3.7.0. **Windows-safe page names.** Filenames like `Adapter:-Hooks.md` break `git clone` / checkout on Windows (the filesystem reserves ASCII `:`). Replaced `:` with U+FF1A FULLWIDTH COLON `:` in 13 page filenames: Adapter:-Batch-builders.md Adapter:-CRUD-methods.md Adapter:-Constructor-options.md Adapter:-Hooks.md Adapter:-Indirect-indices.md Adapter:-Mass-methods.md Adapter:-Raw-marker.md Adapter:-Transaction-auto-upgrade.md Expressions:-Condition-builder.md Expressions:-Filter-builder.md Expressions:-Projection-builder.md Expressions:-Update-builder.md Migration:-v2-to-v3.md All intra-wiki cross-references rewritten (~79 sites). Display in GitHub Wiki is "Adapter: Constructor options" — fullwidth colon is slightly wider but reads the same and is filesystem-safe on Linux / macOS / Windows. **Content updates for 3.7.0.** - **`Release-notes.md`** — new `3.7.0 — unreleased` entry covering filter-grammar flip, option renames (`fFilter` → `filter`, `filter` → `search`, `buildFilter` → `buildSearch`), polymorphic clause shape, `planTable`/`ensureTable` split, `buildKey` simplification (default children, `{self}`, `{partial}`, drop `kind: 'exact'`), `putItems` versioning, descriptor hiding, and additions (`typeField`, `getListUnder`, `filterable {ops, type}`, `stampCreatedAtISO` / `stampCreatedAtEpoch`, index `pk`/`sk` string shorthand, shorthand declaration knobs, example refresh + TS mirror). - **`Adapter:-Constructor-options.md`** — rewritten from 7 options to the full 3.7.0 surface (~20 options) grouped by purpose (required, technical-fields machinery, structural key, type tags, indices, filter grammar, text search, concurrency, cascade gate, descriptor, projection + hooks). Added an end-to-end "typical hierarchical adapter" example. - **`Adapter:-CRUD-methods.md`** — renamed `getAll` / `getAllByParams` to `getList` / `getListByParams` (old names were deprecated in 3.1.2); added `getListUnder` sugar, `buildKey` with new shapes, `edit` and `editListByParams` (landed 3.3.0), `typeOf`, and `applyFilter`. Expanded `ListOptions` to match the 3.7.0 shape. - **`HTTP-handler.md`** — URL grammar updated from `?filter=` to `?<op>-<field>=` + `?search=`. Route table reflects `putItems` / `deleteListByParams` / etc. names. - **`REST-core.md`** — split `parseFilter` (now structured clauses) and `parseSearch` (free-form search-text). New sub-section documenting the `<op>-<field>=<value>` grammar. - **`Expressions:-Filter-builder.md`** — rewritten for `buildSearch` (was `buildFilter` pre-3.7.0). Explicit 3.7.0-rename callout. `buildFilterByExample` doc unchanged. - **Other pages** (`Adapter.md`, `Concepts.md`, `Getting-started.md`, `Home.md`, `Adapter:-Mass-methods.md`, `Adapter:-Hooks.md`, `Adapter:-Indirect-indices.md`, `Expressions:-Condition-builder.md`, `Expressions:-Projection-builder.md`, `Batch-and-transactions.md`, `Mass-operations.md`, `Migration:-v2-to-v3.md`) — mechanical rename of the still-present `getAll` / `putAll` / `cloneAllByParams` / `moveAllByParams` / `deleteAllByParams` / `buildFilter` identifiers to the post-3.1.2 names. **Not covered (Phase 7b — deferred).** New recipe pages for the F10 sparse-GSI patterns + other hierarchical recipes. Wait until this foundation lands, then build on top. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    @uhop uhop committed Apr 23, 2026
    7e1bec2
  • Updated release notes.

    @uhop uhop committed Apr 22, 2026
    418b0ba
  • Updated release notes.

    @uhop uhop committed Apr 22, 2026
    1655d0f
  • Added info on adapters.

    @uhop uhop committed Apr 20, 2026
    3eb1394
  • Added release notes.

    @uhop uhop committed Apr 19, 2026
    b8168e4
  • Updated docs.

    @uhop uhop committed Apr 19, 2026
    6c43d34
  • Docs on `backoff()`.

    @uhop uhop committed Apr 19, 2026
    66f34c3
  • Added cancellation explanation.

    @uhop uhop committed Apr 19, 2026
    92b32e8
  • Added transaction options.

    @uhop uhop committed Apr 19, 2026
    91b5945