Skip to content

docs: reassess cherry-pick-1085 — absorbed into fork architecture (#165) - #197

Merged
jphein merged 1 commit into
mainfrom
chore/drop-stale-1085
May 25, 2026
Merged

docs: reassess cherry-pick-1085 — absorbed into fork architecture (#165)#197
jphein merged 1 commit into
mainfrom
chore/drop-stale-1085

Conversation

@jphein

@jphein jphein commented May 25, 2026

Copy link
Copy Markdown
Collaborator

Summary

Issue #165 asked to drop the MemPalace#1085 cherry-pick (commit 6be6fff) on
the next upstream sync, on the premise that upstream MemPalace#1185 (merged)
had fully superseded it. That premise held on 2026-05-16 but is no
longer accurate. This PR reassesses the entry, marks it as absorbed
into fork architecture
rather than "drop on next sync", and
regenerates FORK_CHANGELOG.md.

Why not drop

In the 73 commits to miner.py / convo_miner.py / format_miner.py
since the cherry-pick landed, the fork built on top of these
primitives in ways upstream MemPalace#1185 does not provide:

  1. add_drawers() is a fork-only public API — upstream perf(mining): batch per-chunk upserts + optional GPU acceleration MemPalace/mempalace#1185
    inlined batching into process_file and exposed no public batch
    function. The fork's add_drawers returns the fork-only
    (added, batch_ids, warnings) tuple wired to room-taxonomy
    validation (feat: soft-warn on non-canonical room names instead of hard FK rejection #86) and is consumed by tests/test_room_taxonomy.py.
  2. DRAWER_UPSERT_BATCH_SIZE / CHROMA_BATCH_LIMIT sub-batching
    knobs
    — upstream does one giant upsert per file (OOM risk on
    pathological files); the fork sub-batches in groups of 1000. The
    knob is referenced from miner.py, convo_miner.py, and
    format_miner.py, and monkeypatched by test_miner.py /
    test_convo_miner_unit.py to drive the sub-batch loops.
  3. _build_drawer_metadata carries fork-only Tier 6a extensions
    (line_start, line_end, content_date) that closet pointers
    depend on. Tested at tests/test_miner.py.

Test plan

  • scripts/check-docs.sh passes (5/5 checks green)
  • Render is idempotent — FORK_CHANGELOG.md matches the YAML
  • All fork commit hashes still resolve
  • All upstream PR states still match

No source changes — docs only.

Closes #165.

Issue #165 asked to drop the MemPalace#1085 cherry-pick on the next upstream
sync, on the premise that upstream MemPalace#1185 (merged) had superseded it.
That premise held on 2026-05-16 but is no longer accurate: in the 73
commits to miner.py / convo_miner.py / format_miner.py since the
cherry-pick landed, the fork built on top of these primitives in ways
upstream MemPalace#1185 does not provide:

1. add_drawers() is a fork-only public API that returns
   (added, batch_ids, warnings) and is wired to room-taxonomy
   validation (#86). Consumed by test_room_taxonomy.py.
2. DRAWER_UPSERT_BATCH_SIZE / CHROMA_BATCH_LIMIT sub-batching knob —
   upstream does one giant upsert per file (OOM risk on pathological
   files); fork sub-batches in groups of 1000. Used from miner.py,
   convo_miner.py, format_miner.py and monkeypatched by tests.
3. _build_drawer_metadata carries fork-only Tier 6a extensions
   (line_start, line_end, content_date) that closet pointers depend
   on. Tested at tests/test_miner.py.

Updates the fork-changes.yaml entry to mark the cherry-pick as
"absorbed into fork architecture" rather than "drop on next sync",
and regenerates FORK_CHANGELOG.md from the YAML.

Closes #165.
Copilot AI review requested due to automatic review settings May 25, 2026 00:53
@gemini-code-assist

Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request updates the project documentation to correct the status of a previous cherry-pick. It clarifies that the changes from MemPalace#1085 remain essential to the fork's architecture due to specific public APIs, sub-batching knobs, and metadata extensions that are not present in the upstream implementation.

Highlights

Ignored Files
  • Ignored by pattern: FORK_CHANGELOG.md (1)
    • FORK_CHANGELOG.md
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request updates the docs/fork-changes.yaml manifest to document the decision to retain a previously integrated cherry-pick, detailing specific fork-only architectural features that justify its continued use. The reviewer feedback focuses on improving documentation consistency by recommending the use of full repository-relative paths for all source and test file references mentioned in the text.

Comment thread docs/fork-changes.yaml
Comment on lines +2129 to +2130
architecture*. Over the 73 commits to ``miner.py``,
``convo_miner.py``, and ``format_miner.py`` since the cherry-pick

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

For consistency with other file references in this manifest (e.g., line 2135 and line 34), please use the full repository-relative paths for these source files.

      architecture*. Over the 73 commits to ``mempalace/miner.py``,
      ``mempalace/convo_miner.py``, and ``mempalace/format_miner.py`` since the cherry-pick

Comment thread docs/fork-changes.yaml
``process_file`` and exposed no public batch function. The
fork's ``add_drawers`` returns the fork-only
``(added, batch_ids, warnings)`` tuple wired to room-taxonomy
validation (#86) and is consumed by ``test_room_taxonomy.py``.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Please use the full path for the test file to match the project's documentation style (e.g., line 2150).

         validation (#86) and is consumed by ``tests/test_room_taxonomy.py``.

Comment thread docs/fork-changes.yaml
Comment on lines +2144 to +2146
``miner.py``, ``convo_miner.py``, and ``format_miner.py``,
and monkeypatched by ``test_miner.py`` /
``test_convo_miner_unit.py`` to drive the sub-batch loops.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

To maintain consistency across the manifest, file references should include their directory prefixes (e.g., mempalace/ for source files and tests/ for test files).

         ``mempalace/miner.py``, ``mempalace/convo_miner.py``, and ``mempalace/format_miner.py``,
         and monkeypatched by ``tests/test_miner.py`` /
         ``tests/test_convo_miner_unit.py`` to drive the sub-batch loops.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Updates the fork-change documentation to reflect that the upstream MemPalace#1085 cherry-pick should be retained (it’s now considered “absorbed into fork architecture”), rather than being dropped on the next upstream sync, and regenerates the rendered changelog from the canonical YAML manifest.

Changes:

  • Reassesses the cherry-pick-1085 entry text to document why it’s no longer redundant with upstream MemPalace#1185.
  • Regenerates FORK_CHANGELOG.md from docs/fork-changes.yaml to keep rendered docs in sync.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
FORK_CHANGELOG.md Updates the rendered changelog entry with the new “reassessed and kept” narrative for cherry-pick MemPalace#1085.
docs/fork-changes.yaml Updates the canonical manifest entry body for cherry-pick MemPalace#1085 (source for changelog rendering).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread FORK_CHANGELOG.md
Comment on lines 1832 to +1834
cherry-pick is now a no-op against develop; drop on next sync.
**2026-05-24:** reassessed and kept — *absorbed into fork
architecture*. Over the 73 commits to ``miner.py``,
Comment thread FORK_CHANGELOG.md
``process_file`` and exposed no public batch function. The
fork's ``add_drawers`` returns the fork-only
``(added, batch_ids, warnings)`` tuple wired to room-taxonomy
validation (#86) and is consumed by ``test_room_taxonomy.py``.
Comment thread docs/fork-changes.yaml
Comment on lines 2127 to +2130
cherry-pick is now a no-op against develop; drop on next sync.
**2026-05-24:** reassessed and kept — *absorbed into fork
architecture*. Over the 73 commits to ``miner.py``,
``convo_miner.py``, and ``format_miner.py`` since the cherry-pick
Comment thread docs/fork-changes.yaml
``process_file`` and exposed no public batch function. The
fork's ``add_drawers`` returns the fork-only
``(added, batch_ids, warnings)`` tuple wired to room-taxonomy
validation (#86) and is consumed by ``test_room_taxonomy.py``.
@jphein
jphein merged commit 661820e into main May 25, 2026
2 of 5 checks passed
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.

Drop stale #1085 cherry-pick on next upstream sync

2 participants