Skip to content

Port the community timeline wall to platform-ui - #2617

Merged
jmgasper merged 5 commits into
devfrom
feat/timeline-wall
Nov 11, 2026
Merged

jmgasper merged 5 commits into
devfrom
feat/timeline-wall

Conversation

@jmgasper

@jmgasper jmgasper commented Nov 11, 2026 •

Copy link
Copy Markdown
Collaborator

The community timeline wall now runs as a public platform-ui TypeScript sub-app. In dev it is available at both https://timeline.topcoder-dev.com/ and https://topcoder-dev.com/timeline-wall. The legacy /community/timeline-wall URL now returns a 301 to /timeline-wall, preserving encoded and repeated query parameters.

Behavior

  • Preserves chronological browsing, year/month navigation, member profile links, expandable descriptions, responsive photo/video galleries, and the Discuss link.
  • Uses platform authentication for submissions with up to three media files and the existing timeline API for admin detection, approval, rejection with reason/note, and confirmed deletion. Pending approvals refresh every five minutes.
  • Keeps drafts on upload failure, reports failed moderation requests, ignores stale admin responses after logout, preserves local calendar dates, and handles legacy video URLs stored in previewUrl.
  • Promotes and rolls back the timeline HTML shell with normal platform deployments. No new dependencies or backend/data migration.

Dev infrastructure

Applied and verified the scoped website CloudFormation routes, platform hostname routing, wildcard certificate coverage, Route 53 alias, private S3 shell access, and the single new Universal Navigation CORS origin. The dev preview uses isolated assets and a dedicated timeline shell; the shared platform landing page was not replaced. Production routing was not changed.

The routing transform preserves existing website resources, including a concurrent request-function update discovered during rollout. See infrastructure/timeline-wall/README.md for release order, infrastructure ownership, and rollback. Carry this additive transform into the website stack's source template before a future infrastructure redeployment.

Validation

  • Repository-wide lint, full TypeScript checking, and optimized dev build passed.
  • 14 interaction, routing, and API transport tests passed, including America/Los_Angeles date handling, failed uploads/moderation, admin logout, media navigation, and upload limits.
  • 2 routing tests and 11 deployment/rollback tests passed; platform host routing also passed AWS CloudFront function tests.
  • Live browser smoke passed on both requested dev URLs: 36 events, correct ordering, image/video viewing, date navigation, no JavaScript exceptions, and no horizontal overflow at 1440/768/390/320px. Existing media URLs returned 200.
  • Verified redirect encoding/repeated parameters, identical published HTML on both hosts, completed DNS/CloudFront propagation, and unrelated website, Gigs, Opportunities, Contact, and Sales routes.

Authenticated write workflows were exercised with mocked API integration tests; live smoke tests used public reads and did not modify existing timeline events. All CI checks passed on the deployed application commit 7e09140dc; the subsequent commit only documents the navigation CORS requirement.

@jmgasper
jmgasper marked this pull request as ready for review November 11, 2026 02:58
@jmgasper
jmgasper requested a review from kkartunov as a code owner November 11, 2026 02:58
@jmgasper
jmgasper merged commit d640dc5 into dev Nov 11, 2026
7 checks passed
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