refactor Heart and Mind profiles into separate files, update references in pfp_from_chat.py and prism_match_overrides.json, and revise Heart-and-Mind.md to reflect new structure

This commit is contained in:
2026-05-25 11:43:00 -06:00
parent 338b05240b
commit 1efc0512b2
8 changed files with 386 additions and 222 deletions
+23 -37
View File
@@ -35,7 +35,8 @@ ROSTER: dict[str, list[str]] = {
"azure": ["guidingflyer530", "actuallynotazure"],
"starboy": ["starboy_journeys"],
"jenni": ["jennimilano"],
"heart-and-mind": ["heart_cccc", "brush_colourful"],
"heart": ["heart_cccc"],
"mind": ["brush_colourful"],
"beanie": ["beaniee__"],
"raincloud": ["raincloudthedragon"],
}
@@ -49,7 +50,8 @@ MD_FILES: dict[str, str] = {
"azure": "Azure.md",
"starboy": "Starboy.md",
"jenni": "Jenni.md",
"heart-and-mind": "Heart-and-Mind.md",
"heart": "Heart.md",
"mind": "Mind.md",
"beanie": "Beanie.md",
"raincloud": "RaincloudTheDragon.md",
}
@@ -265,42 +267,26 @@ def main() -> int:
display = Path(MD_FILES[slug]).stem.replace("-", " ")
if slug == "heart-and-mind":
order = [("Heart", "heart_cccc"), ("Mind", "brush_colourful")]
for label, login in order:
key = (slug, login)
avs = acc.get(key, {})
ordered = sorted(avs.values(), key=lambda x: x.first_at)
for i, av in enumerate(ordered):
fn = f"{login}_{i}.jpg"
rel = f"{story_rel}/{fn}"
dest = pfp_root / slug / fn
if download_as_jpeg(av.url, dest):
cap = f"{label} (`{login}`)"
if len(ordered) > 1:
cap = f"{cap}{i + 1}"
section_images.append((cap, rel))
else:
logins = ROSTER[slug]
for login in logins:
key = (slug, login)
avs = acc.get(key, {})
ordered = sorted(avs.values(), key=lambda x: x.first_at)
if not ordered:
logins = ROSTER[slug]
for login in logins:
key = (slug, login)
avs = acc.get(key, {})
ordered = sorted(avs.values(), key=lambda x: x.first_at)
if not ordered:
continue
for i, av in enumerate(ordered):
fn = f"{login}_{i}.jpg"
rel = f"{story_rel}/{fn}"
dest = pfp_root / slug / fn
if not download_as_jpeg(av.url, dest):
continue
for i, av in enumerate(ordered):
fn = f"{login}_{i}.jpg"
rel = f"{story_rel}/{fn}"
dest = pfp_root / slug / fn
if not download_as_jpeg(av.url, dest):
continue
if len(logins) > 1:
cap = f"`{login}`"
else:
cap = display
if len(ordered) > 1:
cap = f"{cap}{i + 1}"
section_images.append((cap, rel))
if len(logins) > 1:
cap = f"`{login}`"
else:
cap = display
if len(ordered) > 1:
cap = f"{cap}{i + 1}"
section_images.append((cap, rel))
if not section_images:
print(f"No avatars found for {slug}", file=sys.stderr)