- groups:add / ranges:plan / nodes:create / coordinator:run commands - the node API: lease, the range's chunks as one framed stream from the spool, batches, heartbeat, finish, release (node guard, token per node) - edge:node: needs COORDINATOR_URL and NODE_TOKEN only (placeholders for the rest), posts a batch every 10 chunks, gives its range back on SIGTERM - releases are gathered per batch: 1.04 chunk rows per release at 10 chunks per batch (1.35 when built per XOVER chunk) - partitions are checked per batch instead of remembered Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
61 lines
1.5 KiB
TypeScript
61 lines
1.5 KiB
TypeScript
import { defineConfig } from '@adonisjs/auth'
|
|
import { sessionGuard, sessionUserProvider } from '@adonisjs/auth/session'
|
|
import { tokensGuard, tokensUserProvider } from '@adonisjs/auth/access_tokens'
|
|
import type { InferAuthenticators, InferAuthEvents, Authenticators } from '@adonisjs/auth/types'
|
|
|
|
const authConfig = defineConfig({
|
|
/**
|
|
* Default guard used when no guard is explicitly specified.
|
|
*/
|
|
default: 'api',
|
|
|
|
guards: {
|
|
/**
|
|
* Token-based guard for stateless API authentication.
|
|
*/
|
|
api: tokensGuard({
|
|
provider: tokensUserProvider({
|
|
tokens: 'accessTokens',
|
|
model: () => import('#models/user'),
|
|
}),
|
|
}),
|
|
|
|
/**
|
|
* Edge workers (REBUILD.md, part 2): a token per node.
|
|
*/
|
|
node: tokensGuard({
|
|
provider: tokensUserProvider({
|
|
tokens: 'accessTokens',
|
|
model: () => import('#models/node'),
|
|
}),
|
|
}),
|
|
|
|
/**
|
|
* Session-based guard for browser authentication.
|
|
*/
|
|
web: sessionGuard({
|
|
/**
|
|
* Enable persistent login using remember-me tokens.
|
|
*/
|
|
useRememberMeTokens: false,
|
|
|
|
provider: sessionUserProvider({
|
|
model: () => import('#models/user'),
|
|
}),
|
|
}),
|
|
},
|
|
})
|
|
|
|
export default authConfig
|
|
|
|
/**
|
|
* Inferring types from the configured auth
|
|
* guards.
|
|
*/
|
|
declare module '@adonisjs/auth/types' {
|
|
export interface Authenticators extends InferAuthenticators<typeof authConfig> {}
|
|
}
|
|
declare module '@adonisjs/core/types' {
|
|
interface EventsList extends InferAuthEvents<Authenticators> {}
|
|
}
|