Skip to main content

Changelog

Every improvement, automatically tracked from our commit history.

Subscribe via Atom feed
← Prev Page 33 of 139 Next →
February 25, 2026
patch Core

Add comprehensive entity_store test coverage (94 tests, 48%→88%)

Details

New test areas covering previously untested functionality:

  • Sync ledger: list_all_entity_ids, entities_needing_sync (with

unsynced, modified-after-sync, local-only exclusion), mark_entity_synced,

mark_entities_synced batch, clear_sync_ledger_for_peer,

invalidate_sync_ledger_for_entity

  • Storage estimation: estimate_storage_bytes, estimate_storage_by_types
  • Cloud sync cursors: save/load/upsert/clear
  • Plugin fuel history: record, metrics (avg/peak/count), clear, isolation
  • RAG vector index: upsert, update, delete, delete_all, cosine similarity

search, type-filtered search, get_hashes with filter, fetch_all

  • Orphan management: find_orphan_entities, delete with cascade, empty

valid_types early return

  • Maintenance: checkpoint, run_maintenance orphan cleanup
  • DB diagnostics: returns table metadata
  • Query filter edge cases: path without slash prefix, missing field,

limit break, include_trashed, bool filter, string-to-number coercion,

string-to-bool coercion

  • Compact: write/delete/compact/verify data integrity
patch Core

Add cloud module test coverage: credential manager, envelope, sharing, error

Details

New test files and expanded existing ones for privstack-cloud:

  • cred_manager_integration_tests.rs: 8 tests covering CredentialManager

lifecycle (caching, refresh, clear, expiry-driven refresh, error propagation)

  • envelope_manager_tests.rs: 12 tests covering EnvelopeManager (keypair

state, open_dek roundtrip, seal_dek_for_user via wiremock, create_and_store,

retrieve_and_open)

  • sharing_tests.rs: 8 tests covering ShareManager (create, accept, revoke,

get shares, error cases) via wiremock

  • error_behavior_tests.rs: expanded from 24 to 37 tests, adding Display

coverage for all CloudError variants and Http variant testing via real

reqwest errors (connect failure, timeout)

  • types_tests.rs: added RateLimitConfig, SyncProgress, StsCredentials

optional fields, BatchMeta int deserialization, QuotaInfo string parsing

  • compaction_tests.rs: added recovery_key_s3_key format test

Coverage improvements: credential_manager 0%→98%, sharing 0%→72%,

envelope 0%→61%, error 78%→91%. Overall cloud coverage 45%→53%.

patch Core

Add comprehensive test suite for privstack-datasets (73 tests)

Details

Covers all DatasetStore operations from 0% to near-full coverage:

  • CRUD: create_empty, list, get, delete, rename, set_category
  • Mutations: insert_row, update_cell, delete_rows, add_column,

drop_column, rename_column, alter_column_type, duplicate,

import_csv_content, execute_mutation (committed + dry-run)

  • Queries: query_dataset (pagination, sort, filter), get_columns,

execute_raw_query, aggregate_query, aggregate_query_grouped,

execute_sql_v2 (with source: alias resolution)

  • Relations: create, list, delete
  • Row-page linking: link, get_page_for_row, get_row_for_page, unlink
  • Saved queries: create, update, delete, list, is_view flag
  • Views: create, update, delete, list, config roundtrip
  • Types: DatasetId format, DatasetColumnType mapping, serde roundtrips,

RelationType, StatementType, FilterOperator, SortDirection

patch Core

Fix 3 bugs in privstack-datasets found during test coverage work

Details

1. DatasetColumnType::from_duckdb("DATETIME") mapped to Date instead of

Timestamp — the DATE branch matched before the TIMESTAMP/DATETIME

branch. Reorder match arms so Timestamp is checked first.

2. DatasetStore::delete() violated FK constraints by deleting the

_datasets_meta row before the _dataset_relations, _dataset_row_pages,

and _dataset_views rows that reference it. Reorder to delete

dependent rows first.

3. query_mutation_preview() panicked on DuckDB 1.4.4 because

column_count()/column_name() crash on un-executed prepared

statements. Use DESCRIBE to get column info instead.

patch Core

Fix batch_ordering_by_list test prefix + auto-kill port conflicts in build.sh

Details
  • cross_verify_integration.rs: list prefix was missing `users/` and

`workspaces/` path segments, so it matched 0 keys instead of 3

  • build.sh: before starting test containers, kill any process already

bound to ports 9000 (MinIO) or 3307 (MySQL) to prevent docker

compose bind failures

← Prev Page 33 of 139 Next →

Get notified about new releases