Furries PH Docs
Dashboard

Updates

Platform Updates

Public-facing release notes for meaningful changes across Furries PH operational systems.

First created Last updated

Showing release notes 101-110 of 1437
2026-10-0419:32

FPH administrators can manage EPS staff-directory integrations

Repositories: Partners, Partners API. Status: Migration published; Git-linked API and dashboard releases verified.

What’s Changed

FPH administrators can now see the staff-directory integration in an event plan’s Departments page and inspect, create, rotate or revoke its server credential. The plan’s owning partner administrators retain the same access. Department leads and other FPH roles remain excluded.

Impact

Directory management has its own permission, separate from department member position/title editing. Only the owning partner’s administrators can change member titles. Directory responses still expose only the six approved fields, and credential changes still require recent multifactor authentication.

Upgrade Notes

The additive authorization migration is published. Local checks passed 22 authority, 46 HTTP, 48 database, 66 member-title and 11 browser scenarios, plus typechecking and production builds. Hosted assets include the dedicated directory permission. Authenticated hosted actions remain unverified; opening this control does not enable sharing automatically.

2026-10-0419:32

Publishing and cleanup receive separate delivery budgets

Repositories: Partners API, Partners. Status: Git-linked API release and live Discord delivery/removal verified.

Publishing and post removal now run through a dedicated serial queue, one job per invocation, separate from email and other background work. Authorized committed actions wake the queue promptly; minute recovery reads only wake due, expired or interrupted work. Empty and future-only work creates no recovery traffic. Schedules, permissions and protection against duplicate sends remain enforced by the database and delivery workers.

Partner teams can continue using the existing dashboard. A temporary Discord text test was delivered once by the Furries PH bot, then removed immediately after content confirmation; deletion was acknowledged and absence verified about 12 seconds after confirmation. All seven known live tests have been removed. Local validation passed 32 publishing suites, API typecheck and Worker dry build. The exact Git-linked release and live queue registration were verified. Approved media and remaining provider acceptance still require their separate checks.

2026-10-0419:32

Community X account connected; publishing payment gate

Repositories: Partners API, Partners. Status: Community X account connected; live publishing blocked by provider payment requirement.

X app credentials are installed in the publisher while preserving the existing Facebook and Instagram configuration. Both existing Meta destinations still pass fresh access checks. The actual X consent screen loads with posting, media upload and continued access permissions. No Meta sign-in is required to connect X.

Partner teams independently link their own X account using Connect X in the dashboard. The developer-app owner is not automatically connected as a publishing destination. The selected community account completed X consent and passed a fresh hosted access check. A temporary text test reached the actual X publishing endpoint through the deployed scheduler, but X rejected it with HTTP 402 (payment required). No post was created, so there was nothing to delete. Successful publishing/deletion still needs verification after the developer app billing entitlement is resolved. No payment method, credit purchase or automatic retry was submitted. See X’s official API pricing and credits guide.

2026-10-0419:32

EPS overdue reminders now repeat every twelve hours

Repositories: Partners database and Partners API. Status: Database change validated and applied to the current service plans.

Overdue EPS work and requirements now repeat every twelve hours through email and each verified Telegram or Discord bot DM connection. If both bot connections are ready, both receive reminders alongside email. Reminders before a deadline remain unchanged, and submission or completion stops further reminders.

The current Telegram and Discord bot backlog has been cleared while future schedules remain active. Two reminders had already reached the providers before the clear took effect. Existing notices within the current twelve-hour window suppress a transition replay.

Validation: Hosted service-role rollback checks confirm no immediate overdue replay, repeat calls create no duplicates, and public callers cannot invoke the reminder materializer. Live bot fan-out coverage has no missing future copies for eligible verified users; neither bot channel has an undelivered outbox backlog after the clear.

2026-10-0419:32

EPS deadline email scheduling restored

Repositories: Partners database and Partners API. Status: Scoped database repairs applied, API deployed and automatic EPS email delivery verified.

EPS deadline and six-hour overdue email schedules are restored after missing database functions prevented their creation. Separate deadline lifecycle triggers keep reminders aligned with date changes, recipients, submission and completion. Existing assignments keep their email path. Missed historical reminder stages are skipped, so recovery does not send a backlog of old notices.

Queued EPS emails can continue when a deadline backfill encounters an error. A confirmed Worker request-limit error is addressed by giving EPS delivery separate, small queue invocations. The existing delivery queue is reused, and both current service plans are retained. Unconfirmed prior deliveries remain held to avoid duplicate messages. Staff need no settings change; the existing Supabase and Workers plans and reminder cadence are retained.

Validation: Thirty-eight API runtime regression scenarios cover backfill failures, guarded queue reads, a complete email within the current request allowance and duplicate-send protection; typecheck and Worker build checks pass. Actual database lifecycle tests and hosted service-role rollback checks pass. Live schedules were restored for all 14 upcoming records, and all 16 current overdue emails received positive provider acceptance. Thirteen were delivered by hosted cron/queue processing, including verified continuation invocations after the isolation repair; three used the same processor directly during diagnosis. No overdue email remains pending or claimed. The 13 older unconfirmed emails remain held rather than replayed.

2026-10-0419:32

X videos check the actual AAC configuration

Repositories: Partners API, Partners. Status: Released through a successful Git-linked Workers Build; live X acceptance pending.

X videos with audio now require a measured AAC Low Complexity profile and mono/stereo channels. The publisher reads the codec configuration rather than inferring compatibility from an mp4a label or a placeholder stereo count. It recognizes High Efficiency AAC and handles malformed configuration safely. Silent video remains allowed. Operators receive a readable reason when the audio is unsuitable.

All 30 local publishing suites, API typecheck and Worker dry build pass, including 124 video-inspection groups and 128 compatibility cases. These checks measure container declarations; they do not certify decoded video frames or live X delivery. X app setup is prepared, but installing its credentials without replacing Meta, X account consent and endpoint access remain open. No post or payment was submitted.

2026-10-0419:32

X publishing app setup prepared

Repositories: Partners API, Partners. Status: Provider app created; account connection pending.

The X publishing app now has server-side OAuth settings, read/write permission and the exact Partners callback. Credentials are stored securely. Existing Facebook and Instagram settings must be preserved when enabling X. No payment method, credit purchase or post was submitted.

X credentials still need installation without replacing the shared Meta configuration, followed by X account consent, before the connection can be checked. This setup does not prove API entitlement or live publishing.

2026-10-0419:32

Less database work for identities and scheduled jobs

Repositories: Partners database and Partners API. Status: Two scoped database migrations applied and verified; API released through successful Git-linked builds.

What’s Changed: Unchanged canonical profile and identity checks return before unnecessary inserts, updates or row locks. Background jobs reuse sufficient lease time. Photo maintenance excludes profiles without retained source photos before transferring legacy snapshots. Aggregate database inspection explicitly omits SQL text inside PostgreSQL’s statistics function.

Impact: Twenty-five hosted identity checks succeeded inside a READ ONLY transaction while preserving both records and their row/lock markers. A post-release sample recorded about three lease claims per minute, versus about fifteen in the earlier sample. Hosted photo inspection returns zero candidates instead of transferring 47 source-less profiles. A live query-plan comparison showed about 4.5 MiB of temporary writes with statement text versus zero without it. Creation, email changes, identity-link repair, collision protection, valid photo migration and one-minute notifications retain their existing behavior.

Validation: Actual SQL, scheduler and photo-helper regression suites, clean API typecheck and Worker dry build pass. Deployed Worker source contains the lease guards; public Rego catalogue remains HTTP 200. Shared Docs validation passes.

Upgrade Notes: No user action is needed, and the current Supabase plan is retained. No paid change, database restart, data purge, statistics reset or authorization caching was introduced. Live swapping continues; these measured workload reductions do not yet prove that the daily disk I/O limit is resolved.

2026-10-0419:32

Facebook publishing and immediate removal verified

Repositories: Partners API, Partners. Status: Live Page text publishing and automatic remote deletion verified.

A temporary authorized Page post passed approval and queued delivery with one successful attempt. A Page API read confirmed the exact text, receipt and author before removal was requested. The publisher received Facebook’s explicit deletion acknowledgement within about 28 seconds of the request. The original permalink then became unavailable and the test text was absent. This is live provider evidence for new Page feed receipts; older unbound receipts still require deliberate manual cleanup.

The live read also exposed unreliable synthetic Facebook links. New feed receipts now retrieve the authoritative Page/post permalink through a bounded optional read and remove unnecessary URL parameters. A failed lookup preserves successful publication and never reposts merely to obtain a link. The Instagram use case and required content permissions are added to the Meta app and marked ready for testing; account authorization and any required advanced-access review remain open.

All six known live publishing tests have now been removed and verified. Future tests must be removed immediately after delivery and content confirmation, with absence checked before another test. No media pack or AI image was created.

Video checks now measure declared audio rate and channel count from supported MP4/MOV sound entries and explicit WebM audio metadata. Instagram Reels with audio require at most 48 kHz and mono/stereo; 44.1 kHz is valid. Missing measurements and ambiguous enabled audio tracks fail closed. The current Meta media reference supplies these Reel-specific rules; carousel requirements are not inferred from them.

All 30 local publishing suites, API typecheck and Worker dry build pass, including 77 video inspection groups and 114 compatibility cases. The audio release passed its Git-linked Workers Build. Container metadata does not certify decoded frames, AAC-LC, chroma, progressive scan, closed GOP or peak bitrate. Other-network account consent and approved live media acceptance remain open; API keys remain the final credential setup step.

2026-10-0419:32

Publishing keeps receipts and checks cleanup connections

Repositories: Partners API. Status: Released through a successful Git-linked build, with signed-in hosted cleanup checks.

Scheduled publishing now bounds admission, connection refresh, media and provider work, reserving ten seconds to save delivery results. Late admission cannot start a send. An uncertain provider outcome requires review instead of automatic reposting. Cleanup requires a currently connected destination and its original bot or Page binding; Telegram’s 48-hour removal window is checked before cleanup is offered.

Temporary media transfers check that the client remains active before and after reading its approved media. Disabled clients cannot fetch upstream asset bytes. Discord and Telegram readiness now require both encryption and the actual bot token.

All 30 local publishing suites, API typecheck and Worker dry build pass. The signed-in hosted API now rejects cleanup through the retired Discord destination with a readable reconnection reason. All five earlier live tests are already removed and verified absent; every future live test must be removed immediately after delivery and content confirmation, with absence verified. Other-network account consent, approved media and remaining provider acceptance are still open.

All docs