feat: restore full-fidelity heaven rituals

This commit is contained in:
leefer
2026-07-23 23:50:12 +08:00
parent bc7521a591
commit eb1e2bca9a
8 changed files with 211 additions and 207 deletions
+15 -3
View File
@@ -2082,6 +2082,11 @@ class DashboardService:
field,
public=True,
)
daily_fortune_reading = self.database.latest_heaven_reading(
self.current_user_id, "fortune", normalized_date
)
if self._legacy_truncated_heaven_reading(daily_fortune_reading):
daily_fortune_reading = None
return {
"trade_date": data_date,
"calendar_date": normalized_date,
@@ -2089,9 +2094,7 @@ class DashboardService:
"chart": chart,
"field": field,
"personal_profile": personal_profile,
"daily_fortune_reading": self.database.latest_heaven_reading(
self.current_user_id, "fortune", normalized_date
),
"daily_fortune_reading": daily_fortune_reading,
"sector_phase_overrides": [
{"name": name, "element": element}
for name, element in sector_phase_overrides.items()
@@ -2409,6 +2412,11 @@ class DashboardService:
existing = self.database.latest_heaven_reading(
self.current_user_id, "fortune", trade_date
)
if self._legacy_truncated_heaven_reading(existing):
self.database.delete_heaven_reading(
self.current_user_id, int(existing["id"])
)
existing = None
if existing:
return {
"answer": existing["answer"],
@@ -2515,6 +2523,10 @@ class DashboardService:
"reused": False,
}
@staticmethod
def _legacy_truncated_heaven_reading(reading: dict[str, Any] | None) -> bool:
return bool(reading and str(reading.get("answer") or "").rstrip().endswith("……"))
def _call_heaven_agent(self, mode: str, context: dict[str, Any]) -> tuple[dict[str, Any], str]:
source = self.ensure_llm_access(f"heaven_{mode}")
primary_error = ""