Skip to content

Feature/pubsub#131

Merged
jamals86 merged 3 commits intomainfrom
feature/pubsub
Feb 10, 2026
Merged

Feature/pubsub#131
jamals86 merged 3 commits intomainfrom
feature/pubsub

Conversation

@jamals86
Copy link
Copy Markdown
Collaborator

No description provided.

Introduce a reusable provider/macro infrastructure and topic operation plumbing.

- Add high-level provider metadata types (IndexedProviderDefinition, SimpleProviderDefinition) and helper pushdown function.
- Rework macros.rs: unify and harden build_record_batch helpers (array builder/append/finish), add eval_extractor, and introduce impl_indexed_system_table_provider and impl_simple_system_table_provider to remove repeated boilerplate for TableProvider/SystemTable implementations.
- Convert multiple system providers (audit_logs, job_nodes, jobs, live queries, etc.) to use the new build_record_batch macro and impl_* provider macros, reducing duplicated RecordBatch construction and TableProvider wiring.
- Update PathResolver::resolve_cleanup_prefix to correctly find a safe cleanup directory when templates contain dynamic placeholders ({userId}, {shard}) and add unit tests covering many cases.
- Add topic operation support across layers: add op field to API TopicMessage, format op in consume handler, implement Default for TopicOp, include operation when publishing, and add ops column in SQL consume record batch construction.
- Misc: small TODO/comments, type/namespace cleanups, and add a new CLI smoke test for high-load topic consumption.

These changes are intended to reduce boilerplate, centralize provider logic, improve safety for filestore cleanup, and propagate topic operation metadata through the stack.
Introduce a new kalamdb-publisher crate (source, models, routing, payload, offset, service) and move topic publishing logic out of core. Reorganize skill documentation by renaming .github/skills to .agents/skills and add many new skill/rule files (notably react, rust-skills, and Vercel patterns). Remove legacy speckit/.specify scaffolding and some gemini files, and update various backend crates (core, system, tables), Cargo.toml/Cargo.lock, tests, and specs (added specs/025-publisher-crate README). These changes split responsibilities, consolidate agent skills under .agents, and update tests/docs to reflect the new publisher crate and structure.
@jamals86 jamals86 merged commit e2bba65 into main Feb 10, 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