Skip to content

feat: implement PowerMem LangChain middleware - #1166

Closed
huangda99 wants to merge 1 commit into
oceanbase:vldb_2026from
huangda99:vldb_2026
Closed

huangda99 wants to merge 1 commit into
oceanbase:vldb_2026from
huangda99:vldb_2026

Conversation

@huangda99

Copy link
Copy Markdown
  • Add memory retrieval before model call via before_model/abefore_model
  • Add interaction persistence after agent run via after_agent/aafter_agent
  • Support async operations for LangChain agents
  • Implement fail-open behavior for search errors
  • Add configurable save_interactions option

Team: 大海好多水

- Add memory retrieval before model call via before_model/abefore_model
- Add interaction persistence after agent run via after_agent/aafter_agent
- Support async operations for LangChain agents
- Implement fail-open behavior for search errors
- Add configurable save_interactions option
@CLAassistant

CLAassistant commented Jul 13, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Copy link
Copy Markdown
Member

Thanks for the implementation. I do not think this should be merged as-is yet.

This PR currently only changes packages/powermem-langchain/src/powermem_langchain/middleware.py, and the PR status does not show the required VLDB LangChain package / contract checks on this head. There are also several overlapping middleware submissions open at the same time.

Please coordinate with maintainers on the single implementation we want to keep, and make sure the selected PR carries the expected tests/docs and passes the LangChain package + contract checks before merge.

@LINxiansheng

Copy link
Copy Markdown
Member

LangChain Contract Score

LangChain Contract Score
========================
score: 100.00 / 100
suites: 2
rule: A weighted capability receives credit only when it passes on every configured Python suite and all declared prerequisite capabilities also receive credit. Gate tests are reported but do not add points.

Public import contract: PASS (gate)
  py311: passed
  py312: passed
Retrieve memory before model call: PASS (35/35)
  py311: passed
  py312: passed
Persist interaction after agent run: PASS (25/25)
  py311: passed
  py312: passed
Disable interaction persistence: PASS (10/10)
  py311: passed
  py312: passed
Fail-open on search error: PASS (15/15)
  py311: passed
  py312: passed
Async memory injection: PASS (15/15)
  py311: passed
  py312: passed

LangChain Contract Report

LangChain Contract Report
=========================
score: 100.00 / 100
rule: A weighted capability receives credit only when it passes on every configured Python suite and all declared prerequisite capabilities also receive credit. Gate tests are reported but do not add points.

Suite Summary
-------------
py311: passed=6/6, failures=0, errors=0, skipped=0
py312: passed=6/6, failures=0, errors=0, skipped=0

Gate Checks
-----------
Public import contract [gate] PASS
  - py311: passed
  - py312: passed

Weighted Breakdown
------------------
Retrieve memory before model call [35/35] PASS
  - py311: passed
  - py312: passed
Persist interaction after agent run [25/25] PASS
  - py311: passed
  - py312: passed
Disable interaction persistence [10/10] PASS
  - py311: passed
  - py312: passed
Fail-open on search error [15/15] PASS
  - py311: passed
  - py312: passed
Async memory injection [15/15] PASS
  - py311: passed
  - py312: passed

Workflow run

@PsiACE PsiACE added the vldb 2026 VLDB 2026 contributions label Jul 14, 2026 — with ChatGPT Codex Connector
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vldb 2026 VLDB 2026 contributions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants