This commit is contained in:
2026-07-23 03:03:14 +02:00
parent ef1c914e23
commit ad1736ebf1
47 changed files with 451 additions and 158 deletions
+19 -1
View File
@@ -6,9 +6,12 @@ import logging
import random
from devplacepy.services.bot.config import (
HOME_URL,
MAX_THREAD_REPLIES,
MENTION_REPLIES_PER_SESSION,
PROJECT_STATUSES,
bio_has_signal,
ensure_bio_signal,
)
logger = logging.getLogger(__name__)
@@ -142,6 +145,21 @@ class BotSocialMixin:
return True
return False
async def _profile_has_signal(self) -> bool:
profile = await self._fetch_own_profile()
user = profile.get("profile_user") or {}
website = (user.get("website") or "").strip().rstrip("/")
return bio_has_signal(user.get("bio") or "") and website == HOME_URL
async def _ensure_profile_signal(self) -> bool:
if self.state.profile_filled and await self._profile_has_signal():
return True
self._log("Profile signal missing, refreshing profile")
ok = await self._update_profile()
await self.b.goto(f"{self.base_url}/feed")
await self.b._idle(0.8, 2.0)
return ok
async def _update_profile(self) -> bool:
b = self.b
await b.goto(f"{self.base_url}/profile/{self.state.username}")
@@ -155,7 +173,7 @@ class BotSocialMixin:
if not bio:
self._log("Update profile: bio generation failed")
return False
bio = bio[:500]
bio = ensure_bio_signal(bio[:400])[:500]
await b.fill("textarea[name='bio']", bio)
await b._idle(0.3, 0.8)