Skip to content

Fix organization profile images in GitHub Mobile - #29

Merged
VolkerChristian merged 1 commit into
mainfrom
fix/org-mobile-images
Oct 14, 2026
Merged

VolkerChristian merged 1 commit into
mainfrom
fix/org-mobile-images

Conversation

@VolkerChristian

Copy link
Copy Markdown
Member

Organization-profile images use README-relative URLs, which GitHub Mobile can resolve from the repository root instead of profile/. Public and member views therefore show broken banners/buttons despite valid published assets. Use absolute URLs to the authoritative public assets for every profile image src and picture srcset, including mobile and dark variants. The existing member-profile sync copies the corrected generated README.

The menu generator resolves those profile-owned URLs back to local assets while retaining the original URL in the HTML. Consolidate path/URI rejection at the existing ownership guard; foreign URLs and filesystem-absolute paths remain excluded. No new publishing mechanism, renderer, image copy or configuration flag is added.

Files

  • profile/template.md: eight explicit public asset URLs and the authoring rule.
  • profile/README.md: regenerated with snodec_sync profile.
  • tools/snodec_sync/navigation.py: preserve local menu generation for the canonical profile URLs.
  • tests/test_sync.py: every image URL must be absolute, public and backed by an owned local file.
  • tests/test_navigation.py: verify button/HTML width normalization, URL preservation, foreign-URL exclusion and no drift.

Verification

  • python tools/snodec_sync check — PASS.
  • python tools/snodec_sync profile then git diff --exit-code profile/README.md — PASS after commit, no drift.
  • python -m unittest discover -s tests -v — 74 tests passed (10.868 s).
  • python tools/snodec_sync page-headers --repo . --check — PASS.
  • python tools/snodec_sync docs-audit --repo . — 0 violations.
  • git diff --check HEAD^ HEAD — PASS.
  • Central header checks for snode.c, mqttsuite, AISuite, CodexUI, DistributionPackages and DistributionPackages/site — PASS, no changes.
  • All eight full public image URLs return HTTP 200 / image/svg+xml; public/member assets have identical blob hashes. Baseline browser checks at phone/tablet/desktop widths load all selected images.

Production Python: +3/-4 lines (net -1). Test Python: +21/-3 lines. No SVG, license, historical record, workflow definition, tag or setting changes. Native GitHub-app behavior cannot be directly verified on a device in this environment; this corrects the URL-resolution boundary matching GitHub's acknowledged organization-profile issue.

The owner authorized merge and live publication. On merging, existing main validation requests the member-profile sync. No product or package build workflow is needed or requested.

@VolkerChristian
VolkerChristian merged commit a461239 into main Oct 14, 2026
4 checks passed
@VolkerChristian
VolkerChristian deleted the fix/org-mobile-images branch October 15, 2026 19:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant