Skip to content

add [properties-be] - project metadata#614

Merged
danielkweon merged 22 commits intomainfrom
daniel/m-5408--add-properties-be-project-metadata
Dec 15, 2025
Merged

add [properties-be] - project metadata#614
danielkweon merged 22 commits intomainfrom
daniel/m-5408--add-properties-be-project-metadata

Conversation

@danielkweon
Copy link
Copy Markdown
Contributor

add [properties-be] - project metadata

  • Add project metadata properties: Name, Owner, Created At, Last Updated, Parent Project
  • Add direct SQL query to fetch project metadata from Project table

@danielkweon danielkweon self-assigned this Dec 14, 2025
@danielkweon danielkweon requested a review from a team as a code owner December 14, 2025 05:37
@linear
Copy link
Copy Markdown

linear bot commented Dec 14, 2025

Add display name constants for email thread metadata properties:
Subject, Thread Started, Last Received, Last Sent, Messages.
Add ThreadMetadata struct for email thread metadata properties:
subject, thread_started, last_received, last_sent, message_count.
Add get_thread_metadata query using LATERAL join to efficiently fetch
subject, thread_started, last_received, last_sent, and message_count.
Add create_metadata_property_number helper for numeric metadata (e.g., message count).
Add documentation comments to all metadata helper functions.
Add function to build thread metadata properties: Subject, Thread Started,
Last Received, Last Sent, and Messages count.
Add EntityType::Thread case to fetch thread metadata properties
when include_metadata=true is requested.
Thread permission records (EmailThreadPermission/UserItemAccess) are
lazily initialized when a thread is first accessed via DSS. For owned
threads, this initialization was bypassed, causing properties_service
permission checks to fail.

Added fallback that checks thread ownership via email_links.macro_id
when no permission records exist.
Remove redundant _optional and _null variants by making base functions
accept Option<T> and handle nulls internally.
@danielkweon danielkweon force-pushed the daniel/m-5179--add-properties-backend-metadata branch from ad5ff42 to 65bcc28 Compare December 15, 2025 17:27
Add NAME and PARENT constants for project metadata display names.
Add ProjectMetadata struct for project metadata properties.
Add get_project_metadata query to fetch project metadata from Project table.
Add get_project_metadata_properties function and wire up EntityType::Project
in the properties endpoint. Returns Name, Owner, Created At, Last Updated,
and Parent Project metadata.
@danielkweon danielkweon force-pushed the daniel/m-5408--add-properties-be-project-metadata branch from 6f59e6b to b83b63f Compare December 15, 2025 17:40
Base automatically changed from daniel/m-5179--add-properties-backend-metadata to main December 15, 2025 19:08
@danielkweon danielkweon merged commit 1c29936 into main Dec 15, 2025
35 checks passed
@danielkweon danielkweon deleted the daniel/m-5408--add-properties-be-project-metadata branch December 15, 2025 19:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants