Merge pull request #137 from igorls/fix/bounded-queries

fix: add limit=10000 safety cap to all unbounded ChromaDB .get() calls
This commit is contained in:
Ben Sigman
2026-04-07 16:05:17 -07:00
committed by GitHub
+5 -4
View File
@@ -68,7 +68,7 @@ def tool_status():
wings = {} wings = {}
rooms = {} rooms = {}
try: try:
all_meta = col.get(include=["metadatas"])["metadatas"] all_meta = col.get(include=["metadatas"], limit=10000)["metadatas"]
for m in all_meta: for m in all_meta:
w = m.get("wing", "unknown") w = m.get("wing", "unknown")
r = m.get("room", "unknown") r = m.get("room", "unknown")
@@ -125,7 +125,7 @@ def tool_list_wings():
return _no_palace() return _no_palace()
wings = {} wings = {}
try: try:
all_meta = col.get(include=["metadatas"])["metadatas"] all_meta = col.get(include=["metadatas"], limit=10000)["metadatas"]
for m in all_meta: for m in all_meta:
w = m.get("wing", "unknown") w = m.get("wing", "unknown")
wings[w] = wings.get(w, 0) + 1 wings[w] = wings.get(w, 0) + 1
@@ -140,7 +140,7 @@ def tool_list_rooms(wing: str = None):
return _no_palace() return _no_palace()
rooms = {} rooms = {}
try: try:
kwargs = {"include": ["metadatas"]} kwargs = {"include": ["metadatas"], "limit": 10000}
if wing: if wing:
kwargs["where"] = {"wing": wing} kwargs["where"] = {"wing": wing}
all_meta = col.get(**kwargs)["metadatas"] all_meta = col.get(**kwargs)["metadatas"]
@@ -158,7 +158,7 @@ def tool_get_taxonomy():
return _no_palace() return _no_palace()
taxonomy = {} taxonomy = {}
try: try:
all_meta = col.get(include=["metadatas"])["metadatas"] all_meta = col.get(include=["metadatas"], limit=10000)["metadatas"]
for m in all_meta: for m in all_meta:
w = m.get("wing", "unknown") w = m.get("wing", "unknown")
r = m.get("room", "unknown") r = m.get("room", "unknown")
@@ -406,6 +406,7 @@ def tool_diary_read(agent_name: str, last_n: int = 10):
results = col.get( results = col.get(
where={"$and": [{"wing": wing}, {"room": "diary"}]}, where={"$and": [{"wing": wing}, {"room": "diary"}]},
include=["documents", "metadatas"], include=["documents", "metadatas"],
limit=10000,
) )
if not results["ids"]: if not results["ids"]: