新增 server/core/storage:openDatabase + 迁移(projects / sessions / messages / idempotency_keys 四张平台表,按 ADR-0007 用整数毫秒与应用侧主键),SessionRepository 负责读写。SessionStore 改为内存态 + 写透:会话、消息、幂等键落库,进程重启后按库补建运行时状态(事件总线与进行中的运行仍在内存,符合架构设计 5.1)。startServer 支持 databasePath(测试传 :memory: 隔离,默认取配置 ~/.aps/aps.sqlite),关停时关闭数据库。新增 storage 用例:同一库文件起两次服务,会话、消息、幂等键都可查且重试命中同一条受理记录。测试 54 → 56 全绿。过程中修掉一个自身缺陷:迁移表要先建,否则第一次查版本号就报 no such table。 |
||
|---|---|---|
| .. | ||
| agent | ||
| app | ||
| bin | ||
| core | ||
| entry | ||
| provider-sdk | ||
| workflows | ||
| README.md | ||
| config.ts | ||
| index.ts | ||
| package.json | ||
| tsconfig.json | ||
README.md
@aps/server
平台服务。目录按架构设计第 2 节建立,各模块的边界与「不该出现什么」以该节为准。
| 目录 | 职责 | 不该出现什么 |
|---|---|---|
entry/ |
HTTP / SSE 入口、会话、鉴权 | 业务规则、直接调业务系统 |
app/ |
请求编排、能力查询、审批流转、事件推送 | 引擎内部概念、直接 import Pi |
agent/ |
引擎适配:AgentRuntime 接口 + Pi / Codex 实现 |
业务规则、碰凭据 |
core/ |
能力目录、身份映射、策略、凭据、执行、审计 | 业务数据、直接拼业务系统 URL |
workflows/ |
跨系统顺序流程 | 配置化 DAG 引擎 |
依赖方向(A1.2 会接入 CI 检查):
contracts ← provider-sdk ← server ← client
↑
providers/*
providers/*只依赖@aps/provider-sdk(与@aps/contracts),不依赖@aps/server- 只有
agent/允许 import 引擎包;其它模块必须经这一层