Found while fixing #15160. Reported by the agent that delivered PR #15168, which deliberately did not edit this file because another change owns it.
What
autobot-backend/knowledge/chat_knowledge_system_e2e_test.py reads response bodies that the routes do not return:
:307 reads data["compiled"]
:325 reads data["context"]
Both routes return the DataResponse envelope — {"success": ..., "data": ...} — so the payload the test wants is one level down, under data.
Why it stayed invisible
The six routes this file exercises were returning HTTP 500 on every call, because of the dead module global fixed in #15160 / PR #15168. Every assertion failed at the status check, long before any body was parsed, so the envelope mismatch never got the chance to be the failure. Fixing #15160 clears the 500s and moves these two tests to a different failure — this one.
That ordering matters for whoever picks this up: do not read a red result here after PR #15168 lands as a regression from that PR. It is a pre-existing defect that #15160 was masking.
Interaction with #14979
PR #15166 converts this file to a collectible, marker-gated live-endpoint test. Depending on merge order, the file may look different by the time this is fixed — reconcile against whichever version is in Dev_new_gui rather than against the line numbers above, which were read from the pre-conversion base.
Acceptance criteria
Refs #15160, #14979, PR #15168, PR #15166.
Found while fixing #15160. Reported by the agent that delivered PR #15168, which deliberately did not edit this file because another change owns it.
What
autobot-backend/knowledge/chat_knowledge_system_e2e_test.pyreads response bodies that the routes do not return::307readsdata["compiled"]:325readsdata["context"]Both routes return the
DataResponseenvelope —{"success": ..., "data": ...}— so the payload the test wants is one level down, underdata.Why it stayed invisible
The six routes this file exercises were returning HTTP 500 on every call, because of the dead module global fixed in #15160 / PR #15168. Every assertion failed at the status check, long before any body was parsed, so the envelope mismatch never got the chance to be the failure. Fixing #15160 clears the 500s and moves these two tests to a different failure — this one.
That ordering matters for whoever picks this up: do not read a red result here after PR #15168 lands as a regression from that PR. It is a pre-existing defect that #15160 was masking.
Interaction with #14979
PR #15166 converts this file to a collectible, marker-gated live-endpoint test. Depending on merge order, the file may look different by the time this is fixed — reconcile against whichever version is in
Dev_new_guirather than against the line numbers above, which were read from the pre-conversion base.Acceptance criteria
DataResponseenvelope, matching what the routes actually return.Refs #15160, #14979, PR #15168, PR #15166.