From baeef6142d308d8ec8dfa56907c3fdebfeb9db14 Mon Sep 17 00:00:00 2001
From: Pim Hutting
Date: Wed, 29 Oct 2025 11:20:20 +0100
Subject: [PATCH] fix: beliefs now adhere to expected format
[
-before user_said belief was a list of lists of strings, now it's a list of strings
]
[ref]: N25B-206
---
.../belief_collector/behaviours/continuous_collect.py | 8 ++++----
.../agents/mock_agents/belief_text_mock.py | 2 +-
.../behaviours/test_continuous_collect.py | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
rename test/unit/agents/{bdi => belief_collector}/behaviours/test_continuous_collect.py (99%)
diff --git a/src/control_backend/agents/belief_collector/behaviours/continuous_collect.py b/src/control_backend/agents/belief_collector/behaviours/continuous_collect.py
index b94dbd9..50986cd 100644
--- a/src/control_backend/agents/belief_collector/behaviours/continuous_collect.py
+++ b/src/control_backend/agents/belief_collector/behaviours/continuous_collect.py
@@ -62,7 +62,7 @@ class ContinuousBeliefCollector(CyclicBehaviour):
Expected payload:
{
"type": "belief_extraction_text",
- "beliefs": {"user_said": [["hello","test"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
+ "beliefs": {"user_said": ["hello"","Can you help me?","stop talking to me","No","Pepper do a dance"]}
}
@@ -82,9 +82,9 @@ class ContinuousBeliefCollector(CyclicBehaviour):
return
logger.info("BeliefCollector: forwarding %d beliefs.", len(beliefs))
- for belief_name, belief_lists in beliefs.items():
- for args in belief_lists:
- logger.info(" - %s %s", belief_name, " ".join(map(str, args)))
+ for belief_name, belief_list in beliefs.items():
+ for belief in belief_list:
+ logger.info(" - %s %s", belief_name,str(belief))
await self._send_beliefs_to_bdi(beliefs, origin=origin)
diff --git a/src/control_backend/agents/mock_agents/belief_text_mock.py b/src/control_backend/agents/mock_agents/belief_text_mock.py
index d8a223f..607c2f5 100644
--- a/src/control_backend/agents/mock_agents/belief_text_mock.py
+++ b/src/control_backend/agents/mock_agents/belief_text_mock.py
@@ -12,7 +12,7 @@ class BeliefTextAgent(Agent):
# Send multiple beliefs in one JSON payload
payload = {
"type": "belief_extraction_text",
- "beliefs": {"user_said": [["hello test"],["Can you help me?"],["stop talking to me"],["No"],["Pepper do a dance"]]}
+ "beliefs": {"user_said": ["hello test","Can you help me?","stop talking to me","No","Pepper do a dance"]}
}
msg = Message(to=to_jid)
diff --git a/test/unit/agents/bdi/behaviours/test_continuous_collect.py b/test/unit/agents/belief_collector/behaviours/test_continuous_collect.py
similarity index 99%
rename from test/unit/agents/bdi/behaviours/test_continuous_collect.py
rename to test/unit/agents/belief_collector/behaviours/test_continuous_collect.py
index c603048..7629fe5 100644
--- a/test/unit/agents/bdi/behaviours/test_continuous_collect.py
+++ b/test/unit/agents/belief_collector/behaviours/test_continuous_collect.py
@@ -155,7 +155,7 @@ async def test_belief_text_values_not_lists(continuous_collector, mocker):
async def test_belief_text_happy_path_logs_items_and_sends(continuous_collector, mocker):
payload = {
"type": "belief_extraction_text",
- "beliefs": {"user_said": [["hello", "test"], ["No"]]}
+ "beliefs": {"user_said": ["hello test", "No"]}
}
# Your code calls self.send(..); patch it (or switch implementation to self.agent.send and patch that)
continuous_collector.send = AsyncMock()