Directories
¶
| Path | Synopsis |
|---|---|
|
Package app provides the core application structure and lifecycle management.
|
Package app provides the core application structure and lifecycle management. |
|
Package cache provides interfaces and types for caching implementations.
|
Package cache provides interfaces and types for caching implementations. |
|
testing
Package testing provides utilities for testing cache logic in go-bricks applications.
|
Package testing provides utilities for testing cache logic in go-bricks applications. |
|
cmd
|
|
|
seal-event
command
Command seal-event seals one JSON object as a sealed AMQP event body using the go-bricks jose/sealed package's production SealDocument path, so a queue can be fed a real sealed message from the shell without writing a Go program.
|
Command seal-event seals one JSON object as a sealed AMQP event body using the go-bricks jose/sealed package's production SealDocument path, so a queue can be fed a real sealed message from the shell without writing a Go program. |
|
seal-payload
command
Command seal-payload seals a JSON payload as a compact JWE-of-JWS token using the go-bricks jose package's production Seal path, so a jose-tagged endpoint can be exercised from curl without hand-writing a Go program.
|
Command seal-payload seals a JSON payload as a compact JWE-of-JWS token using the go-bricks jose package's production Seal path, so a jose-tagged endpoint can be exercised from curl without hand-writing a Go program. |
|
Package database provides cross-database query building utilities
|
Package database provides cross-database query building utilities |
|
identifier
Package identifier validates a single bare, unquoted SQL identifier segment against its vendor's grammar and byte cap.
|
Package identifier validates a single bare, unquoted SQL identifier segment against its vendor's grammar and byte cap. |
|
internal/builder
Package builder provides cross-database query building utilities.
|
Package builder provides cross-database query building utilities. |
|
internal/dbtestlog
Package dbtestlog provides shared test-logger helpers for the database vendor packages.
|
Package dbtestlog provides shared test-logger helpers for the database vendor packages. |
|
internal/deferred
Package deferred owns the query builders' deferred-error rule.
|
Package deferred owns the query builders' deferred-error rule. |
|
internal/tracking
Package tracking provides performance tracking for database operations.
|
Package tracking provides performance tracking for database operations. |
|
internal/wrapper
Package wrapper provides driver-agnostic wrappers around database/sql.Stmt and database/sql.Tx that implement the types.Statement and types.Tx interfaces.
|
Package wrapper provides driver-agnostic wrappers around database/sql.Stmt and database/sql.Tx that implement the types.Statement and types.Tx interfaces. |
|
testing
Package testing provides utilities for testing database logic in go-bricks applications.
|
Package testing provides utilities for testing database logic in go-bricks applications. |
|
types
Package types contains the core database interface definitions for go-bricks.
|
Package types contains the core database interface definitions for go-bricks. |
|
Package inbox provides durable consumer-side idempotency: a ledger that records processed event ids so redeliveries are skipped.
|
Package inbox provides durable consumer-side idempotency: a ledger that records processed event ids so redeliveries are skipped. |
|
testing
Package testing provides test utilities for the consumer-side inbox.
|
Package testing provides test utilities for the consumer-side inbox. |
|
internal
|
|
|
backoff
Package backoff is the saturating exponential used wherever the framework waits and retries.
|
Package backoff is the saturating exponential used wherever the framework waits and retries. |
|
configdecode
Package configdecode holds mapstructure decode hooks shared by the go-bricks config and migration packages, so the decode guards have a single source of truth inside the module.
|
Package configdecode holds mapstructure decode hooks shared by the go-bricks config and migration packages, so the decode guards have a single source of truth inside the module. |
|
keymaterial
Package keymaterial hosts the file-or-value key loading and DER parsing mechanism shared by the keystore module and internal/sealcli, through which the seal-payload and seal-event CLIs reach it.
|
Package keymaterial hosts the file-or-value key loading and DER parsing mechanism shared by the keystore module and internal/sealcli, through which the seal-payload and seal-event CLIs reach it. |
|
leasescope
Package leasescope carries a unit-of-work "lease scope" through context.Context.
|
Package leasescope carries a unit-of-work "lease scope" through context.Context. |
|
ledgererr
Package ledgererr bounds the diagnostic text a ledger writes to its error column.
|
Package ledgererr bounds the diagnostic text a ledger writes to its error column. |
|
pathutil
Package pathutil hosts the URL-path helpers shared by route registration and tenant resolution.
|
Package pathutil hosts the URL-path helpers shared by route registration and tenant resolution. |
|
publishdoor
Package publishdoor is the one link-time seam through which framework internals outside package messaging — the outbox relay — hand raw bytes to an AMQP client.
|
Package publishdoor is the one link-time seam through which framework internals outside package messaging — the outbox relay — hand raw bytes to an AMQP client. |
|
reflection
Package reflection provides internal utility functions for reflection operations in the go-bricks framework.
|
Package reflection provides internal utility functions for reflection operations in the go-bricks framework. |
|
resourcepool
Package resourcepool implements the ADR-032 keyed pool of leasable, refcounted, LRU-capped, idle-evicted resources, backing the cache, database, and messaging managers.
|
Package resourcepool implements the ADR-032 keyed pool of leasable, refcounted, LRU-capped, idle-evicted resources, backing the cache, database, and messaging managers. |
|
saferender
Package saferender renders decode and validation failures without echoing the input that caused them.
|
Package saferender renders decode and validation failures without echoing the input that caused them. |
|
sealcli
Package sealcli hosts the flag, key and payload plumbing the seal-payload and seal-event commands share: the four key-source flags with their help text, the exactly-one-of-per-pair refusal keymaterial deliberately leaves to its callers, and the file-or-stdin payload read.
|
Package sealcli hosts the flag, key and payload plumbing the seal-payload and seal-event commands share: the four key-source flags with their help text, the exactly-one-of-per-pair refusal keymaterial deliberately leaves to its callers, and the file-or-stdin payload read. |
|
secretfile
Package secretfile hosts the error-hygiene guards shared by every code path that reads key material from an operator-named file.
|
Package secretfile hosts the error-hygiene guards shared by every code path that reads key material from an operator-named file. |
|
sqlid
Package sqlid validates SQL identifiers (table names) before they are interpolated into DDL/DML, guarding against SQL identifier injection.
|
Package sqlid validates SQL identifiers (table names) before they are interpolated into DDL/DML, guarding against SQL identifier injection. |
|
streamruntime
Package streamruntime is the one link-time seam for the native streams lane.
|
Package streamruntime is the one link-time seam for the native streams lane. |
|
tenantstore
Package tenantstore provides the lazy, tenant-keyed store cache shared by the inbox and outbox modules.
|
Package tenantstore provides the lazy, tenant-keyed store cache shared by the inbox and outbox modules. |
|
testutil
Package testutil provides shared constants for testing across go-bricks.
|
Package testutil provides shared constants for testing across go-bricks. |
|
validation
Package validation constructs the framework's shared go-playground validator instance.
|
Package validation constructs the framework's shared go-playground validator instance. |
|
internal/cryptoadapter
Package cryptoadapter wraps go-jose/v4's parsing/signing option structs and header extraction with strict allowlist enforcement and a constant-time generic error surface.
|
Package cryptoadapter wraps go-jose/v4's parsing/signing option structs and header extraction with strict allowlist enforcement and a constant-time generic error surface. |
|
sealed
Package sealed implements field-level sealing for AMQP event payloads: one declared Subject field travels as a compact JWE inside a JSON document that is signed whole as a compact JWS (ADR-097 — encrypt-subset-then-sign-whole).
|
Package sealed implements field-level sealing for AMQP event payloads: one declared Subject field travels as a compact JWE inside a JSON document that is signed whole as a compact JWS (ADR-097 — encrypt-subset-then-sign-whole). |
|
testing
Package testing provides utilities for testing JOSE-protected handlers in go-bricks applications without requiring real counterparty credentials.
|
Package testing provides utilities for testing JOSE-protected handlers in go-bricks applications without requiring real counterparty credentials. |
|
Package keystore provides named key-material management for GoBricks applications: RSA key pairs and raw symmetric secrets (HMAC/CMAC keys, HKDF input).
|
Package keystore provides named key-material management for GoBricks applications: RSA key pairs and raw symmetric secrets (HMAC/CMAC keys, HKDF input). |
|
testing
Package testing provides test utilities for the keystore package.
|
Package testing provides test utilities for the keystore package. |
|
Package logger provides logging functionality with zerolog adapter
|
Package logger provides logging functionality with zerolog adapter |
|
Package messaging provides a unified interface for message queue operations.
|
Package messaging provides a unified interface for message queue operations. |
|
internal/delivery
Package delivery runs the delivery pipeline both messaging lanes share: everything that happens to one consumed message between "bytes arrived" and "outcome recorded" — trace extraction from the lane's carrier, the consumer span, the per-message lease scope, handler invocation, panic-to-error, one consumed record at completion, and the lane's own outcome line.
|
Package delivery runs the delivery pipeline both messaging lanes share: everything that happens to one consumed message between "bytes arrived" and "outcome recorded" — trace extraction from the lane's carrier, the consumer span, the per-message lease scope, handler invocation, panic-to-error, one consumed record at completion, and the lane's own outcome line. |
|
internal/lanecontract
Package lanecontract holds the contract every messaging lane driving the delivery pipeline must satisfy, and the fixture that drives it.
|
Package lanecontract holds the contract every messaging lane driving the delivery pipeline must satisfy, and the fixture that drives it. |
|
internal/payloaderr
Package payloaderr holds the payload-error core both messaging lanes build their typed consumers on: the decode and struct-validation steps, and a failure rendering that never echoes the body that caused it.
|
Package payloaderr holds the payload-error core both messaging lanes build their typed consumers on: the decode and struct-validation steps, and a failure rendering that never echoes the body that caused it. |
|
internal/sealruntime
Package sealruntime is the link-time seam between the messaging package and the payload-sealing codec (ADR-097).
|
Package sealruntime is the link-time seam between the messaging package and the payload-sealing codec (ADR-097). |
|
internal/tenantstamp
Package tenantstamp owns the tenant stamp: the carrier entry that carries a tenant identity between a producer and a consumer.
|
Package tenantstamp owns the tenant stamp: the carrier entry that carries a tenant identity between a producer and a consumer. |
|
sealed
Package sealed wires the jose/sealed codec into the messaging typed doors.
|
Package sealed wires the jose/sealed codec into the messaging typed doors. |
|
streams
Package streams publishes to and consumes RabbitMQ streams over the native stream protocol (default port 5552, rabbitmq_stream plugin).
|
Package streams publishes to and consumes RabbitMQ streams over the native stream protocol (default port 5552, rabbitmq_stream plugin). |
|
testing
Package testing provides test doubles for the messaging package's module-facing surface.
|
Package testing provides test doubles for the messaging package's module-facing surface. |
|
Package migration provides integration with Flyway for database migrations
|
Package migration provides integration with Flyway for database migrations |
|
provisioning
Package provisioning implements a durable, crash-recoverable state machine for dynamic per-tenant provisioning under the multi-tenant migration model defined in issue #379.
|
Package provisioning implements a durable, crash-recoverable state machine for dynamic per-tenant provisioning under the multi-tenant migration model defined in issue #379. |
|
provisioning/testing
Package testing provides test utilities for the provisioning state machine.
|
Package testing provides test utilities for the provisioning state machine. |
|
source/http
Package http provides a TenantLister that pulls tenant IDs from a control-plane API conforming to the go-bricks pre-defined contract.
|
Package http provides a TenantLister that pulls tenant IDs from a control-plane API conforming to the go-bricks pre-defined contract. |
|
source/static
Package static provides a TenantLister that enumerates tenant IDs from a config-backed source (typically the YAML-driven multitenant.tenants block).
|
Package static provides a TenantLister that enumerates tenant IDs from a config-backed source (typically the YAML-driven multitenant.tenants block). |
|
testing
Package testing provides utilities for testing OpenTelemetry instrumentation in GoBricks applications.
|
Package testing provides utilities for testing OpenTelemetry instrumentation in GoBricks applications. |
|
Package outbox provides a transactional outbox pattern for reliable event publishing.
|
Package outbox provides a transactional outbox pattern for reliable event publishing. |
|
testing
Package testing provides test utilities for the transactional outbox pattern.
|
Package testing provides test utilities for the transactional outbox pattern. |
|
scripts
|
|
|
mutatediff
command
Package main implements mutatediff, the diff-scoped mutation gate.
|
Package main implements mutatediff, the diff-scoped mutation gate. |
|
Package server provides enhanced HTTP handler functionality with type-safe request/response handling.
|
Package server provides enhanced HTTP handler functionality with type-safe request/response handling. |
|
Package testing provides comprehensive testing utilities for the go-bricks framework.
|
Package testing provides comprehensive testing utilities for the go-bricks framework. |
|
tools
|
|
|
migration
module
|
|
|
openapi
module
|
|
Click to show internal directories.
Click to hide internal directories.