review-fix(public-api): restore get_session_activity, latest_user_message_row_id, resolve_multiple_toolsets, has_provider, nous_token_has_billing_scope, curated_models_for_provider, clear_edit_approval_requester + tests
All public on BASE 63279301bc, dropped by the simplify refactor (their tests were deleted or
rewritten to the replacement API). Restore each with BASE signature/body as a thin wrapper over the
surviving implementation, and restore the tests at the original call sites: test_message_reactions
again asserts the role=user contract (a newer assistant message is never the default target);
test_hermes_state / test_watchdog_review_76354 go back to get_session_activity(); toolsets, acp auth,
edit_approval, billing-scope and curated-models tests restored/extended.
This commit is contained in:
@@ -538,6 +538,21 @@ class SessionSessionsMixin:
|
||||
("", ActivityProvenance.UNKNOWN.value, session_id), patience_s=self._ACTIVITY_WRITE_PATIENCE_S,
|
||||
)
|
||||
|
||||
def get_session_activity(self, session_id: str) -> Optional[Dict[str, Any]]:
|
||||
"""Return the durable activity snapshot for *session_id*, or None."""
|
||||
if not session_id:
|
||||
return None
|
||||
row = self.get_session(session_id)
|
||||
if not row:
|
||||
return None
|
||||
from agent.session_activity import build_activity_snapshot
|
||||
|
||||
return build_activity_snapshot(
|
||||
last_activity_at=row.get("last_activity_at"),
|
||||
last_activity_description=row.get("last_activity_description"),
|
||||
last_activity_provenance=row.get("last_activity_provenance"),
|
||||
)
|
||||
|
||||
def update_session_meta(
|
||||
self, session_id: str, model_config_json: str, model: Optional[str] = None,
|
||||
) -> None:
|
||||
|
||||
Reference in New Issue
Block a user