Saving notes
This commit is contained in:
125
GEMINI.md
125
GEMINI.md
@@ -115,6 +115,10 @@
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## 3. 🧠 Short Term Memory (Session Context)
|
||||
|
||||
|
||||
@@ -123,15 +127,7 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Last Action:** Restored Event Session search functionality and standardized ID mapping across core event library modules.
|
||||
|
||||
|
||||
|
||||
|
||||
- **Last Action:** Hardened Event File processing, implemented loader safety nets, and enabled verbose tracking.
|
||||
|
||||
|
||||
|
||||
@@ -139,31 +135,15 @@
|
||||
|
||||
|
||||
|
||||
- **ID Clobbering:** The generic processor was blindly overwriting clean IDs with `null` random IDs from the API; truthy checks on `_random` variants are essential to preserve relationship integrity.
|
||||
|
||||
|
||||
|
||||
|
||||
- **Dual-Layer Filtering:** API search revalidation can clobber correctly filtered local results if the API has a minimum character limit (e.g., 3 chars); implementing a backup client-side filter on the API response is essential for "sticky" search results.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **ID Standardization:** Phasing out the `_random` suffix requires updating the generic object processors to check both the base `[obj_type]_id` and the `_random` variant to ensure Dexie primary keys are correctly mapped.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Svelte 5 Untrack:** `untrack()` is critical inside `$effect` when reading reactive state that shouldn't trigger a re-run, but must be used carefully to avoid stale data in complex search logic.
|
||||
|
||||
- **Loader Safety Net:** Implementing minimal, type-aware ID injection in `_refresh_file_li_background` ensures records are correctly indexed in Dexie even when the backend response is partially incomplete.
|
||||
|
||||
|
||||
|
||||
- **Relationship Sync:** Synchronizing `for_id` with specific object IDs (e.g., `event_presenter_id`) in the processor ensures UI components can reliably retrieve files using either the generic or specific keys.
|
||||
|
||||
|
||||
|
||||
@@ -171,47 +151,23 @@
|
||||
|
||||
|
||||
|
||||
- **Event File Upload Restoration:** Fixed 422 errors in `ae_comp__event_files_upload.svelte` by identifying a backend Pydantic integer vs string mismatch and standardizing on the V3 action endpoint.
|
||||
|
||||
|
||||
|
||||
|
||||
- **Event Session Search Restoration:** Stabilized the Session Search module by standardizing on `event_id` for queries and implementing local result protection against broad API responses.
|
||||
- **Relationship Integrity:** Resolved missing `event_id` and cross-contaminated IDs in `ae_events_db.file` by hardening `_process_generic_props` and the background loader.
|
||||
|
||||
|
||||
|
||||
- **UI Retrieval Fix:** Reverted `element_manage_event_file_li_direct.svelte` to robust `for_type`/`for_id` filtering and enhanced `li_all` with combined ID filters to ensure linked files show up for all objects.
|
||||
|
||||
|
||||
|
||||
|
||||
- **Platform-Wide ID Hardening:** Updated `_process_generic_props` in all event library files (`location.ts`, `presentation.ts`, `presenter.ts`, `session.ts`, etc.) to support the transition away from string-only IDs.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Bulletin Board Verification:** Confirmed email notification logic for Staff and Posters in the IDAA BB module.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Prop Standardization:** Refactored `presenter` and `presentation` components to use standardized `_id_li` properties.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Code Cleanup:** Standardized common helper identifiers to snake_case (`prevent_default`).
|
||||
|
||||
- **Batch Formatting:** Finalized module-wide formatting (printWidth: 80) across Archives, Settings, and root Events components.
|
||||
|
||||
|
||||
|
||||
- **Surgical Debugging:** Enabled verbose tracking in Presenter load functions and the Event File loader to isolate data flow issues.
|
||||
|
||||
|
||||
|
||||
@@ -219,33 +175,68 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
- **Immediate Next Step:** Continue ID standardization across remaining modules or proceed with IDAA Archives/Recovery Meetings verification.
|
||||
|
||||
|
||||
- **Immediate Next Step:** Verify Bulletin Board email notifications and Recovery Meetings Zoom/Jitsi logic.
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
## 4. 📂 Reference: Directory & Whitelist
|
||||
|
||||
*Low-density reference data. Keep at the bottom to avoid cluttering the prompt's "hot zone".*
|
||||
|
||||
|
||||
|
||||
### 🛡️ File Whitelist
|
||||
|
||||
- `~/tmp`, `~/Downloads`, `~/temp`, `~/agents_sync`
|
||||
|
||||
|
||||
|
||||
### 🗺️ Standard Directory Map
|
||||
|
||||
- **`src/lib/ae_api/`**: API V3 standard helpers.
|
||||
- **`src/lib/ae_journals/`**: Journals feature module.
|
||||
|
||||
- **`src/lib/ae_events/`**: Core event library and Dexie store.
|
||||
|
||||
- **`src/lib/types/ae_types.ts`**: Unified TypeScript interfaces.
|
||||
|
||||
|
||||
|
||||
### 📦 Modules Overview
|
||||
|
||||
- **Core:** Identity (`accounts`, `people`, `users`), Infrastructure (`sites`, `site_domains`), Storage (`hosted_files`).
|
||||
- **Feature:** Events (Badge printing, QR), Journals (Notes, AI), IDAA (Logistics, Jitsi).
|
||||
|
||||
- **Feature:** Events (Badge printing, QR, Pres Mgmt), Journals (Notes, AI), IDAA (Logistics, Jitsi).
|
||||
|
||||
|
||||
|
||||
### 🔗 Resources
|
||||
|
||||
- **Reference Stubs:** `agents_sync/technical/references/` (Svelte 5, Dexie, FastAPI).
|
||||
- **Official Docs:** [Svelte Runes](https://svelte.dev/blog/runes) | [Dexie Quick Ref](https://dexie.org/docs/API-Reference#quick-reference)
|
||||
|
||||
- **Official Docs:** [Svelte Runes](https://svelte.dev/blog/runes) | [Dexie Quick Ref](https://dexie.org/docs/API-Reference#quick-reference)
|
||||
|
||||
|
||||
|
||||
## Gemini Added Memories
|
||||
|
||||
- The Aether Docker environment now has a robust physical database management suite: restore_db.sh, check_and_import.sh, and export_db.sh. Password escaping issues resolved using single quotes in .env.
|
||||
|
||||
- Standalone DB tests in API project: Use virtual environment at 'environment/bin/python3', extract credentials from container env, and manually construct SQLAlchemy URI to bypass 'app.config' dependencies.
|
||||
|
||||
- [Harden: ID Integrity] Generic object processors MUST use truthy checks when mapping `_random` variants to clean keys to prevent `null` or `undefined` values from clobbering valid linking IDs received from V3 API responses.
|
||||
|
||||
- [Harden: Event File Loader] Implemented a "Safety Net" in `_refresh_file_li_background` to inject missing `for_id` and `for_type` from the query context before saving to Dexie, ensuring robust indexing even with partial API responses.
|
||||
|
||||
- Centralized 'public_read' flag in object definitions (core.py, cms.py, etc.) controls guest access in V3 API.
|
||||
|
||||
- V3 API 'view' parameter rollout complete across core event library modules.
|
||||
|
||||
- Presentation Management reports utilize the 'alt' view for file data shapes.
|
||||
|
||||
- The user prefers snake_case or Snake_Case over CamelCase for all naming and identifiers.
|
||||
|
||||
- Formatting Standard: Prettier printWidth is set to 80 to force multi-line expansion for attributes and calls.
|
||||
Reference in New Issue
Block a user