简体中文
目录结构
以默认分支磁盘为准。语言 SDK 不在本树。.trellis/ 是维护者/AI 工作流,不是贡献必读主路径。GitHub 是唯一 forge:检查与发版都只有 .github/workflows/ 一套,仓库里没有第二套流水线定义。
text
main.go # 委托 cmd.Run()
CHANGELOG.md # 发版作业插回头部的更新日志(首次发版后出现),贡献者不要手写
cmd/ # server / admin / listen(listen 不是 CLI 子命令)
configs/ # *-example.yaml;本地 yaml gitignore
internal/
cache/
config/
controller/ # admin/ + client/ + openapi.*.json
database/
delta/ # 差量引擎
logger/
middleware/
model/
platform/
repository/
service/ # 含 update/、store/
storage/ # local + s3
pkg/
hashutil/ pathutil/ response/ semver/
signature/ urlsign/ webhook/ grayutil/
frontend/ # Vue 管理台;embed.go 嵌入 dist;日常 yarn dev
frontend/embed.go
frontend/dist/.gitkeep
docs/ # 内部说明(非 VitePress 根)
dev/docker/ # 开发用 Postgres/Redis
dev/build/ # 运行镜像 Dockerfile 与发版 CLI(无 shell 脚本、无 Compose)
Dockerfile # Alpine 运行镜像,构建上下文为仓库根
changelog-types.conf # 章节 emoji/文案表——只是显示层,不参与版本推导
kirivers.py # 唯一入口:python3 dev/build/kirivers.py <子命令>(Windows 用 python)
kirivers_build/ # 纯标准库包,按职责分模块;子命令名沿用旧脚本名
cli.py # 子命令注册表与分发(usage 与退出码约定)
common.py # 平台矩阵、内部二进制名、归档名、file 机器模式、sha256 的唯一定义(文档表格由它派生)
build.py # build-cgo / build-linux-musl / assert-linux-musl / install-cross-toolchains / install-llvm-mingw / frontend-build
version.py # next-version:由 Conventional Commits 推导下一版本
notes.py # release-notes(Release 正文与 CHANGELOG 段落)与 changelog 写回
package.py # asset-names 与 package-assets(zip + SHA256SUMS.txt)
images.py # docker-image(每架构原生构建并推 <semver>_amd64 / _arm64)与 docker-manifest
guards.py # commitlint / issue-link(进 main 的 PR 是否绑定 Issue)/ guard(守卫判定矩阵)
selfcheck.py # check-workflows:流水线静态门(触发方式、矩阵、零 QEMU)
.github/workflows/ # ci.yml(PR 与 main push 的检查)、pr-guard.yml、gosec-scan.yml + security-gate.yml(Gosec 沙箱扫描与 ready-merge 状态机)、docs-pages.yml(website/ 编译并发布 gh-pages)、release.yml(只手动 workflow_dispatch)、sdk-automerge.yml(只手动;批量合并 sdk/* 并发版推 registry)
website/ # 官方文档站
deploy/ # 使用者一键 Compose(.env 统一口令 + 自带 YAML)
scripts/install-deps.sh