Skip to content

docs: surface mentions for temporal-validity (post-RFC ship)#542

Merged
memtomem merged 1 commit intomainfrom
docs/temporal-validity-surface
Apr 29, 2026
Merged

docs: surface mentions for temporal-validity (post-RFC ship)#542
memtomem merged 1 commit intomainfrom
docs/temporal-validity-surface

Conversation

@memtomem
Copy link
Copy Markdown
Owner

Summary

Temporal-validity RFC v1 shipped all 7 goals on main (#533/#534/#538/#539/#540), but the implementation PRs deliberately deferred user-facing docs. This adds the minimum surface mentions required by feedback_doc_update_process.md — new MCP tool param + new CLI flag should ship with same-PR reference docs.

The comprehensive conceptual guide is not in this PR. It lives in the private memtomem-docs repo and gets promoted to docs/guides/temporal-validity.md after one minor version bump (PROMOTION-CRITERIA #1) and a source-of-truth audit. This PR is the in-the-meantime reference touch only.

Why now (and not in #538/#539/#540)

The feature is opt-in via frontmatter — users do not encounter as_of until they explicitly add valid_from / valid_to to a chunk. So shipping the surface PRs without same-PR docs did not break any user's expectations. But feedback_doc_update_process.md says new CLI/MCP surface should be discoverable in reference.md / mcp-clients.md, so this is the catch-up.

Scope

  • docs/guides/reference.md:
    • mem_search parameters table → one as_of row (format, default, opt-in semantics)
    • mem_search examples → one historical-query example
    • Post-rerank shrinkage caveat → verbatim from server/tools/search.py docstring (parallels existing source_filter / tag_filter caveat shape)
    • CLI quick-reference → one mm search --as-of line + a mm recall Validity-column parenthetical
  • docs/guides/mcp-clients.md:
    • Tool inventory mem_search row → (... optional as_of for temporal-validity queries) parenthetical

README.md / packages/memtomem/README.md Key Features bullets intentionally left untouched — they sit at the "what is memtomem" abstraction level, and a per-parameter mention would be out of scale. Revisit if temporal-validity grows into a positioning differentiator after the v2 supersession layer.

Source-of-truth verification (per feedback_docs_as_tests.md)

Doc claim Source
mem_search(as_of=...) packages/memtomem/src/memtomem/server/tools/search.py:38
mm search --as-of packages/memtomem/src/memtomem/cli/search.py:22
mm recall Validity column (conditional) packages/memtomem/src/memtomem/cli/memory.py:163-179
Result-count contract wording matches server/tools/search.py:65-68 verbatim
Format YYYY-MM-DD / YYYY-QN _parse_validity_bound accepts both shapes

Test plan

  • CI green (markdown rendering only — no code paths touched)
  • Render docs/guides/reference.md and confirm as_of row reads cleanly inside the existing parameter table
  • Render docs/guides/mcp-clients.md and confirm the mem_search cell does not overflow visually with the added parenthetical
  • Confirm mm search --as-of 2024-Q3 "deploy" in the CLI quick-reference matches the actual --as-of flag (already verified in source check above)

🤖 Generated with Claude Code

Temporal-validity RFC v1 shipped all 7 goals on main 2026-04-29
(#533/#534/#538/#539/#540), but the implementation PRs deliberately
deferred user-facing docs because (a) the feature is opt-in via
frontmatter — users don't encounter ``as_of`` until they edit — and
(b) PROMOTION-CRITERIA #1 ("no breaking changes for at least 2
release cycles or 1 minor version bump") is not yet met for a
full standalone guide.

This adds the *minimum* surface mentions per
``feedback_doc_update_process.md`` (new CLI flag / MCP tool param
need same-PR reference doc), without inflating into a conceptual
guide. Comprehensive explanation lives in private docs and gets
promoted to ``docs/guides/temporal-validity.md`` after one minor
version bump and a source-of-truth audit.

Surface mentions:

- ``docs/guides/reference.md`` ``mem_search`` parameters table:
  one row for ``as_of`` covering format (``YYYY-MM-DD`` /
  ``YYYY-QN``), default semantics, and opt-in behavior.
- ``docs/guides/reference.md`` ``mem_search`` examples: one
  historical-query example.
- ``docs/guides/reference.md`` post-rerank result-count contract
  blockquote, parallel to the existing ``source_filter`` /
  ``tag_filter`` shrinkage caveat (verbatim from the
  ``mem_search`` docstring).
- ``docs/guides/reference.md`` CLI quick-reference: one
  ``mm search --as-of`` line + a ``mm recall`` Validity-column
  parenthetical.
- ``docs/guides/mcp-clients.md`` tool inventory: ``mem_search``
  row gains an ``optional as_of for temporal-validity queries``
  parenthetical (matches the abstraction level of the rest of
  the row).

``README.md`` and ``packages/memtomem/README.md`` features lists
deliberately not touched — those bullets are positioning at the
"what is memtomem" level, and a per-parameter mention would be
out of scale. Will be revisited if temporal-validity becomes a
positioning differentiator after the v2 supersession layer
lands.

Source-of-truth verification (per
``feedback_docs_as_tests.md``):

- ``mem_search(as_of=...)`` →
  ``packages/memtomem/src/memtomem/server/tools/search.py:38``
- ``mm search --as-of`` →
  ``packages/memtomem/src/memtomem/cli/search.py:22``
- ``mm recall`` Validity column (conditional) →
  ``packages/memtomem/src/memtomem/cli/memory.py:163-179``
- Result-count contract wording matches the docstring at
  ``server/tools/search.py:65-68`` verbatim.

Co-Authored-By: Claude <[email protected]>
@memtomem memtomem merged commit 4685fe9 into main Apr 29, 2026
7 checks passed
@memtomem memtomem deleted the docs/temporal-validity-surface branch April 29, 2026 04:48
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 29, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants