Skip to main content

Crate gonzalo_ticket

Crate gonzalo_ticket 

Source
Expand description

Ticket / work-item capability layer for gonzalo.

A typed Ticket is persisted as a Record (defined in gonzalo-domain); this crate adds the capability surface over it (ADR 0010): the TicketSource provider boundary, a per-connection field/state mapping policy, capability negotiation, and a RecordKey convention so tickets compose with the vector and graph layers by shared key.

Phase 1 is read-only import; write-back is capability-gated. Concrete provider connectors (GitHub, Jira, Linear, …) are separate, feature-gated crates built on this surface.

Re-exports§

pub use ingest::IngestError;
pub use ingest::IngestSummary;
pub use ingest::ingest;
pub use mapping::FieldMapping;
pub use mapping::ReverseError;
pub use mapping::StateMapping;
pub use mapping::StateSignal;
pub use mock::InMemorySource;
pub use source::Capabilities;
pub use source::Cursor;
pub use source::Page;
pub use source::Result;
pub use source::SourceError;
pub use source::TicketSource;

Modules§

conformance
Reusable conformance checks for TicketSource implementations.
ingest
The ingest engine: pull a TicketSource and persist each [Ticket] as a Record, using optimistic concurrency (ADR 0005). Re-sync is idempotent — unchanged tickets (same body hash) are skipped, so a full board re-scan is cheap. Depends only on the trait + Store, never on a concrete connector.
mapping
Per-connection field/state mapping policy (ADR 0010).
mock
An in-memory TicketSource — the read-only reference implementation, analogous to gonzalo_vector::MemoryVectorIndex. Useful for tests and for ingesting hand-built tickets without a network connector.
source
The provider boundary: TicketSource (ADR 0010).

Functions§

record_key
The stable RecordKey for a ticket: tickets / <provider> / <id>, where <id> is scoped_uid — the ticket’s uid, optionally prefixed with a board/connection discriminator.
scoped_uid
Build the id component of a ticket [RecordKey]: the bare uid, or "<scope>/<uid>" when a board/connection discriminator is supplied.