Skip to content

feat(langchain): add LC-103 human-review approval gate - #113

Open
Mantitah wants to merge 1 commit into
trustabl:mainfrom
Mantitah:main
Open

feat(langchain): add LC-103 human-review approval gate#113
Mantitah wants to merge 1 commit into
trustabl:mainfrom
Mantitah:main

Conversation

@Mantitah

Copy link
Copy Markdown

Fork of Trustabl’s rule repository, extended with LC-103, a LangChain v1 detection rule for dangerous create_agent configurations that lack visible human-review prerequisites.

@jhumel-code

Copy link
Copy Markdown
Collaborator

Thanks @Mantitah. The rule is schema clean: every required field is set, there are no extra keys, confidence is in range, language is explicit, and langchain_agent is a valid applies_to for agent scope. All four predicates already exist on main at schema 14, so no version bump is needed, and I like that the explanation is honest that middleware presence does not prove HumanInTheLoopMiddleware is actually wired.

My concern is overlap. LC-101 in langchain/agent_safety.yaml already fires at langchain_agent on exactly these three hosted classes with no further condition, so every LC-103 hit is also an LC-101 hit and a create_agent wiring PythonREPLTool would emit two high findings for one call site. On top of that, a checkpointer passed in when a parent graph is compiled is invisible to us, so the missing-checkpointer arm will fire on correct code. Please drop LC-103 to medium (LC-101 stays the capability call, LC-103 the gate refinement), or narrow the match so it is not a strict subset of LC-101.

Two notes that are not on you. LC-103 is also claimed by #103 and #108 for an unrelated Requests built-in rule, so whoever lands second renumbers. And a shipped rule needs a rationale doc in trustabl-rulebook; we can write that or pair on it.

The engine half at trustabl/trustabl#186 mirrors this byte for byte, which is right. Happy to take this once severity is settled.

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.

2 participants