docs(gemini): Update knowledge base with user auth, notifications, and mapper best practices#2022
Merged
jcscottiii merged 5 commits intomainfrom Nov 18, 2025
Merged
Conversation
…d mapper best practices This commit significantly updates the GEMINI.md knowledge base to reflect recent changes and codify best practices. Key updates include: - **Updated Last Analyzed Commit**: The SHA for the last analyzed commit has been updated to 4b12e1c. - **New Section: User Authentication and Notifications**: A new section (3.4) has been added to describe the architecture and data flow for user authentication, profile synchronization, notification channels, and saved search subscriptions. This includes correcting the API endpoint and handler names for user profile sync. - **Mapper Best Practices**: The "Go Mapper Pattern for Spanner" section (3.2.1) has been enhanced with new guidelines: - An explicit "DO" rule to ensure `mergeMapper` implementations correctly copy all fields, especially `UpdatedAt`. - A new subsection "Using Mappers within a Transaction" detailing the importance of using `...WithTransaction` variants of generic helpers within `ReadWriteTransaction` blocks and cautioning against standard helpers or manual mutation creation in such contexts. - **Architectural Layering**: A new "DON'T" rule has been added to prevent `lib/gcpspanner` from importing `lib/backendtypes`, reinforcing architectural separation. - **"Verify, Don't Assume" Principle**: A new core principle (5.9) has been introduced, emphasizing the importance of verifying information against canonical sources of truth (e.g., `openapi.yaml` for APIs, migration files for schema). This principle is also cross-referenced in the "Specifications & Generated Code" (Section 4) and "How-To Guides" (Section 6) sections, and explicitly integrated into the knowledge base update process (Section 7.2). These updates aim to improve the accuracy, clarity, and utility of the knowledge base for future development. I had GEMINI analyze #2009 and what existed on upstream main.
jrobbins
approved these changes
Nov 18, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This commit significantly updates the GEMINI.md knowledge base to reflect recent changes and codify best practices. Key updates include:
mergeMapperimplementations correctly copy all fields, especiallyUpdatedAt....WithTransactionvariants of generic helpers withinReadWriteTransactionblocks and cautioning against standard helpers or manual mutation creation in such contexts.lib/gcpspannerfrom importinglib/backendtypes, reinforcing architectural separation.openapi.yamlfor APIs, migration files for schema). This principle is also cross-referenced in the "Specifications & Generated Code" (Section 4) and "How-To Guides" (Section 6) sections, and explicitly integrated into the knowledge base update process (Section 7.2).These updates aim to improve the accuracy, clarity, and utility of the knowledge base for future development.
I had GEMINI analyze #2009 and what existed on upstream main.