Skip to content

Dev#441

Merged
mayanayza merged 14 commits intomainfrom
dev
Jan 7, 2026
Merged

Dev#441
mayanayza merged 14 commits intomainfrom
dev

Conversation

@mayanayza
Copy link
Collaborator

No description provided.

dependabot bot and others added 14 commits January 6, 2026 18:22
Bumps the cargo group with 1 update in the /backend directory: [rsa](https://github.com/RustCrypto/RSA).


Updates `rsa` from 0.9.9 to 0.9.10
- [Changelog](https://github.com/RustCrypto/RSA/blob/v0.9.10/CHANGELOG.md)
- [Commits](RustCrypto/RSA@v0.9.9...v0.9.10)

---
updated-dependencies:
- dependency-name: rsa
  dependency-version: 0.9.10
  dependency-type: indirect
  dependency-group: cargo
...

Signed-off-by: dependabot[bot] <[email protected]>
Interface deduplication in create_with_children queried by (host_id,
subnet_id, ip_address) but lacked MAC address fallback. When subnet_id
changed between discovery runs, existing interfaces weren't found,
causing duplicates that cascaded to port/service conflicts.

Changes:
- Add SqlValue::MacAddress variant for query binding
- Add EntityFilter::mac_address() filter method
- Add MAC fallback query after subnet+IP query fails
- Add partial index on (host_id, mac_address) for efficient lookups

The fix aligns interface deduplication with Interface::PartialEq which
already supports MAC matching.
- Add ASCII banner matching daemon style
- Add LOG_TARGET constant for consistent log filtering
- Log initialization milestones (database, services, routes, scheduler)
- Add configuration summary (port, URL, deployment type, features)
- Add "Server ready" message with API/UI endpoints
- Add shutdown logging on Ctrl+C
Backend:
- Add PaginationParams struct with limit/offset query parameters
- Add PaginationMeta to API responses (total_count, limit, offset, has_more)
- Create custom Query extractor using serde_qs for bracket notation support
- Implement get_paginated() in storage layer with COUNT query
- Update all handlers to return paginated responses
- Default limit: 50, max: 1000, use limit=0 for unlimited

Frontend:
- Regenerate TypeScript types with PaginationParams/PaginationMeta
- Update all queries to pass limit=0 (maintains current full-load behavior)
- DataControls already has client-side pagination (20 items/page)

API usage:
  GET /api/v1/hosts?pagination[limit]=10&pagination[offset]=20

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Move tag storage from per-entity UUID arrays to a centralized
entity_tags junction table, enabling cleaner bulk and inline
tag operations across all entity types.

Backend:
- Add entity_tags junction table with migration
- Create EntityTagStorage and EntityTagService for tag CRUD
- Add Taggable trait implemented for all 9 entity types
- Add generic /entity-tags endpoints (add, remove, bulk)
- Update handlers to hydrate tags from junction table
- Update StorableEntity impls to skip legacy tags column
- Clean up junction table entries on entity deletion
- Drop legacy tags columns and cascade trigger

Frontend:
- Add tag mutations (useAddEntityTag, useRemoveEntityTag, useBulkAssignTags)
- Create TagPickerInline component with entity mode
- Add bulk tagging support to DataControls
- Update all cards with inline tag editing
- Update all tabs with bulk tagging props
…a37c962ae

chore(deps): bump rsa from 0.9.9 to 0.9.10 in /backend in the cargo group across 1 directory
@mayanayza mayanayza merged commit f62ec76 into main Jan 7, 2026
4 checks passed
mayanayza added a commit that referenced this pull request Feb 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant