Commit Graph

28 Commits

Author SHA1 Message Date
ARCHITECT
4546003ce7 Fix getCategory to use set_hst for proper categorization
Tags are now categorized based on their set_hst field, which
points to the parent category tag (e.g., hst, spe, vue, vsn, msn).
This uses the actual semantic relationship defined in the database
rather than inferring from ref prefix or using the base.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:34:33 +00:00
ARCHITECT
7f247b446b Fix getCategory to use current base instead of ref prefix
Tags are categorized by the base they belong to, not by their
ref prefix. A tag in the hst table is always a hashtag, regardless
of whether its ref starts with "flg", "ply", etc.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:23:52 +00:00
ARCHITECT
2e8c1867b2 Graph sidebar shows only categories present in current data
- Count tags per category before rendering sidebar
- Only display categories that have tags in current view
- Show count next to each category name

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:19:18 +00:00
ARCHITECT
697bb27103 Fix graph sidebar state closure issue
Event handlers now read fresh state from State.get() instead of
using captured values from when bindSidebarEvents was called.
This ensures the sidebar updates correctly with each render.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:14:58 +00:00
ARCHITECT
0f2b28a88a Fix getLibraries to query library tables directly
Instead of depending on non-existent api_library_list_* views,
now queries library_${base} for unique mrf_library values and
fetches tag info from main table.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 22:01:33 +00:00
ARCHITECT
7d15ca010a Remove hst-frontend.html - moved to separate repo
HST frontend now lives in its own repository: tzzr/hst-frontend
This maintains clean separation between DECK and HST frontends.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 21:05:29 +00:00
ARCHITECT
00ea6cff8c Add HST-specific frontend (hst-frontend.html)
Customized version of DECK frontend for HST server (tzrtech.org):
- Remove DECK-specific bases: MST, BCK, MTH, ATC, Oracle, MAIL, CHAT
- Keep only taxonomy bases: HST, FLG, ITM, LOC, PLY
- Update IMG_BASE to https://tzrtech.org
- Update title to "hst" and logo to "HST"
- Clean up schema documentation

HST serves as the semantic tag model/template that DECK can copy from.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 20:43:21 +00:00
ARCHITECT
4f7f069e18 Add session log: Sistema Multi-Bucket ATC implementado
Implementación completa de soporte multi-bucket para tabla ATC:
- Tabla public.bucket_registry (metadata de buckets)
- Tabla public.bucket_access_log (auditoría)
- Campo bucket_mrf en tzzr_core_secretaria.atc
- 2275 archivos migrados a bucket 'deck'
- Documentación completa de sesión

Cambios menores:
- deck-v4.6.html actualizado
- Caddyfile para captain-mobile

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 20:35:28 +00:00
ARCHITECT
5e8e6a8428 DECK Frontend v4.6 - Fix API configuration for production
- Change API_BASE to https://tzrtech.org/api (HST server)
- Update all schemas to 'public' (actual DB schema)
- Fixes TreeView data loading in production

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 20:15:27 +00:00
ARCHITECT
66c45910da Add debug logs to EventBus
Events now logs to console when _debug is true:
- [Events.on] event (N handlers) - green
- [Events.off] event - orange
- [Events.emit] event data → N handlers - blue

Toggle in browser console:
  Events._debug = false  // disable
  Events._debug = true   // enable (default)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 19:56:05 +00:00
ARCHITECT
7672d5582f DECK Frontend v4.6 - EventBus decoupling
Added Events module for inter-component communication:
- Events.on(event, handler) - subscribe
- Events.off(event, handler) - unsubscribe
- Events.emit(event, data) - publish

Decoupled:
- GroupsBar → Events.emit('render') instead of App.renderView()
- LibrariesPanel → Events.emit('render')
- GraphView sidebar → Events.emit('render')
- GraphView node click → Events.emit('detail:show', mrf)

App subscribes to events in init():
- Events.on('render', () => this.renderView())
- Events.on('detail:show', (mrf) => DetailPanel.show(mrf))

Now modules don't know about each other - changes are isolated.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 19:37:34 +00:00
ARCHITECT
daea7753b6 DECK Frontend v4.5 - All 12 bases + generic structure
Added bases:
- MST (Masters) - tzzr_core_produccion
- BCK (Backlog) - tzzr_core_produccion
- Oracle - tzzr_core_secretaria

Reorganized UI groups:
- Taxonomía: HST, FLG, ITM, LOC, PLY
- Producción: MST, BCK, MTH
- Secretaría: ATC, Oracle
- Comunicación: MAIL, CHAT

Added categories for graph visualization:
- mst, bck, mth, atc, ora with distinct colors

Tables MST/BCK/Oracle don't exist in DB yet - frontend ready for them.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 19:10:52 +00:00
ARCHITECT
171a356b25 DECK Frontend v4.4 - Tree from tree_* relational tables
- Added API.getTree() to query tree_{base} tables
- TreeView now builds real 1:N hierarchy from tree_* data
- Recursive rendering with proper parent-child relationships
- Library filter still works (filters tags before building tree)
- Updated CSS for hierarchical tree display with depth indicators

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:53:37 +00:00
ARCHITECT
0bd1d6fbff DECK Frontend v4.3 - Portable with trivial extraction
- Simplified header (removed tag examples that interfered with extraction)
- Added extract.sh script for 3-file separation
- Structure: <style>, <body>, <script> cleanly separable
- Run: ./extract.sh deck.html → styles.css, app.js, index.html

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:37:31 +00:00
ARCHITECT
9b244138b5 Add pending apps and frontend components
- apps/captain-mobile: Mobile API service
- apps/flow-ui: Flow UI application
- apps/mindlink: Mindlink application
- apps/storage: Storage API and workers
- apps/tzzr-cli: TZZR CLI tool
- deck-frontend/backups: Historical TypeScript versions
- hst-frontend: Standalone HST frontend

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:26:59 +00:00
ARCHITECT
17506aaee2 Fix extraction markers interference in header comments
The example sed commands in the header contained the same
marker strings, causing extraction to capture header content.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:15:46 +00:00
ARCHITECT
384e9129c1 DECK Frontend v4.2 - Minor Accessibility Polish
- Toast: aria-live="assertive" + role="alert" for immediate announcements
- CSS: prefers-reduced-motion support added
- Version bump v4.1 → v4.2

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:01:39 +00:00
ARCHITECT
ec650d06df DECK Frontend v4.1 - Security & Accessibility Update
Changes:
- XSS protection with escapeHtml() utility
- Responsive CSS (3 mobile breakpoints)
- Full accessibility: aria-labels, roles, focus-visible
- GraphView memory leak fix
- Immutable state management

Files:
- deck-v4.1.html: Production-ready monolith
- CHANGELOG.md: Version history and documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 19:35:52 +00:00
ARCHITECT
295caa58c1 Fix graph view overflow and sidebar visibility
- Add graph-mode class to parent containers when graph view is active
- Add CSS rules for .graph-mode and :has(.graph-view) for overflow: visible
- Ensure sidebar and controls are not clipped by parent overflow
- Add width/height 100% to content-area.graph-view

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 00:47:57 +00:00
ARCHITECT
62408182a0 Fix graph sidebar visibility with overflow visible
- Add overflow: visible to .graph-view to prevent clipping
- Add .content-area.graph-view rule for parent overflow fix

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 00:19:34 +00:00
ARCHITECT
6d6e4e1bdf Fix view-tab reactivity using direct onclick binding
- Change view-tabs from delegateEvent to direct onclick like hst-frontend
- Remove hardcoded 'active' class from grid tab in HTML
- Update active class immediately on click before state update
- Update proxy target to tzrtech.org

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 00:16:38 +00:00
ARCHITECT
131e198851 Refactor GraphView with floating sidebar and zoom controls
- Move graph options from left panel to floating sidebar in GraphView
- Add zoom controls (fit, +, -) in top-right corner
- Add dynamic legend showing active categories
- Add cleanup system to View base class for event listeners
- Update delegateEvent to return cleanup function
- Filter nodes by category before rendering
- Fix text color variable (--text-primary to --text)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 00:07:26 +00:00
ARCHITECT
f55945fdb8 Add ATC thumbnail URL resolution for R2 storage
- Add resolveImgUrl() to prepend https://atc.tzzrdeck.me/ to relative paths
- Update getImg() and getFullImg() to use the new resolver
- Enables thumbnail display for attachments stored in R2 bucket

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 12:30:56 +00:00
ARCHITECT
0c3f95750c Move SEL/GET buttons to view-bar as grouped button pair
- Moved SEL and GET buttons from topbar to view-bar
- Created button group with consistent styling
- Positioned to the left of Grid/Tree/Graph tabs
- Added spacer for balanced layout

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 10:09:31 +00:00
ARCHITECT
79b7389f1f Add graph options panel and separate view bar
- Move view tabs (Grid/Tree/Graph) to dedicated bar below topbar
- Add graph options panel in left sidebar when in graph view:
  - Stats: node count, edge count
  - Category filters: Hashtags, Specs, Values, Visions, Missions, Flags
  - Relation filters: all edge types with color indicators
  - Visualization: images toggle, labels toggle, node size slider, link distance slider
- Left panel shows libraries in grid/tree view, graph options in graph view

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:59:00 +00:00
ARCHITECT
a0b20fc5db Fix library loading per base with new API views
- Use api_library_list_{base} views instead of generic query
- Add name_en and member_count to Library type
- Created PostgreSQL views for hst, flg, itm, loc, ply libraries

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:54:18 +00:00
ARCHITECT
a7ab3bab7d Add multi-schema support and per-base libraries
- Swap MST/BCK and MTH/ATC button positions
- Add schema support for different PostgreSQL schemas:
  - secretaria_clara: atc, mst, bck
  - production_alfred: mth
  - mail_manager: mail
  - context_manager: chat
- Libraries now load per-base (library_{base})
- Add new base types: key, mindlink
- Update FetchOptions to use schema instead of headers

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:43:54 +00:00
ARCHITECT
030b2a5312 Rename hst-frontend-new to deck-frontend
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 00:00:56 +00:00