# check_perm.dspy dbname = get_module_dbname('rbac') async with DBPools().sqlorContext(dbname) as sor: # Get all 'any' role permissions rp = await sor.sqlExe("SELECT permid FROM rolepermission WHERE roleid='any'", {}) permids = [getattr(r, "permid", "") for r in (rp or [])] # Check permission table for these IDs result = [] for pid in permids[:10]: perm = await sor.sqlExe("SELECT * FROM permission WHERE id=${p}$", {"p": pid}) if perm: d = perm[0].to_dict() if hasattr(perm[0], 'to_dict') else {} result.append(d) else: result.append({"permid": pid, "error": "not found"}) return json.dumps({"perm_count": len(permids), "sample": result}, ensure_ascii=False, default=str)