feat: establish Orbit models, migrations and development baseline

This commit is contained in:
2026-09-17 07:04:21 +08:00
commit 4f2935e36f
84 changed files with 4915 additions and 0 deletions

21
model/record.go Normal file
View File

@@ -0,0 +1,21 @@
package model
import "time"
// Record 是命名空间内实体的公共记录。Revision 从 1 开始,通过条件更新控制并发。
// 时间戳只用于追踪,不代替状态版本和租约校验。
type Record struct {
// NamespaceID 资源所属命名空间,参与主键、授权与关联校验。
NamespaceID ID `db:"namespace_id"`
// ID 记录标识;与命名空间一起定位运行资源。
ID ID `db:"id"`
// Revision 乐观并发版本,从 1 开始;更新时必须核对预期版本。
Revision uint64 `db:"revision"`
// CreatedAt 创建时间,统一 UTC,数据库精度为微秒。
CreatedAt time.Time `db:"created_at"`
// UpdatedAt 最后写入时间,统一 UTC;不能代替并发版本。
UpdatedAt time.Time `db:"updated_at"`
}
// Digest 保存 32 字节 SHA-256 摘要。凭据或执行令牌原文不得进入持久化模型、审计和日志。
type Digest [32]byte