deploy: update habadashi_login
Browse files
app.py
CHANGED
|
@@ -287,19 +287,26 @@ if private_app_dir:
|
|
| 287 |
# --- Inject Org Context Getter (for HF dataset namespace) ---
|
| 288 |
try:
|
| 289 |
from lib.hf_storage import set_org_context_getter
|
| 290 |
-
from supabase_logger import get_user_context
|
| 291 |
|
| 292 |
def get_org_for_storage():
|
| 293 |
-
"""
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
|
| 298 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 299 |
return None
|
| 300 |
|
| 301 |
set_org_context_getter(get_org_for_storage)
|
| 302 |
-
print("[ORG_CONTEXT] Connected org_context getter to hf_storage")
|
| 303 |
except ImportError as e:
|
| 304 |
print(f"[ORG_CONTEXT] Could not inject org_context getter: {e}")
|
| 305 |
# ---------------------------------------------------------
|
|
|
|
| 287 |
# --- Inject Org Context Getter (for HF dataset namespace) ---
|
| 288 |
try:
|
| 289 |
from lib.hf_storage import set_org_context_getter
|
|
|
|
| 290 |
|
| 291 |
def get_org_for_storage():
|
| 292 |
+
"""プロセスレベルの _user_profile_cache から org_id/org_name を返す。
|
| 293 |
+
|
| 294 |
+
ContextVar (get_user_context) は FastAPI リクエストスレッドでのみ有効で
|
| 295 |
+
Gradio WebSocket キュースレッドでは伝播しないため、プロセス共有の
|
| 296 |
+
_user_profile_cache(ログイン時にセットされる)を参照する。
|
| 297 |
+
シングルユーザー運用前提; session_org_map が優先されるため
|
| 298 |
+
マルチユーザー時もStep実行後は正しいorgが使われる。
|
| 299 |
+
"""
|
| 300 |
+
if _user_profile_cache:
|
| 301 |
+
last_user = next(iter(_user_profile_cache.values()))
|
| 302 |
+
org_id = last_user.get("org_id")
|
| 303 |
+
org_name = last_user.get("org_name")
|
| 304 |
+
if org_id or org_name:
|
| 305 |
+
return {"org_id": org_id, "org_name": org_name}
|
| 306 |
return None
|
| 307 |
|
| 308 |
set_org_context_getter(get_org_for_storage)
|
| 309 |
+
print("[ORG_CONTEXT] Connected org_context getter to hf_storage (cache-based)")
|
| 310 |
except ImportError as e:
|
| 311 |
print(f"[ORG_CONTEXT] Could not inject org_context getter: {e}")
|
| 312 |
# ---------------------------------------------------------
|