taolib.github_app.models#
GitHub App 模块的核心枚举与数据模型。
本模块集中定义 GitHub App 安装令牌请求与运行时环境拏描所需的不变量类型, 是配置、客户端、缓存与管理器之间流动的公共词汇表。 保持本文件“零依赖、零副作用”:仅 dataclass 与枚举,无运行时逻辑。
Classes#
结合环境与调用方意图后实际生效的策略。 |
|
GitHub API 运行环境类型。 |
|
GitHub API 运行时环境画像。 |
|
调用方传入令牌管理器的请求参数。 |
|
令牌管理器返回给调用方的令牌结果。 |
|
调用方请求安装令牌时表达的策略意图。 |
|
GitHub App 安装令牌的类型。 |
Module Contents#
- class taolib.github_app.models.EffectiveTokenStrategy#
Bases:
enum.StrEnum结合环境与调用方意图后实际生效的策略。
Initialize self. See help(type(self)) for accurate signature.
- DISABLED = 'disabled'#
发送
X-GitHub-Stateless-S2S-Token: disabled。
- ENABLED = 'enabled'#
发送
X-GitHub-Stateless-S2S-Token: enabled。
- NONE = 'none'#
不发送
X-GitHub-Stateless-S2S-Token头。
- class taolib.github_app.models.EnvironmentKind#
Bases:
enum.StrEnumGitHub API 运行环境类型。
识别规则由 API 基地址判定:
Initialize self. See help(type(self)) for accurate signature.
- CLOUD = 'cloud'#
GitHub.com 公有云。
- GHES = 'ghes'#
GitHub Enterprise Server 私部署。
- UNKNOWN = 'unknown'#
未识别的环境。
- class taolib.github_app.models.GitHubRuntimeProfile#
GitHub API 运行时环境画像。
- environment: EnvironmentKind#
根据
base_url推断出的环境类型。
- class taolib.github_app.models.InstallationTokenRequest#
调用方传入令牌管理器的请求参数。
- strategy: RequestedTokenStrategy#
调用方期望的 Token 策略。
- class taolib.github_app.models.InstallationTokenResult#
令牌管理器返回给调用方的令牌结果。
- expires_at: datetime.datetime#
令牌过期时间(UTC)。
- class taolib.github_app.models.RequestedTokenStrategy#
Bases:
enum.StrEnum调用方请求安装令牌时表达的策略意图。
该枚举反映调用方的愿望,是否应用最终取决于运行环境,参见
EffectiveTokenStrategy。Initialize self. See help(type(self)) for accurate signature.
- AUTO = 'auto'#
根据运行环境自动选择,不主动下发
X-GitHub-Stateless-S2S-Token头。
- DISABLED = 'disabled'#
主动请求禁用无状态 S2S 令牌。
- ENABLED = 'enabled'#
主动请求启用无状态 S2S 令牌。
- class taolib.github_app.models.TokenKind#
Bases:
enum.StrEnumGitHub App 安装令牌的类型。
由
taolib.github_app.client.GitHubAppClient.classify_token_kind()根据令牌字符串的前缀与结构特征判定。Initialize self. See help(type(self)) for accurate signature.
- STATEFUL = 'stateful'#
有状态令牌(
ghs_开头但不含两个.)。
- STATELESS = 'stateless'#
无状态令牌(
ghs_开头且后缀含恰好两个.)。
- UNKNOWN = 'unknown'#
未能识别的令牌。