Skip to content

feat: create pages page#100

Merged
martian56 merged 65 commits intomainfrom
98-feat-create-pages-page
May 7, 2026
Merged

feat: create pages page#100
martian56 merged 65 commits intomainfrom
98-feat-create-pages-page

Conversation

@martian56
Copy link
Copy Markdown
Member

@martian56 martian56 commented May 5, 2026

This pull request introduces significant enhancements to the API, focusing on notifications, issue subscriptions, and page management. It adds new endpoints for managing notification states (such as snoozing, archiving, and unread counts), introduces subscription endpoints for issues, and refactors the page handler to support more flexible queries and better error handling. Additionally, it updates several Go module dependencies.

Notification API Enhancements:

  • Added new endpoints to the NotificationHandler for snoozing (Snooze/Unsnooze), archiving (Archive/Unarchive), and marking notifications as unread (MarkUnread). Also, added an endpoint to get unread counts with mention breakdown (UnreadCount). The List endpoint now supports filtering by unread, mentions, and archived state. [1] [2] [3]

Issue Subscription API:

  • Introduced endpoints in IssueHandler to allow users to check if they are subscribed to an issue, subscribe, and unsubscribe. These endpoints provide better control for users to manage their issue notifications.

Page API Improvements:

  • Refactored PageHandler to support more flexible listing with filters (such as archived, parent, search, and ownership), added a new endpoint for listing child pages, and centralized error handling for consistent API responses.

Dependency Updates:

  • Updated several dependencies in api/go.mod, including upgrades to golang.org/x/crypto, golang.org/x/net, golang.org/x/tools, and others for improved security and compatibility. [1] [2]

Closes #98
Closes #42


Note

Medium Risk
Moderate risk because it introduces new persistence models and API endpoints (issue subscriptions, notification snooze/archive, page versions/favorites) and changes core notification fan-out behavior; correctness depends on DB schema/migrations and preference/subscriber wiring.

Overview
Adds a full issue-following + notification fan-out pipeline: introduces issue_subscribers with subscribe/unsubscribe endpoints, auto-subscribes assignees/commenters/mentions, and emits in-app notifications for assignments, mentions, comments, state changes, and other field changes (with structured message payloads and cleanup on issue delete).

Expands the notifications inbox API to support unread counts (with mention breakdown), filtering (unread/mentions/archived), and per-notification actions (mark unread, archive/unarchive, snooze/unsnooze), backed by new store methods and new Notification fields (sender, snoozed_till).

Significantly upgrades pages: adds richer Page fields, server-side list filtering, hierarchical navigation (parent_id + children listing), owner-only meta updates vs content autosave, lock/archive/delete semantics, duplication, version history/restore via page_versions, and page favorites via user_favorites.

UI updates wire these capabilities: adds a polling header NotificationBell, revamps NotificationsPage with tabs (All/Mentions/Archived) and actions (read/unread, archive, snooze, open issue) using the structured payload renderer, and adds an issue SubscribeButton. Also bumps Go x/* dependencies and increments UI version to 0.7.0.

Reviewed by Cursor Bugbot for commit a054db2. Bugbot is set up for automated code reviews on this repo. Configure here.

martian56 added 30 commits May 5, 2026 15:46
martian56 added 20 commits May 5, 2026 23:07
Copy link
Copy Markdown
Member

@nazarli-shabnam nazarli-shabnam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

merge?

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 54 out of 56 changed files in this pull request and generated 4 comments.

Files not reviewed (1)
  • ui/package-lock.json: Language not supported

Comment thread api/internal/handler/page.go
Comment thread api/internal/handler/page.go
Comment thread api/internal/text/mentions.go
Comment thread api/internal/store/page.go
@martian56
Copy link
Copy Markdown
Member Author

merge?

will merge tomorrow.

@martian56 martian56 merged commit 61d3bfd into main May 7, 2026
8 checks passed
@martian56 martian56 deleted the 98-feat-create-pages-page branch May 7, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

API enhancement New feature or request UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEAT] Create Pages page Implement Pages functionality

3 participants