Directories
¶
| Path | Synopsis |
|---|---|
|
Package audit is the durable, queryable, tamper-evident record of who did what to which resource.
|
Package audit is the durable, queryable, tamper-evident record of who did what to which resource. |
|
config
Package auditcfg assembles the audit log from environment configuration: the Recorder applications write through, the Reader they query and verify with, and the retention.Policy that prunes it.
|
Package auditcfg assembles the audit log from environment configuration: the Recorder applications write through, the Reader they query and verify with, and the retention.Policy that prunes it. |
|
grpc
Package grpc is the audit log on the wire: the gRPC service over github.com/primandproper/platform-go/v15/audit's Reader, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy.
|
Package grpc is the audit log on the wire: the gRPC service over github.com/primandproper/platform-go/v15/audit's Reader, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy. |
|
grpc/client
Package client is a typed client for the audit log's gRPC service.
|
Package client is a typed client for the audit log's gRPC service. |
|
internal/queries
Package queries is the audit schema described as data — the two canonical table names and their columns in the order every read projects them — and the statements run over it, rendered for each of the three dialects audit serves.
|
Package queries is the audit schema described as data — the two canonical table names and their columns in the order every read projects them — and the statements run over it, rendered for each of the three dialects audit serves. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the audit schema, one file per dialect, from audit/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the audit schema, one file per dialect, from audit/internal/queries. |
|
migrations
Package migrations supplies the audit tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the audit tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package auditmock provides moq-generated mock implementations of interfaces in the audit package.
|
Package auditmock provides moq-generated mock implementations of interfaces in the audit package. |
|
privacy
Package privacy is the audit log's contribution to a subject access request: a dataprivacy.Collector that returns the entries in which the subject acted, was acted on, or acted as somebody else.
|
Package privacy is the audit log's contribution to a subject access request: a dataprivacy.Collector that returns the entries in which the subject acted, was acted on, or acted as somebody else. |
|
authentication
|
|
|
grants
Package grants stores the tokens a third party granted this deployment: one standing credential per subject per provider, sealed at rest, refreshed by compare-and-set, and revocable from either side.
|
Package grants stores the tokens a third party granted this deployment: one standing credential per subject per provider, sealed at rest, refreshed by compare-and-set, and revocable from either side. |
|
grants/config
Package grantscfg assembles a third-party grant Store from environment configuration.
|
Package grantscfg assembles a third-party grant Store from environment configuration. |
|
grants/internal/queries
Package queries is the third-party grant schema described as data: the canonical table name, its columns in the order every read projects them, and the nine statements the store executes over them.
|
Package queries is the third-party grant schema described as data: the canonical table name, its columns in the order every read projects them, and the nine statements the store executes over them. |
|
grants/internal/queriesgen
command
Package main renders authentication/grants/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against.
|
Package main renders authentication/grants/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against. |
|
grants/migrations
Package migrations supplies the third-party grant table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the third-party grant table's DDL, rendered for a dialect and table prefix. |
|
grants/mock
Package grantsmock provides moq-generated mock implementations of interfaces in the grants package.
|
Package grantsmock provides moq-generated mock implementations of interfaces in the grants package. |
|
grants/privacy
Package privacy is the third-party grant table's contribution to a subject access request: a dataprivacy.Collector that returns the accounts somebody connected, and a dataprivacy.Eraser that destroys the grants.
|
Package privacy is the third-party grant table's contribution to a subject access request: a dataprivacy.Collector that returns the accounts somebody connected, and a dataprivacy.Eraser that destroys the grants. |
|
oauth2clients
Package oauth2clients is an administered registry of OAuth2 clients: the registrations an operator or a person creates on purpose, as opposed to the ones an anonymous caller mints at /register.
|
Package oauth2clients is an administered registry of OAuth2 clients: the registrations an operator or a person creates on purpose, as opposed to the ones an anonymous caller mints at /register. |
|
oauth2clients/authserver
Package authserver joins an administered client registry to the OAuth 2.1 authorization server in authentication/oauth2server.
|
Package authserver joins an administered client registry to the OAuth 2.1 authorization server in authentication/oauth2server. |
|
oauth2clients/config
Package oauth2clientscfg assembles an oauth2clients Store and Service from environment configuration.
|
Package oauth2clientscfg assembles an oauth2clients Store and Service from environment configuration. |
|
oauth2clients/grpc
Package grpc serves the administered OAuth2 client registry over gRPC.
|
Package grpc serves the administered OAuth2 client registry over gRPC. |
|
oauth2clients/grpc/client
Package client is a typed client for the OAuth2 client registry gRPC service.
|
Package client is a typed client for the OAuth2 client registry gRPC service. |
|
oauth2clients/internal/queries
Package queries is the registered clients schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns.
|
Package queries is the registered clients schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns. |
|
oauth2clients/internal/queriesgen
command
Package main renders the canonical sqlc input for the registered clients table, one .sql per dialect, from the table description in authentication/oauth2clients/internal/queries.
|
Package main renders the canonical sqlc input for the registered clients table, one .sql per dialect, from the table description in authentication/oauth2clients/internal/queries. |
|
oauth2clients/migrations
Package migrations supplies the registered clients table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the registered clients table's DDL, rendered for a dialect and table prefix. |
|
oauth2clients/mock
Package oauth2clientsmock provides moq-generated mock implementations of interfaces in the oauth2clients package.
|
Package oauth2clientsmock provides moq-generated mock implementations of interfaces in the oauth2clients package. |
|
oauth2clients/privacy
Package privacy is the client registry's contribution to a subject access request: a dataprivacy.Collector that returns the applications somebody registered, and a dataprivacy.Eraser that destroys them.
|
Package privacy is the client registry's contribution to a subject access request: a dataprivacy.Collector that returns the applications somebody registered, and a dataprivacy.Eraser that destroys them. |
|
oauth2serverstore
Package oauth2serverstore keeps an authorization server's state in SQL tables.
|
Package oauth2serverstore keeps an authorization server's state in SQL tables. |
|
oauth2serverstore/config
Package oauth2serverstorecfg assembles an OAuth 2.1 authorization server and its Store, choosing between SQL tables and memory.
|
Package oauth2serverstorecfg assembles an OAuth 2.1 authorization server and its Store, choosing between SQL tables and memory. |
|
oauth2serverstore/internal/queries
Package queries is the authorization server's schema described as data: the four canonical table names, each table's columns in the order every read projects them, and the columns a write may leave NULL.
|
Package queries is the authorization server's schema described as data: the four canonical table names, each table's columns in the order every read projects them, and the columns a write may leave NULL. |
|
oauth2serverstore/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the authorization server's schema, one file per dialect, from authentication/oauth2serverstore/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the authorization server's schema, one file per dialect, from authentication/oauth2serverstore/internal/queries. |
|
oauth2serverstore/migrations
Package migrations supplies the authorization server's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the authorization server's DDL, rendered for a dialect and table prefix. |
|
passkeys
Package passkeys stores the credentials a WebAuthn registration produces, and runs the ceremonies that produce and verify them.
|
Package passkeys stores the credentials a WebAuthn registration produces, and runs the ceremonies that produce and verify them. |
|
passkeys/config
Package passkeyscfg assembles a passkeys Store and Service from environment configuration.
|
Package passkeyscfg assembles a passkeys Store and Service from environment configuration. |
|
passkeys/grpc
Package grpc serves passkeys over gRPC: enrolling one, signing in with one, and the list and archive a settings page offers.
|
Package grpc serves passkeys over gRPC: enrolling one, signing in with one, and the list and archive a settings page offers. |
|
passkeys/grpc/client
Package client is a typed client for the passkeys gRPC service.
|
Package client is a typed client for the passkeys gRPC service. |
|
passkeys/internal/queries
Package queries is the registered-passkey schema described as data: the canonical table name, its columns in the order every read projects them, and the seven statements the store executes over them.
|
Package queries is the registered-passkey schema described as data: the canonical table name, its columns in the order every read projects them, and the seven statements the store executes over them. |
|
passkeys/internal/queriesgen
command
Package main renders authentication/passkeys/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against.
|
Package main renders authentication/passkeys/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against. |
|
passkeys/migrations
Package migrations supplies the registered-passkey table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the registered-passkey table's DDL, rendered for a dialect and table prefix. |
|
passkeys/mock
Package passkeysmock provides moq-generated mock implementations of interfaces in the passkeys package.
|
Package passkeysmock provides moq-generated mock implementations of interfaces in the passkeys package. |
|
passkeys/privacy
Package privacy is the registered-passkey table's contribution to a subject access request: a dataprivacy.Collector that returns the passkeys somebody enrolled, and a dataprivacy.Eraser that destroys them.
|
Package privacy is the registered-passkey table's contribution to a subject access request: a dataprivacy.Collector that returns the passkeys somebody enrolled, and a dataprivacy.Eraser that destroys them. |
|
passwordreset
Package passwordreset stores the token that lets somebody who cannot sign in prove they own the address the account was registered with, and ships the flow that spends it.
|
Package passwordreset stores the token that lets somebody who cannot sign in prove they own the address the account was registered with, and ships the flow that spends it. |
|
passwordreset/config
Package passwordresetcfg assembles a passwordreset Store and Service from environment configuration.
|
Package passwordresetcfg assembles a passwordreset Store and Service from environment configuration. |
|
passwordreset/grpc
Package grpc serves the password reset flow over gRPC.
|
Package grpc serves the password reset flow over gRPC. |
|
passwordreset/internal/queries
Package queries is the password reset token schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the seven statements the store executes over them.
|
Package queries is the password reset token schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the seven statements the store executes over them. |
|
passwordreset/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the password reset token schema, one file per dialect, from authentication/passwordreset/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the password reset token schema, one file per dialect, from authentication/passwordreset/internal/queries. |
|
passwordreset/migrations
Package migrations supplies the password reset token table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the password reset token table's DDL, rendered for a dialect and table prefix. |
|
passwordreset/mock
Package passwordresetmock provides moq-generated mock implementations of interfaces in the passwordreset package.
|
Package passwordresetmock provides moq-generated mock implementations of interfaces in the passwordreset package. |
|
passwordreset/privacy
Package privacy is the reset token table's contribution to a subject access request: a dataprivacy.Collector that returns when somebody asked to reset their password, and a dataprivacy.Eraser that destroys the record.
|
Package privacy is the reset token table's contribution to a subject access request: a dataprivacy.Collector that returns when somebody asked to reset their password, and a dataprivacy.Eraser that destroys the record. |
|
phonecodes
Package phonecodes is where a texted code lives: a short numeric credential sent to a phone number, stored as a digest, spent once, and dead after a handful of wrong guesses — for a person who is not a user.
|
Package phonecodes is where a texted code lives: a short numeric credential sent to a phone number, stored as a digest, spent once, and dead after a handful of wrong guesses — for a person who is not a user. |
|
phonecodes/config
Package phonecodescfg assembles a texted-code Store from environment configuration.
|
Package phonecodescfg assembles a texted-code Store from environment configuration. |
|
phonecodes/internal/queries
Package queries is the texted-code schema described as data: the canonical table name, its columns in the order every read projects them, and the eight statements the store executes over them.
|
Package queries is the texted-code schema described as data: the canonical table name, its columns in the order every read projects them, and the eight statements the store executes over them. |
|
phonecodes/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the texted-code schema, one file per dialect, from authentication/phonecodes/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the texted-code schema, one file per dialect, from authentication/phonecodes/internal/queries. |
|
phonecodes/migrations
Package migrations supplies the texted-code table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the texted-code table's DDL, rendered for a dialect and table prefix. |
|
phonecodes/mock
Package phonecodesmock provides moq-generated mock implementations of interfaces in the phonecodes package.
|
Package phonecodesmock provides moq-generated mock implementations of interfaces in the phonecodes package. |
|
phonecodes/privacy
Package privacy is the texted-code table's contribution to a subject access request: a dataprivacy.Collector that returns the numbers a person was texted a code at, and a dataprivacy.Eraser that destroys the rows.
|
Package privacy is the texted-code table's contribution to a subject access request: a dataprivacy.Collector that returns the numbers a person was texted a code at, and a dataprivacy.Eraser that destroys the rows. |
|
signin
Package signin is the service every application rewrites: proving somebody is who they say they are, and handing back a token that says so.
|
Package signin is the service every application rewrites: proving somebody is who they say they are, and handing back a token that says so. |
|
signin/config
Package signincfg assembles a signin Service from environment configuration.
|
Package signincfg assembles a signin Service from environment configuration. |
|
signin/devices
Package devices records where each login was last renewed from, and answers it back on a "where you're signed in" screen.
|
Package devices records where each login was last renewed from, and answers it back on a "where you're signed in" screen. |
|
signin/devices/internal/queries
Package queries is the sign-in device schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the five statements the store executes over them.
|
Package queries is the sign-in device schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the five statements the store executes over them. |
|
signin/devices/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the sign-in device schema, one file per dialect, from authentication/signin/devices/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the sign-in device schema, one file per dialect, from authentication/signin/devices/internal/queries. |
|
signin/devices/migrations
Package migrations supplies the sign-in device table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the sign-in device table's DDL, rendered for a dialect and table prefix. |
|
signin/devices/mock
Package devicesmock provides moq-generated mock implementations of interfaces in the devices package.
|
Package devicesmock provides moq-generated mock implementations of interfaces in the devices package. |
|
signin/devices/privacy
Package privacy is the sign-in device table's contribution to a subject access request: a dataprivacy.Collector that returns every address, user agent and device name recorded against a subject's logins, and a dataprivacy.Eraser that deletes them.
|
Package privacy is the sign-in device table's contribution to a subject access request: a dataprivacy.Collector that returns every address, user agent and device name recorded against a subject's logins, and a dataprivacy.Eraser that deletes them. |
|
signin/grpc
Package grpc serves the sign-in service over gRPC.
|
Package grpc serves the sign-in service over gRPC. |
|
signin/grpc/client
Package client is a typed client for the sign-in gRPC service.
|
Package client is a typed client for the sign-in gRPC service. |
|
signin/magiclinks
Package magiclinks is where a sign-in link's tokens live: a digest-keyed, single-use credential mailed to an address and spent for a session.
|
Package magiclinks is where a sign-in link's tokens live: a digest-keyed, single-use credential mailed to an address and spent for a session. |
|
signin/magiclinks/internal/queries
Package queries is the sign-in link schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the five statements the store executes over them.
|
Package queries is the sign-in link schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the five statements the store executes over them. |
|
signin/magiclinks/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the sign-in sign-in link schema, one file per dialect, from authentication/signin/magiclinks/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the sign-in sign-in link schema, one file per dialect, from authentication/signin/magiclinks/internal/queries. |
|
signin/magiclinks/migrations
Package migrations supplies the sign-in link table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the sign-in link table's DDL, rendered for a dialect and table prefix. |
|
signin/recoverycodes
Package recoverycodes is where a user's recovery codes live: a set of single-use, digest-at-rest second factors a person keeps on paper for the day they no longer have the authenticator they enrolled.
|
Package recoverycodes is where a user's recovery codes live: a set of single-use, digest-at-rest second factors a person keeps on paper for the day they no longer have the authenticator they enrolled. |
|
signin/recoverycodes/internal/queries
Package queries is the recovery code schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the six statements the store executes over them.
|
Package queries is the recovery code schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the six statements the store executes over them. |
|
signin/recoverycodes/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the sign-in recovery code schema, one file per dialect, from authentication/signin/recoverycodes/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the sign-in recovery code schema, one file per dialect, from authentication/signin/recoverycodes/internal/queries. |
|
signin/recoverycodes/migrations
Package migrations supplies the recovery code table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the recovery code table's DDL, rendered for a dialect and table prefix. |
|
signin/recoverycodes/mock
Package recoverycodesmock provides moq-generated mock implementations of interfaces in the recoverycodes package.
|
Package recoverycodesmock provides moq-generated mock implementations of interfaces in the recoverycodes package. |
|
signin/recoverycodes/privacy
Package privacy is the recovery code table's contribution to a subject access request: a dataprivacy.Collector that returns when somebody was issued a set of recovery codes and which of them they spent, and a dataprivacy.Eraser that destroys the set.
|
Package privacy is the recovery code table's contribution to a subject access request: a dataprivacy.Collector that returns when somebody was issued a set of recovery codes and which of them they spent, and a dataprivacy.Eraser that destroys the set. |
|
signin/refreshtokens
Package refreshtokens is where a sign-in's refresh tokens live: a digest-keyed, single-use credential grouped into families, one family per login.
|
Package refreshtokens is where a sign-in's refresh tokens live: a digest-keyed, single-use credential grouped into families, one family per login. |
|
signin/refreshtokens/internal/queries
Package queries is the sign-in refresh token schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the statements the store executes over them.
|
Package queries is the sign-in refresh token schema described as data: the canonical table name, its columns in the order every read projects them, the subsets a write assigns, and the statements the store executes over them. |
|
signin/refreshtokens/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the sign-in refresh token schema, one file per dialect, from authentication/signin/refreshtokens/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the sign-in refresh token schema, one file per dialect, from authentication/signin/refreshtokens/internal/queries. |
|
signin/refreshtokens/migrations
Package migrations supplies the sign-in refresh token table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the sign-in refresh token table's DDL, rendered for a dialect and table prefix. |
|
webauthnsessions
Package webauthnsessions stores WebAuthn ceremony state in a SQL table.
|
Package webauthnsessions stores WebAuthn ceremony state in a SQL table. |
|
webauthnsessions/config
Package webauthnsessionscfg assembles a WebAuthn relying party and its ceremony store, choosing between a SQL table and a cache.
|
Package webauthnsessionscfg assembles a WebAuthn relying party and its ceremony store, choosing between a SQL table and a cache. |
|
webauthnsessions/internal/queries
Package queries is the WebAuthn ceremony session schema described as data: the canonical table name, its columns in the order every read projects them, and the four statements the store executes over them.
|
Package queries is the WebAuthn ceremony session schema described as data: the canonical table name, its columns in the order every read projects them, and the four statements the store executes over them. |
|
webauthnsessions/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the WebAuthn ceremony session schema, one file per dialect, from authentication/webauthnsessions/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the WebAuthn ceremony session schema, one file per dialect, from authentication/webauthnsessions/internal/queries. |
|
webauthnsessions/migrations
Package migrations supplies the WebAuthn ceremony session table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the WebAuthn ceremony session table's DDL, rendered for a dialect and table prefix. |
|
Package billing stores what a deployment sells and what its customers paid.
|
Package billing stores what a deployment sells and what its customers paid. |
|
config
Package billingcfg assembles a billing Store from environment configuration.
|
Package billingcfg assembles a billing Store from environment configuration. |
|
grpc
Package grpc is billing on the wire: the gRPC service over github.com/primandproper/platform-go/v15/billing's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into their policy.
|
Package grpc is billing on the wire: the gRPC service over github.com/primandproper/platform-go/v15/billing's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into their policy. |
|
grpc/client
Package client is a typed client for the billing gRPC service.
|
Package client is a typed client for the billing gRPC service. |
|
http
Package http is a payment provider's webhook endpoint: verify the delivery, reconcile it into billing, and answer with the status code the provider acts on.
|
Package http is a payment provider's webhook endpoint: verify the delivery, reconcile it into billing, and answer with the status code the provider acts on. |
|
internal/queries
Package queries is the billing schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign.
|
Package queries is the billing schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the billing schema, one file per dialect, from billing/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the billing schema, one file per dialect, from billing/internal/queries. |
|
migrations
Package migrations supplies the billing tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the billing tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package billingmock provides moq-generated mock implementations of interfaces in the billing package.
|
Package billingmock provides moq-generated mock implementations of interfaces in the billing package. |
|
plans
Package plans answers entitlements' plan question and metering's billing-period question from the billing store.
|
Package plans answers entitlements' plan question and metering's billing-period question from the billing store. |
|
privacy
Package privacy is the billing tables' contribution to a subject access request: a dataprivacy.Collector that returns what somebody was sold and what they paid.
|
Package privacy is the billing tables' contribution to a subject access request: a dataprivacy.Collector that returns what somebody was sold and what they paid. |
|
standing
Package standing maps what a payment processor reported onto the standing an account is stored with.
|
Package standing maps what a payment processor reported onto the standing an account is stored with. |
|
sync
Package sync reconciles a payment processor's deliveries into the billing store: the webhook handler every consumer writes, with the two things they get wrong.
|
Package sync reconciles a payment processor's deliveries into the billing store: the webhook handler every consumer writes, with the two things they get wrong. |
|
Package callers is who is calling, as every gRPC surface in this module reads them: the interface a consumer's own authentication interceptor satisfies, the function that reads one off a request context, and the refusal a surface returns to a caller who may make this call and may not make it against the row they named.
|
Package callers is who is calling, as every gRPC surface in this module reads them: the interface a consumer's own authentication interceptor satisfies, the function that reads one off a request context, and the refusal a surface returns to a caller who may make this call and may not make it against the row they named. |
|
Package comments is the durable half of letting your users talk about your things: a scoped table of what was said, threaded one level deep, about targets this package deliberately cannot see.
|
Package comments is the durable half of letting your users talk about your things: a scoped table of what was said, threaded one level deep, about targets this package deliberately cannot see. |
|
config
Package commentscfg assembles a comments Store from environment configuration.
|
Package commentscfg assembles a comments Store from environment configuration. |
|
grpc
Package grpc is comments on the wire: the gRPC service over github.com/primandproper/platform-go/v15/comments's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into their policy.
|
Package grpc is comments on the wire: the gRPC service over github.com/primandproper/platform-go/v15/comments's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into their policy. |
|
grpc/client
Package client is a typed client for the comments gRPC service.
|
Package client is a typed client for the comments gRPC service. |
|
internal/queries
Package queries is the comments schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns.
|
Package queries is the comments schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns. |
|
internal/queriesgen
command
Package main renders the canonical sqlc input for the comments table, one .sql per dialect, from the table description in comments/internal/queries.
|
Package main renders the canonical sqlc input for the comments table, one .sql per dialect, from the table description in comments/internal/queries. |
|
migrations
Package migrations supplies the comments table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the comments table's DDL, rendered for a dialect and table prefix. |
|
mock
Package commentsmock provides moq-generated mock implementations of interfaces in the comments package.
|
Package commentsmock provides moq-generated mock implementations of interfaces in the comments package. |
|
privacy
Package privacy is the comments table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody wrote, and a dataprivacy.Eraser that destroys it.
|
Package privacy is the comments table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody wrote, and a dataprivacy.Eraser that destroys it. |
|
Package conformance is this module's promises, written once and assertable against three different subjects.
|
Package conformance is this module's promises, written once and assertable against three different subjects. |
|
all
Package all links every conformance suite this module ships.
|
Package all links every conformance suite this module ships. |
|
anonymous
Package anonymous asserts what every RPC in this module does with a request carrying no caller.
|
Package anonymous asserts what every RPC in this module does with a request carrying no caller. |
|
assembled
Package assembled is the conformance suite run against a service this module's composition root built, rather than one a harness built by hand.
|
Package assembled is the conformance suite run against a service this module's composition root built, rather than one a harness built by hand. |
|
audit
Package audit is the audit surface's promises, assertable against any subject that mounts it.
|
Package audit is the audit surface's promises, assertable against any subject that mounts it. |
|
billing
Package billing is the ledger surface's promises, assertable against any subject that mounts it.
|
Package billing is the ledger surface's promises, assertable against any subject that mounts it. |
|
comments
Package comments is the discussion surface's promises, assertable against any subject that mounts it.
|
Package comments is the discussion surface's promises, assertable against any subject that mounts it. |
|
dataprivacy
Package dataprivacy is the privacy-request surface's promises, and the promise operations/http makes about the work that fulfills one, asserted over HTTP against any subject that serves them.
|
Package dataprivacy is the privacy-request surface's promises, and the promise operations/http makes about the work that fulfills one, asserted over HTTP against any subject that serves them. |
|
filters
Package filters asserts that every paged read in this module refuses a malformed filter, rather than answering a page it half-applied.
|
Package filters asserts that every paged read in this module refuses a malformed filter, rather than answering a page it half-applied. |
|
identity
Package identity is the directory surface's promises, assertable against any subject that mounts it.
|
Package identity is the directory surface's promises, assertable against any subject that mounts it. |
|
internal/httpcall
Package httpcall is how the suites asserting this module's HTTP surfaces make a request as a caller and read what the router answered.
|
Package httpcall is how the suites asserting this module's HTTP surfaces make a request as a caller and read what the router answered. |
|
internal/pagedrpc
Package pagedrpc finds every paged read this module serves over gRPC — every RPC whose request carries a filtering.v1.QueryFilter — and builds a request for each that is answerable apart from its filter.
|
Package pagedrpc finds every paged read this module serves over gRPC — every RPC whose request carries a filtering.v1.QueryFilter — and builds a request for each that is answerable apart from its filter. |
|
internal/people
Package people mints the pair a person-owned confinement is asserted between: two different people in one directory.
|
Package people mints the pair a person-owned confinement is asserted between: two different people in one directory. |
|
internal/services
Package services is the gRPC services this module mounts, as the cross-cutting suites find them: a name, a message from the service's package to reach its descriptor through, and the field of conformance.Surfaces it is called through.
|
Package services is the gRPC services this module mounts, as the cross-cutting suites find them: a name, a message from the service's package to reach its descriptor through, and the field of conformance.Surfaces it is called through. |
|
issuereports
Package issuereports is the report queue's promises, assertable against any subject that mounts it.
|
Package issuereports is the report queue's promises, assertable against any subject that mounts it. |
|
mediaregistry
Package mediaregistry is the media registry's promises, asserted against any subject that serves them: the guarded object read over HTTP, and the resource surface over gRPC.
|
Package mediaregistry is the media registry's promises, asserted against any subject that serves them: the guarded object read over HTTP, and the resource surface over gRPC. |
|
notifications
Package notifications is the inbox and device surface's promises, assertable against any subject that mounts it.
|
Package notifications is the inbox and device surface's promises, assertable against any subject that mounts it. |
|
oauth2clients
Package oauth2clients is the administered half of the OAuth2 client registry's promises, assertable against any subject that mounts it.
|
Package oauth2clients is the administered half of the OAuth2 client registry's promises, assertable against any subject that mounts it. |
|
oauth2server
Package oauth2server is the OAuth 2.1 authorization server's storage promises, assertable against any subject that serves it.
|
Package oauth2server is the OAuth 2.1 authorization server's storage promises, assertable against any subject that serves it. |
|
operations
Package operations is the operations surface's promises, asserted over HTTP against any subject that serves it: an operation is read, listed, cancelled and followed by its owners, and by nobody else.
|
Package operations is the operations surface's promises, asserted over HTTP against any subject that serves it: an operation is read, listed, cancelled and followed by its owners, and by nobody else. |
|
pagination
Package pagination asserts that every paged read in this module reports the filter it actually applied.
|
Package pagination asserts that every paged read in this module reports the filter it actually applied. |
|
passkeys
Package passkeys is the passkey surface, as promises assertable against any subject that mounts it.
|
Package passkeys is the passkey surface, as promises assertable against any subject that mounts it. |
|
passwordreset
Package passwordreset is the way back in for somebody who cannot sign in, as promises assertable against any subject that mounts it.
|
Package passwordreset is the way back in for somebody who cannot sign in, as promises assertable against any subject that mounts it. |
|
reservations
Package reservations asserts that a deployment refuses its members the calls it says it reserves.
|
Package reservations asserts that a deployment refuses its members the calls it says it reserves. |
|
settings
Package settings is the settings surface's promises, assertable against any subject that mounts it.
|
Package settings is the settings surface's promises, assertable against any subject that mounts it. |
|
signin
Package signin is the credential surface's promises, assertable against any subject that mounts it.
|
Package signin is the credential surface's promises, assertable against any subject that mounts it. |
|
waitlists
Package waitlists is the signup surface's promises, assertable against any subject that mounts it.
|
Package waitlists is the signup surface's promises, assertable against any subject that mounts it. |
|
webhooks
Package webhooks is the outbound webhook surface's promises, assertable against any subject that mounts it.
|
Package webhooks is the outbound webhook surface's promises, assertable against any subject that mounts it. |
|
Package dataprivacy fulfills GDPR and CCPA subject access and erasure requests as durable, auditable operations.
|
Package dataprivacy fulfills GDPR and CCPA subject access and erasure requests as durable, auditable operations. |
|
auditerasure
Package auditerasure supplies a dataprivacy.Eraser for the audit log.
|
Package auditerasure supplies a dataprivacy.Eraser for the audit log. |
|
config
Package dataprivacycfg assembles the data privacy machinery from environment configuration: the Store every part shares, the Service applications submit through, the Fulfiller that does the work, and the Sweeper that expires.
|
Package dataprivacycfg assembles the data privacy machinery from environment configuration: the Store every part shares, the Service applications submit through, the Fulfiller that does the work, and the Sweeper that expires. |
|
http
Package http mounts the data-privacy request surface on a routing.Router.
|
Package http mounts the data-privacy request surface on a routing.Router. |
|
internal/queries
Package queries is the dataprivacy schema described as data: the canonical table name, its columns in the order every read projects them, and the arguments the guarded writes bind their comparands under.
|
Package queries is the dataprivacy schema described as data: the canonical table name, its columns in the order every read projects them, and the arguments the guarded writes bind their comparands under. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the dataprivacy schema, one file per dialect, from dataprivacy/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the dataprivacy schema, one file per dialect, from dataprivacy/internal/queries. |
|
migrations
Package migrations supplies the data-privacy request table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the data-privacy request table's DDL, rendered for a dialect and table prefix. |
|
mock
Package dataprivacymock provides moq-generated mock implementations of interfaces in the dataprivacy package.
|
Package dataprivacymock provides moq-generated mock implementations of interfaces in the dataprivacy package. |
|
Package entitlements answers "may this account use this feature, and how much is left".
|
Package entitlements answers "may this account use this feature, and how much is left". |
|
config
Package entitlementscfg assembles the entitlements machinery from configuration: the Catalog plans are read into, the Checker that answers questions against it, and the metering.QuotaSource that keeps metering enforcing the catalog's limits rather than its own.
|
Package entitlementscfg assembles the entitlements machinery from configuration: the Catalog plans are read into, the Checker that answers questions against it, and the metering.QuotaSource that keeps metering enforcing the catalog's limits rather than its own. |
|
mock
Package entitlementsmock provides moq-generated mock implementations of interfaces in the entitlements package.
|
Package entitlementsmock provides moq-generated mock implementations of interfaces in the entitlements package. |
|
Package errormappers registers this module's domain tier with the two transport registries, in one call.
|
Package errormappers registers this module's domain tier with the two transport registries, in one call. |
|
Package identity stores the thing being authenticated.
|
Package identity stores the thing being authenticated. |
|
config
Package identitycfg assembles identity's three layers from environment configuration: the Store, the Service over it, and the gRPC server over that.
|
Package identitycfg assembles identity's three layers from environment configuration: the Store, the Service over it, and the gRPC server over that. |
|
grpc
Package grpc is identity on the wire: the gRPC service over github.com/primandproper/platform-go/v15/identity's Service and Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy.
|
Package grpc is identity on the wire: the gRPC service over github.com/primandproper/platform-go/v15/identity's Service and Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy. |
|
grpc/client
Package client is a typed client for identity's gRPC service.
|
Package client is a typed client for identity's gRPC service. |
|
internal/queries
Package queries is the identity schema described as data: the canonical table names, each table's columns in the order every read projects them, and the two subsets a write may assign.
|
Package queries is the identity schema described as data: the canonical table names, each table's columns in the order every read projects them, and the two subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the identity schema, one file per dialect, from identity/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the identity schema, one file per dialect, from identity/internal/queries. |
|
migrations
Package migrations supplies the identity tables' DDL, rendered for a dialect and table prefix, as the versions it has shipped in.
|
Package migrations supplies the identity tables' DDL, rendered for a dialect and table prefix, as the versions it has shipped in. |
|
mock
Package identitymock provides moq-generated mock implementations of interfaces in the identity package.
|
Package identitymock provides moq-generated mock implementations of interfaces in the identity package. |
|
privacy
Package privacy is the identity tables' contribution to a subject access request: a dataprivacy.Collector that returns who somebody is to the directory, and a dataprivacy.Eraser that destroys them.
|
Package privacy is the identity tables' contribution to a subject access request: a dataprivacy.Collector that returns who somebody is to the directory, and a dataprivacy.Eraser that destroys them. |
|
internal
|
|
|
archivegate
Package archivegate is the one door from a wire filter to a store filter on this module's gRPC surfaces, and the archive grant every paged read has to name to pass through it.
|
Package archivegate is the one door from a wire filter to a store filter on this module's gRPC surfaces, and the archive grant every paged read has to name to pass through it. |
|
cmd/benchtable
command
Command benchtable turns raw `go test -bench` output into a markdown reference table.
|
Command benchtable turns raw `go test -bench` output into a markdown reference table. |
|
cmd/conformancesummary
command
Command conformancesummary reads `go test -json` output for the conformance tree on stdin and reports, per suite and per subject, how many assertions passed, skipped and failed.
|
Command conformancesummary reads `go test -json` output for the conformance tree on stdin and reports, per suite and per subject, how many assertions passed, skipped and failed. |
|
cmd/readmegen
command
Command readmegen writes the two README sections that are rosters of the tree — "Stores and Transports" and "SQL Dialect Support" — from the tree itself.
|
Command readmegen writes the two README sections that are rosters of the tree — "Stores and Transports" and "SQL Dialect Support" — from the tree itself. |
|
collapsedruns
Package collapsedruns is where the two schemas that were versioned runs in v14 are pinned to the tables those runs left behind, and it holds nothing else.
|
Package collapsedruns is where the two schemas that were versioned runs in v14 are pinned to the tables those runs left behind, and it holds nothing else. |
|
configroster
Package configroster holds the tests that walk every config subpackage in the module at once: the one that says a zero-valued config either validates or says why it cannot, the one that says a config naming a provider must carry that provider's block, and the one that says the first of those names every config subpackage this module ships.
|
Package configroster holds the tests that walk every config subpackage in the module at once: the one that says a zero-valued config either validates or says why it cannot, the one that says a config naming a provider must carry that provider's block, and the one that says the first of those names every config subpackage this module ships. |
|
countwidth
Package countwidth is where the width of every exported count in this module is checked against one rule, and it holds nothing else.
|
Package countwidth is where the width of every exported count in this module is checked against one rule, and it holds nothing else. |
|
directrequires
Package directrequires is where go.mod's account of which modules this module's own source imports is checked against the source, and it holds nothing else.
|
Package directrequires is where go.mod's account of which modules this module's own source imports is checked against the source, and it holds nothing else. |
|
hookroster
Package hookroster is where every store write in this module is checked against the hook it owes, and it holds nothing else.
|
Package hookroster is where every store write in this module is checked against the hook it owes, and it holds nothing else. |
|
mcptoolfixture
Package mcptoolfixture holds the documented structs mcptool's suite extracts and reflects.
|
Package mcptoolfixture holds the documented structs mcptool's suite extracts and reflects. |
|
protoconvention
Package protoconvention is where the JSON spelling of every field in every .proto this module ships is checked against one rule, and it holds nothing else.
|
Package protoconvention is where the JSON spelling of every field in every .proto this module ships is checked against one rule, and it holds nothing else. |
|
routeguard
Package routeguard is the permission check in front of an HTTP surface's guarded routes, shared by the three surfaces that have them.
|
Package routeguard is the permission check in front of an HTTP surface's guarded routes, shared by the three surfaces that have them. |
|
scheduledjob
Package scheduledjob is the one place the self-scheduling stores turn their jobscfg.JobConfig into the jobs a scheduler registers.
|
Package scheduledjob is the one place the self-scheduling stores turn their jobscfg.JobConfig into the jobs a scheduler registers. |
|
schemaconvention
Package schemaconvention is where the module's schema convention is asserted, and it holds nothing else.
|
Package schemaconvention is where the module's schema convention is asserted, and it holds nothing else. |
|
scopeddl
Package scopeddl is where every tenancy column this module's schemas ship is enumerated, and it holds nothing else.
|
Package scopeddl is where every tenancy column this module's schemas ship is enumerated, and it holds nothing else. |
|
sentinelmatrix
Package sentinelmatrix is where this module's domain sentinels are checked against the statuses they resolve to, and it holds nothing else.
|
Package sentinelmatrix is where this module's domain sentinels are checked against the statuses they resolve to, and it holds nothing else. |
|
sqltier
Package sqltier is where every package in this module that holds SQL is named with the tier its statements execute on, and it holds nothing else.
|
Package sqltier is where every package in this module that holds SQL is named with the tier its statements execute on, and it holds nothing else. |
|
tiercheck
Package tiercheck is where every package in this module is named with the tier it belongs to, and it holds nothing else.
|
Package tiercheck is where every package in this module is named with the tier it belongs to, and it holds nothing else. |
|
txcount
Package txcount counts the statements a store sends through a transaction, and holds nothing else.
|
Package txcount counts the statements a store sends through a transaction, and holds nothing else. |
|
Package issuereports is the durable half of asking your users what is wrong: a scoped table of what they told you, and where each report stands.
|
Package issuereports is the durable half of asking your users what is wrong: a scoped table of what they told you, and where each report stands. |
|
config
Package issuereportscfg assembles an issuereports Store from environment configuration.
|
Package issuereportscfg assembles an issuereports Store from environment configuration. |
|
grpc
Package grpc serves the issue report queue over gRPC.
|
Package grpc serves the issue report queue over gRPC. |
|
grpc/client
Package client is a typed client for the issue reports gRPC service.
|
Package client is a typed client for the issue reports gRPC service. |
|
internal/queries
Package queries is the issue reports schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns.
|
Package queries is the issue reports schema described as data: the canonical table name, the table's columns in the order every read projects them, and the subsets each write assigns. |
|
internal/queriesgen
command
Package main renders the canonical sqlc input for the issue reports table, one .sql per dialect, from the table description in issuereports/internal/queries.
|
Package main renders the canonical sqlc input for the issue reports table, one .sql per dialect, from the table description in issuereports/internal/queries. |
|
mcp
Package mcp serves the issue report queue to a model, as read-only Model Context Protocol tools.
|
Package mcp serves the issue report queue to a model, as read-only Model Context Protocol tools. |
|
migrations
Package migrations supplies the issue reports table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the issue reports table's DDL, rendered for a dialect and table prefix. |
|
mock
Package issuereportsmock provides moq-generated mock implementations of interfaces in the issuereports package.
|
Package issuereportsmock provides moq-generated mock implementations of interfaces in the issuereports package. |
|
privacy
Package privacy is the issue reports table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody filed, and a dataprivacy.Eraser that destroys it.
|
Package privacy is the issue reports table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody filed, and a dataprivacy.Eraser that destroys it. |
|
Package links mints URLs that prove their bearer was sent them, once, until they expire.
|
Package links mints URLs that prove their bearer was sent them, once, until they expire. |
|
config
Package linkscfg assembles a links.Minter from environment configuration.
|
Package linkscfg assembles a links.Minter from environment configuration. |
|
database
Package database stores action link records in a SQL table.
|
Package database stores action link records in a SQL table. |
|
database/internal/queries
Package queries is the action link schema described as data: the table's name, its columns in the order every statement lists them, the subset a resolution may assign, and the two that may be NULL.
|
Package queries is the action link schema described as data: the table's name, its columns in the order every statement lists them, the subset a resolution may assign, and the two that may be NULL. |
|
database/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the action link schema, one file per dialect, from links/database/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the action link schema, one file per dialect, from links/database/internal/queries. |
|
database/migrations
Package migrations supplies the action link table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the action link table's DDL, rendered for a dialect and table prefix. |
|
mock
Package linksmock provides moq-generated mock implementations of interfaces in the links package.
|
Package linksmock provides moq-generated mock implementations of interfaces in the links package. |
|
Package mcptool is what a Model Context Protocol tool surface is built on: the schema a tool's input and output are described with, and the gate every call passes before it reaches a store.
|
Package mcptool is what a Model Context Protocol tool surface is built on: the schema a tool's input and output are described with, and the gate every call passes before it reaches a store. |
|
mcpdocs
command
Command mcpdocs writes the field doc comments a package's MCP tool schemas describe their properties with, as a generated Go file.
|
Command mcpdocs writes the field doc comments a package's MCP tool schemas describe their properties with, as a generated Go file. |
|
Package mediaregistry records what was uploaded: one row per object in storage, saying who put it there, into which tenant, what it is, how big it is, and what it belongs to.
|
Package mediaregistry records what was uploaded: one row per object in storage, saying who put it there, into which tenant, what it is, how big it is, and what it belongs to. |
|
config
Package mediaregistrycfg assembles an upload registry Store from environment configuration.
|
Package mediaregistrycfg assembles an upload registry Store from environment configuration. |
|
grpc
Package grpc is the media registry's resource surface: putting an object in the bucket as the caller's, registering one that arrived some other way, and reading back what is theirs.
|
Package grpc is the media registry's resource surface: putting an object in the bucket as the caller's, registering one that arrived some other way, and reading back what is theirs. |
|
grpc/client
Package client is a typed client for the media registry gRPC service.
|
Package client is a typed client for the media registry gRPC service. |
|
http
Package http serves the bytes behind a mediaregistry row, to the callers the row entitles.
|
Package http serves the bytes behind a mediaregistry row, to the callers the row entitles. |
|
internal/queries
Package queries is the upload registry's schema described as data: the canonical table name, its columns in the order every read projects them, and the subsets a write may assign.
|
Package queries is the upload registry's schema described as data: the canonical table name, its columns in the order every read projects them, and the subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the upload registry schema, one file per dialect, from mediaregistry/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the upload registry schema, one file per dialect, from mediaregistry/internal/queries. |
|
migrations
Package migrations supplies the upload registry's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the upload registry's DDL, rendered for a dialect and table prefix. |
|
mock
Package mediaregistrymock provides moq-generated mock implementations of interfaces in the mediaregistry package.
|
Package mediaregistrymock provides moq-generated mock implementations of interfaces in the mediaregistry package. |
|
privacy
Package privacy is the registry table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody uploaded, and a dataprivacy.Eraser that withdraws it and says what is left.
|
Package privacy is the registry table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody uploaded, and a dataprivacy.Eraser that withdraws it and says what is left. |
|
Package metering counts what customers consume and enforces what they are allowed to, durably enough to invoice from.
|
Package metering counts what customers consume and enforces what they are allowed to, durably enough to invoice from. |
|
config
Package meteringcfg assembles the usage metering machinery from environment configuration: the Store every part shares, the Recorder usage arrives through, the Enforcer quotas are checked against, and the Flusher that posts to the billing provider.
|
Package meteringcfg assembles the usage metering machinery from environment configuration: the Store every part shares, the Recorder usage arrives through, the Enforcer quotas are checked against, and the Flusher that posts to the billing provider. |
|
internal/queries
Package queries is metering's two tables described as data: their canonical names, their columns in the order every read projects them, the subsets each write assigns, and the natural key every statement addresses a row by.
|
Package queries is metering's two tables described as data: their canonical names, their columns in the order every read projects them, the subsets each write assigns, and the natural key every statement addresses a row by. |
|
internal/queriesgen
command
Package main renders the canonical sqlc input for metering's two tables, and the DDL those queries are checked against.
|
Package main renders the canonical sqlc input for metering's two tables, and the DDL those queries are checked against. |
|
migrations
Package migrations supplies the usage metering tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the usage metering tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package meteringmock provides moq-generated mock implementations of interfaces in the metering package.
|
Package meteringmock provides moq-generated mock implementations of interfaces in the metering package. |
|
Package notifications is the durable half of telling somebody something: the in-app inbox, and the registry of devices a push can be addressed to.
|
Package notifications is the durable half of telling somebody something: the in-app inbox, and the registry of devices a push can be addressed to. |
|
config
Package notificationscfg assembles a notifications store — the in-app inbox and the device registry — from environment configuration.
|
Package notificationscfg assembles a notifications store — the in-app inbox and the device registry — from environment configuration. |
|
grpc
Package grpc serves the in-app inbox and the device registry over gRPC.
|
Package grpc serves the in-app inbox and the device registry over gRPC. |
|
grpc/client
Package client is a typed client for the notifications gRPC service.
|
Package client is a typed client for the notifications gRPC service. |
|
internal/queries
Package queries is the notifications schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign.
|
Package queries is the notifications schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the notifications schema, one file per dialect, from notifications/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the notifications schema, one file per dialect, from notifications/internal/queries. |
|
mail
Package mail is the queued transport for the mail this module's services owe: one QueuedMailer that satisfies every Mailer seam here by enqueuing the mail on the outbox, and one Drainer that takes it off the topic, renders it through the consumer's Renderer and sends it through an email.Emailer.
|
Package mail is the queued transport for the mail this module's services owe: one QueuedMailer that satisfies every Mailer seam here by enqueuing the mail on the outbox, and one Drainer that takes it off the topic, renders it through the consumer's Renderer and sends it through an email.Emailer. |
|
migrations
Package migrations supplies the notification tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the notification tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package notificationsmock provides moq-generated mock implementations of interfaces in the notifications package.
|
Package notificationsmock provides moq-generated mock implementations of interfaces in the notifications package. |
|
privacy
Package privacy is notifications' contribution to a subject access request: what somebody was told, what handsets they registered, and the destruction of both.
|
Package privacy is notifications' contribution to a subject access request: what somebody was told, what handsets they registered, and the destruction of both. |
|
push
Package push is the fan-out: one announcement, every handset the people named have registered, and the dead tokens pruned on the way.
|
Package push is the fan-out: one announcement, every handset the people named have registered, and the dead tokens pruned on the way. |
|
Package operations runs work that outlives the request that asked for it, and gives the client something to watch while it does.
|
Package operations runs work that outlives the request that asked for it, and gives the client something to watch while it does. |
|
config
Package operationscfg assembles the long-running-operations tier — the store, the service, the worker that runs operations, and the watcher that streams them — from environment configuration.
|
Package operationscfg assembles the long-running-operations tier — the store, the service, the worker that runs operations, and the watcher that streams them — from environment configuration. |
|
http
Package http mounts the operations read surface on a routing.Router.
|
Package http mounts the operations read surface on a routing.Router. |
|
internal/queries
Package queries is the operations schema described as data — the canonical table name and the column list every read projects — together with the statements the operations store executes.
|
Package queries is the operations schema described as data — the canonical table name and the column list every read projects — together with the statements the operations store executes. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the operations schema, one file per dialect it serves, from operations/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the operations schema, one file per dialect it serves, from operations/internal/queries. |
|
migrations
Package migrations supplies the operations table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the operations table's DDL, rendered for a dialect and table prefix. |
|
mock
Package operationsmock provides moq-generated mock implementations of interfaces in the operations package.
|
Package operationsmock provides moq-generated mock implementations of interfaces in the operations package. |
|
Package outbox makes "write a row and publish an event" atomic.
|
Package outbox makes "write a row and publish an event" atomic. |
|
config
Package outboxcfg assembles the outbox from environment configuration: a Writer for the transactional side and a Relay, with its publisher provider, for the delivery side.
|
Package outboxcfg assembles the outbox from environment configuration: a Writer for the transactional side and a Relay, with its publisher provider, for the delivery side. |
|
internal/queries
Package queries is the outbox schema described as data — the canonical table name and its columns in the order every statement names them — together with the statements the Writer and the Relay execute, rendered from it.
|
Package queries is the outbox schema described as data — the canonical table name and its columns in the order every statement names them — together with the statements the Writer and the Relay execute, rendered from it. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the outbox schema, one file per dialect it serves, from outbox/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the outbox schema, one file per dialect it serves, from outbox/internal/queries. |
|
migrations
Package migrations supplies the outbox table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the outbox table's DDL, rendered for a dialect and table prefix. |
|
Package privacyadapters registers the privacy adapters this module ships into a dataprivacy.Registry, in one call.
|
Package privacyadapters registers the privacy adapters this module ships into a dataprivacy.Registry, in one call. |
|
Package rbac stores authorization policy in SQL tables.
|
Package rbac stores authorization policy in SQL tables. |
|
config
Package rbaccfg selects and builds an authorization.PolicyResolver, choosing between policy declared in configuration and policy stored in SQL.
|
Package rbaccfg selects and builds an authorization.PolicyResolver, choosing between policy declared in configuration and policy stored in SQL. |
|
internal/queries
Package queries is the authorization policy schema described as data: the four canonical table names, the column list the two named tables share, and the statements the resolver runs over them.
|
Package queries is the authorization policy schema described as data: the four canonical table names, the column list the two named tables share, and the statements the resolver runs over them. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the authorization policy schema, one file per dialect it serves, from rbac/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the authorization policy schema, one file per dialect it serves, from rbac/internal/queries. |
|
migrations
Package migrations supplies the authorization policy tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the authorization policy tables' DDL, rendered for a dialect and table prefix. |
|
Package recording writes the companions a store write owes, on the write's own transaction: the audit entries that say what happened and who did it, and the one domain event that tells everybody else.
|
Package recording writes the companions a store write owes, on the write's own transaction: the audit entries that say what happened and who did it, and the one domain event that tells everybody else. |
|
config
Package recordingcfg assembles a recording.Recorder from environment configuration, and is where every other config package here asks whether one exists.
|
Package recordingcfg assembles a recording.Recorder from environment configuration, and is where every other config package here asks whether one exists. |
|
Package retention deletes data on a clock, from policies given as data.
|
Package retention deletes data on a clock, from policies given as data. |
|
config
Package retentioncfg assembles a retention Sweeper from environment configuration.
|
Package retentioncfg assembles a retention Sweeper from environment configuration. |
|
Package saga runs a linear sequence of steps durably, and unwinds it when a step fails.
|
Package saga runs a linear sequence of steps durably, and unwinds it when a step fails. |
|
config
Package sagacfg assembles the saga machinery from environment configuration: the Store the runner and the worker share, and the Worker that advances instances.
|
Package sagacfg assembles the saga machinery from environment configuration: the Store the runner and the worker share, and the Worker that advances instances. |
|
internal/queries
Package queries is the saga schema described as data — the canonical table name and its columns in the order every read projects them — and the statements the store runs over it, rendered for each of the three dialects it serves.
|
Package queries is the saga schema described as data — the canonical table name and its columns in the order every read projects them — and the statements the store runs over it, rendered for each of the three dialects it serves. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the saga schema, one file per dialect, from saga/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the saga schema, one file per dialect, from saga/internal/queries. |
|
migrations
Package migrations supplies the saga instance table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the saga instance table's DDL, rendered for a dialect and table prefix. |
|
mock
Package sagamock provides moq-generated mock implementations of interfaces in the saga package.
|
Package sagamock provides moq-generated mock implementations of interfaces in the saga package. |
|
Package searchsync keeps a search index in step with the database it is derived from.
|
Package searchsync keeps a search index in step with the database it is derived from. |
|
source
Package syncsource adapts a repository to the two read seams searchsync defines: searchsync.Fetcher, which the change feed reads one document per event through, and searchsync.Scanner, which a reindex walks the whole source with.
|
Package syncsource adapts a repository to the two read seams searchsync defines: searchsync.Fetcher, which the change feed reads one document per event through, and searchsync.Scanner, which a reindex walks the whole source with. |
|
Package series stores standing appointments: a weekly rule ("Tuesdays at 4pm, every week, from September 2"), the concrete occurrences it implies, and the exceptions those occurrences accumulate — each one skipped, moved or replaced without touching the rule.
|
Package series stores standing appointments: a weekly rule ("Tuesdays at 4pm, every week, from September 2"), the concrete occurrences it implies, and the exceptions those occurrences accumulate — each one skipped, moved or replaced without touching the rule. |
|
config
Package seriescfg assembles a series Store, and optionally the horizon worker that writes it forward, from environment configuration.
|
Package seriescfg assembles a series Store, and optionally the horizon worker that writes it forward, from environment configuration. |
|
internal/queries
Package queries is the series schema described as data: the canonical table names, their columns in the order every read projects them, and the statements the store executes over them.
|
Package queries is the series schema described as data: the canonical table names, their columns in the order every read projects them, and the statements the store executes over them. |
|
internal/queriesgen
command
Package main renders series/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against.
|
Package main renders series/internal/queries into the canonical .sql files beside it, one per dialect, and prints the schema those files are checked against. |
|
migrations
Package migrations supplies the series and occurrence tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the series and occurrence tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package seriesmock provides moq-generated mock implementations of interfaces in the series package.
|
Package seriesmock provides moq-generated mock implementations of interfaces in the series package. |
|
Package service is platform-go's composition root: one config struct describing a whole service, and one walk that registers everything it names with a samber/do injector.
|
Package service is platform-go's composition root: one config struct describing a whole service, and one walk that registers everything it names with a samber/do injector. |
|
Package sessions keeps session state on the server and gives the client only an identifier.
|
Package sessions keeps session state on the server and gives the client only an identifier. |
|
cache
Package cache stores session records in a cache.Cache.
|
Package cache stores session records in a cache.Cache. |
|
config
Package sessionscfg assembles a session store, and optionally a cookie-bound manager, from environment configuration.
|
Package sessionscfg assembles a session store, and optionally a cookie-bound manager, from environment configuration. |
|
database
Package database stores session records in a SQL table.
|
Package database stores session records in a SQL table. |
|
database/internal/queries
Package queries is the session schema described as data: the table's name, its columns in the order every statement lists them, the subset a write may assign, and the one column that may be NULL.
|
Package queries is the session schema described as data: the table's name, its columns in the order every statement lists them, the subset a write may assign, and the one column that may be NULL. |
|
database/internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the session schema, one file per dialect, from sessions/database/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the session schema, one file per dialect, from sessions/database/internal/queries. |
|
database/migrations
Package migrations supplies the session table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the session table's DDL, rendered for a dialect and table prefix. |
|
http
Package http binds a sessions.Store to a signed cookie and to net/http.
|
Package http binds a sessions.Store to a signed cookie and to net/http. |
|
mock
Package sessionsmock provides moq-generated mock implementations of interfaces in the sessions package.
|
Package sessionsmock provides moq-generated mock implementations of interfaces in the sessions package. |
|
Package settings stores the runtime settings a user or an account sets about themselves: administrator-defined definitions with a kind, a default and an enumeration, and per-subject values stored against them.
|
Package settings stores the runtime settings a user or an account sets about themselves: administrator-defined definitions with a kind, a default and an enumeration, and per-subject values stored against them. |
|
config
Package settingscfg assembles a settings Store from environment configuration.
|
Package settingscfg assembles a settings Store from environment configuration. |
|
grpc
Package grpc is settings on the wire: the gRPC service over github.com/primandproper/platform-go/v15/settings's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy.
|
Package grpc is settings on the wire: the gRPC service over github.com/primandproper/platform-go/v15/settings's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy. |
|
grpc/client
Package client is a typed client for the settings gRPC service.
|
Package client is a typed client for the settings gRPC service. |
|
internal/queries
Package queries is the settings schema described as data: the canonical table names, each table's columns in the order every read projects them, and the two subsets a write may assign.
|
Package queries is the settings schema described as data: the canonical table names, each table's columns in the order every read projects them, and the two subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the settings schema, one file per dialect, from settings/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the settings schema, one file per dialect, from settings/internal/queries. |
|
migrations
Package migrations supplies the settings tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the settings tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package settingsmock provides moq-generated mock implementations of interfaces in the settings package.
|
Package settingsmock provides moq-generated mock implementations of interfaces in the settings package. |
|
privacy
Package privacy is the settings values table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody chose, and a dataprivacy.Eraser that destroys it.
|
Package privacy is the settings values table's contribution to a subject access request: a dataprivacy.Collector that returns what somebody chose, and a dataprivacy.Eraser that destroys it. |
|
Package shredding provides per-subject data keys that can be destroyed, so that erasure reaches media nothing can write to.
|
Package shredding provides per-subject data keys that can be destroyed, so that erasure reaches media nothing can write to. |
|
config
Package shreddingcfg assembles per-subject data keys from environment configuration: the Store the keys live in, the Keys surface that uses them, and the Broadcaster that tells the rest of the fleet when one is destroyed.
|
Package shreddingcfg assembles per-subject data keys from environment configuration: the Store the keys live in, the Keys surface that uses them, and the Broadcaster that tells the rest of the fleet when one is destroyed. |
|
internal/queries
Package queries is the subject-key table described as data: its canonical name, its columns in the order every read projects them, and the natural key every statement addresses a row by.
|
Package queries is the subject-key table described as data: its canonical name, its columns in the order every read projects them, and the natural key every statement addresses a row by. |
|
internal/queriesgen
command
Package main renders the canonical sqlc input for the subject-key table, and the DDL those queries are checked against.
|
Package main renders the canonical sqlc input for the subject-key table, and the DDL those queries are checked against. |
|
migrations
Package migrations supplies the subject-key table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the subject-key table's DDL, rendered for a dialect and table prefix. |
|
mock
Package shreddingmock provides moq-generated mock implementations of the shredding package's interfaces.
|
Package shreddingmock provides moq-generated mock implementations of the shredding package's interfaces. |
|
Package timers is durable one-shot scheduling over a SQL table: run this once at instant T, exactly once across the fleet, surviving restarts.
|
Package timers is durable one-shot scheduling over a SQL table: run this once at instant T, exactly once across the fleet, surviving restarts. |
|
config
Package timerscfg assembles a timer set, and optionally the worker that fires it, from environment configuration.
|
Package timerscfg assembles a timer set, and optionally the worker that fires it, from environment configuration. |
|
internal/queries
Package queries is the timers schema described as data — the canonical table name and the columns its statements touch — together with the statements the timer set executes.
|
Package queries is the timers schema described as data — the canonical table name and the columns its statements touch — together with the statements the timer set executes. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the timers schema, one file per dialect it serves, from timers/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the timers schema, one file per dialect it serves, from timers/internal/queries. |
|
migrations
Package migrations supplies the timer table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the timer table's DDL, rendered for a dialect and table prefix. |
|
Package waitlists stores the queue people join before the thing they are queueing for exists: named lists with a closing time, and the signups against them with a lifecycle of their own.
|
Package waitlists stores the queue people join before the thing they are queueing for exists: named lists with a closing time, and the signups against them with a lifecycle of their own. |
|
config
Package waitlistscfg assembles a waitlists Store from environment configuration.
|
Package waitlistscfg assembles a waitlists Store from environment configuration. |
|
grpc
Package grpc is waitlists on the wire: the gRPC service over github.com/primandproper/platform-go/v15/waitlists's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy.
|
Package grpc is waitlists on the wire: the gRPC service over github.com/primandproper/platform-go/v15/waitlists's Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy. |
|
grpc/client
Package client is a typed client for the waitlists gRPC service.
|
Package client is a typed client for the waitlists gRPC service. |
|
internal/queries
Package queries is the waitlist schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign.
|
Package queries is the waitlist schema described as data: the canonical table names, each table's columns in the order every read projects them, and the subsets a write may assign. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the waitlist schema, one file per dialect, from waitlists/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the waitlist schema, one file per dialect, from waitlists/internal/queries. |
|
mcp
Package mcp serves the waitlist catalog to a model, as read-only Model Context Protocol tools.
|
Package mcp serves the waitlist catalog to a model, as read-only Model Context Protocol tools. |
|
migrations
Package migrations supplies the waitlist tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the waitlist tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package waitlistsmock provides moq-generated mock implementations of interfaces in the waitlists package.
|
Package waitlistsmock provides moq-generated mock implementations of interfaces in the waitlists package. |
|
privacy
Package privacy is the waitlist signups table's contribution to a subject access request: a dataprivacy.Collector that returns the signups somebody holds, and a dataprivacy.Eraser that withdraws them.
|
Package privacy is the waitlist signups table's contribution to a subject access request: a dataprivacy.Collector that returns the signups somebody holds, and a dataprivacy.Eraser that withdraws them. |
|
Package webhooks delivers outbound webhooks: signed, retried, ordered, and replayable.
|
Package webhooks delivers outbound webhooks: signed, retried, ordered, and replayable. |
|
config
Package webhookscfg assembles the webhook machinery from environment configuration: the Store both halves share, the Dispatcher applications write through, the Worker that delivers, and the Emitter that writes an event to the outbox and dispatches it in one call.
|
Package webhookscfg assembles the webhook machinery from environment configuration: the Store both halves share, the Dispatcher applications write through, the Worker that delivers, and the Emitter that writes an event to the outbox and dispatches it in one call. |
|
grpc
Package grpc is webhook endpoint management on the wire: the gRPC service over github.com/primandproper/platform-go/v15/webhooks's Dispatcher and Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy.
|
Package grpc is webhook endpoint management on the wire: the gRPC service over github.com/primandproper/platform-go/v15/webhooks's Dispatcher and Store, the converters between the generated messages and its types, a typed client, and the default permission fragment a consumer composes into its policy. |
|
grpc/client
Package client is a typed client for the webhooks gRPC service.
|
Package client is a typed client for the webhooks gRPC service. |
|
internal/queries
Package queries is the webhooks schema described as data — the canonical table names and each table's columns in the order every read projects them — together with the thirty statements the store executes, rendered from it.
|
Package queries is the webhooks schema described as data — the canonical table names and each table's columns in the order every read projects them — together with the thirty statements the store executes, rendered from it. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the webhooks schema, one file per dialect, from webhooks/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the webhooks schema, one file per dialect, from webhooks/internal/queries. |
|
mcp
Package mcp serves webhook endpoints and the event catalog to a model, as read-only Model Context Protocol tools.
|
Package mcp serves webhook endpoints and the event catalog to a model, as read-only Model Context Protocol tools. |
|
migrations
Package migrations supplies the webhook tables' DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the webhook tables' DDL, rendered for a dialect and table prefix. |
|
mock
Package webhooksmock provides moq-generated mock implementations of interfaces in the webhooks package.
|
Package webhooksmock provides moq-generated mock implementations of interfaces in the webhooks package. |
|
recordinghooks
Package recordinghooks is the webhooks.Hooks a deployment that keeps an audit log and publishes events installs on its webhooks store: every endpoint and subscription write records an audit entry naming the row and emits one of the events webhooks.EventCatalog describes, both on the write's transaction, through a recording.Recorder.
|
Package recordinghooks is the webhooks.Hooks a deployment that keeps an audit log and publishes events installs on its webhooks store: every endpoint and subscription write records an audit entry naming the row and emits one of the events webhooks.EventCatalog describes, both on the write's transaction, through a recording.Recorder. |
|
Package workqueue is a leased work queue over a SQL table: the SELECT … FOR UPDATE SKIP LOCKED claim/complete/expire pattern, generic over the key that names a unit of work, on Postgres, MySQL and SQLite.
|
Package workqueue is a leased work queue over a SQL table: the SELECT … FOR UPDATE SKIP LOCKED claim/complete/expire pattern, generic over the key that names a unit of work, on Postgres, MySQL and SQLite. |
|
config
Package workqueuecfg assembles a work queue, and optionally the runner that drains it, from environment configuration.
|
Package workqueuecfg assembles a work queue, and optionally the runner that drains it, from environment configuration. |
|
internal/queries
Package queries is the work queue schema described as data — the canonical table name and the columns its statements touch — together with the statements the queue executes.
|
Package queries is the work queue schema described as data — the canonical table name and the columns its statements touch — together with the statements the queue executes. |
|
internal/queriesgen
command
Command queriesgen writes the canonical sqlc input for the work queue schema, one file per dialect it serves, from workqueue/internal/queries.
|
Command queriesgen writes the canonical sqlc input for the work queue schema, one file per dialect it serves, from workqueue/internal/queries. |
|
migrations
Package migrations supplies the work queue table's DDL, rendered for a dialect and table prefix.
|
Package migrations supplies the work queue table's DDL, rendered for a dialect and table prefix. |
Click to show internal directories.
Click to hide internal directories.