AdarshSingh-ASR/Lattice
GitHub: AdarshSingh-ASR/Lattice
Lattice 是一个为事件响应 AI agent 提供可溯源记忆与安全执行网关的控制平面,确保 agent 的每一个动作都可审计、可隔离且不会因错误上下文引发风险。
Stars: 0 | Forks: 0
# Lattice

[实时演示](https://lattice-memory-plane.stitchboatimmigratio.chatgpt.site) ·
[AWS agent 健康状态](https://x8vncko1s0.execute-api.us-east-1.amazonaws.com/health) ·
[Devpost 挑战赛](https://cockroachdb-ai.devpost.com/)
Lattice 是一款用于事件响应 agent 的飞行记录器和动作网关。它
不仅用于检索旧上下文。它会记录是哪些记忆导致了某项计划,
根据签名策略和来源测试这些记忆,隔离被污染
或过期的召回结果,并在任何副作用
执行之前,于干净的分支上重放该任务。
专为 CockroachDB × AWS Hackathon — Build with Agentic Memory 而构建。
## 两分钟演示
1. 一次 checkout canary 导致了 41% 的网关故障率。
2. Lattice 从 CockroachDB 中检索出五条语义相似的记忆。
3. 其中一条高度相似的记忆建议禁用 JWT 签名验证。
4. 动作网关捕捉到该记忆是未签名的、低信任度的,并且
与已签名的生产环境策略相冲突。不安全的计划被阻止。
5. 操作员点击 **Quarantine + replay**。
6. CockroachDB 记录原始决策的准确 HLC,并通过真实的
`AS OF SYSTEM TIME` 查询重建其五条源记忆。
7. 一个可串行化的事务在本次运行中隔离了 M-211,阻止了其
依赖计划,追加溯源记录,并创建了 `replay/0427-safe`。
8. Bedrock 从重建的快照中在排除 M-211 的情况下重新规划。不安全
动作从两个降至零。
9. Lambda 保持锁定状态,直到操作员点击 **Approve safe plan**。
批准和证据回执被封存,且不会声称已有副作用执行。
关键的产品价值在于因果关系:界面准确地展示了究竟是哪条记忆
改变了 agent 的动作,并证明了移除它即可改变结果。
## 为什么这不是“基于 RAG 的聊天”
| 普通检索 | Lattice |
| --- | --- |
| 记忆是文本块 | 记忆是版本化的操作断言 |
| 相似度决定模型看到的内容 | 相似度负责检索;来源决定哪些可以执行操作 |
| 错误的上下文会导致错误的回答 | 错误的上下文会在副作用发生前被隔离 |
| 日志显示模型说了什么 | 可查询的分支图证明了是哪条记忆改变了计划 |
| 更正会覆盖历史记录 | 更正会进行分支并取代不可变的历史记录 |
| 重试可能导致重复动作 | 每次变更都有一个幂等性日志 |
## 架构
```
flowchart LR
UI["Lattice control room
Next.js"] --> API["Amazon API Gateway"] API --> AGENT["AWS Lambda
typed agent boundary"] AGENT --> BEDROCK["Amazon Bedrock
Nova planner + Titan embeddings"] AGENT --> CRDB[("CockroachDB Cloud on AWS
transactions + vector memory")] AGENT --> S3[("Amazon S3
versioned evidence receipts")] SKILLS["CockroachDB Agent Skills
transaction · privilege · health"] --> AGENT CCLOUD["ccloud CLI
provisioning + health receipts"] --> CRDB CRDB --> VECTOR["Distributed vector index
workspace-prefixed ANN recall"] CRDB --> TEMPORAL["MVCC time travel
AS OF SYSTEM TIME"] CRDB --> JOURNAL["Serializable intervention
quarantine + plan + lineage"] VECTOR --> AGENT TEMPORAL --> AGENT JOURNAL --> AGENT ``` ### 记忆事务 ``` incident signal → Bedrock embedding → CockroachDB vector recall + cohort anomaly → provenance + policy guardrails → proposed typed plan → conflict? yes → block → capture HLC → AS OF SYSTEM TIME reconstruction → atomic quarantine branch → Bedrock replay → human gate → S3 receipt no → human gate → idempotent action journal ``` ## 黑客松技术 ### CockroachDB 工具 - **分布式向量索引** — `memories.embedding VECTOR(1024)` 拥有一个 带有工作区前缀的余弦向量索引。操作记忆和语义记忆在 同一个数据库中保持事务一致性。同一个索引还会测量与最近 已验证记忆群体的一致性,使得语义污染 检测(不仅是检索)成为核心支撑能力。 - **MVCC 时间旅行** — 每个决策都存储了 `cluster_logical_timestamp()`。重放将该经过验证的 HLC 嵌入到精确的 `AS OF SYSTEM TIME` 查询中,在被阻止的计划生成时, 将记忆行重建为当时存在的状态。 - **可串行化干预溯源** — 记忆干预、依赖读取 状态、分支计划、不可变事件以及幂等日志结果会在 一个感知重试的事务中提交。 - **CockroachDB Agent Skills** — Lambda 加载了精确且带有归属说明的 `designing-application-transactions`、`hardening-user-privileges` 和 `reviewing-cluster-health` 快照。每条追踪都会持久化技能回执, 并且规划器会接收它们的事务、重试、最小权限和健康 防护机制。 - **ccloud CLI** — 用于检查 AWS 支持的集群,创建独立的 迁移/运行时身份,并通过 [`ops/cluster-health.ps1`](./ops/cluster-health.ps1) 生成机器可读的健康 评估报告。 ### AWS 服务 - **AWS Lambda + API Gateway** 托管了具有类型的 agent 执行边界。 - **Amazon Bedrock** 运行 Nova 事件规划器和 Titan 1024 维度 嵌入。 - **Amazon S3** 存储经过加密、版本控制和内容哈希处理的证据包。 - CockroachDB Cloud 集群本身运行在 **AWS ap-south-1**。 ## 可靠性与安全性 - **简短且可串行化的事务。** 远程模型和 S3 调用保持在数据库 事务之外。 - **感知重试。** SQLSTATE `40001` 重试使用有界的指数退避和 抖动;不会盲目重放具有歧义的变更操作。 - **幂等动作。** `(workspace_id, run_id, action_key)` 是唯一的,因此 重复的隔离请求会返回先前的权威结果。 - **最小权限。** `lattice_app` 不是管理员。它仅拥有 Lambda 所需的表级读/写权限。迁移使用独立的 身份。 - **默认情况下记忆不可信。** 检索到的文本是证据,绝不是 指令。签名、信任度、策略和破坏性操作的规则会在 规划跨越执行边界之前被检查。 - **真实的完成状态。** 在日志记录已完成的 权威结果之前,Lattice 永远不会声称某个动作已执行。 - **人工执行网关。** 一个独立的、幂等的批准事务会解锁 动作封套;演示过程会明确记录副作用保持 未执行状态。 - **可重复的隔离。** 隔离被记录在该运行的已验证分支上, 因此一个评委的操作不能为其他所有人消耗掉被污染的记忆。 - **防篡改证据。** 每份隔离回执都包含一个 SHA-256 内容哈希, 并被写入一个加密、已版本控制的 S3 存储桶中。 ## 仓库结构图 ``` app/ Interactive control-room UI services/agent/src/ Lambda handler, retrieval, guardrails, journal services/agent/migrations/ CockroachDB schema + distributed vector index services/agent/skills/ Attributed CockroachDB Agent Skill snapshots services/agent/template.yaml AWS SAM infrastructure ops/cluster-health.ps1 ccloud health + skill receipt docs/ Demo and Devpost submission material ``` ## 在本地运行 ### 前置条件 - Node.js 20+ - 一个 CockroachDB Cloud 连接字符串 - 具备 Bedrock 访问权限的 AWS 凭证,或用于仅本地嵌入开发的 Gemini key ### 前端 ``` npm install npm run dev ``` UI 将在 `http://localhost:3000` 打开。 ### Agent ``` Set-Location services/agent Copy-Item .env.example .env npm install npm run migrate npm run seed npm run dev ``` 兼容本地 Lambda 的 API 监听于 `http://127.0.0.1:8787`。在 localhost 上,UI 会自动发现它。 ### 验证 ``` npm test npm run migrate npm run seed npm run smoke npm run verify:database npm run harden:runtime ``` 冒烟测试针对 CockroachDB 执行完整的检索 → 冲突 → 隔离 → 重放路径。如果未检索到被污染的记忆,或者重放中仍然 包含身份验证绕过,测试将会失败。 ## 部署 AWS agent ``` Set-Location services/agent sam build sam deploy --guided ` --parameter-overrides DatabaseUrl="$env:DATABASE_URL" AllowedOrigin="https://your-demo.example" ``` 将返回的 API URL 设置为前端的 `NEXT_PUBLIC_LATTICE_API_URL`。 切勿提交连接字符串或提供商凭证。 ## 新项目声明 Lattice 是在 2026 年黑客松提交期间从头开始创建的。 它使用了标准的开源框架和 Codex Sites 启动模板。 CockroachDB Agent Skill 快照是上游 Apache-2.0 材料,并保留了 位于 `services/agent/skills/COCKROACHDB-SKILLS-LICENSE` 的许可证。未包含 构建者早期项目的任何源代码。 ## 许可证 MIT — 详见 [`LICENSE`](./LICENSE)。
Next.js"] --> API["Amazon API Gateway"] API --> AGENT["AWS Lambda
typed agent boundary"] AGENT --> BEDROCK["Amazon Bedrock
Nova planner + Titan embeddings"] AGENT --> CRDB[("CockroachDB Cloud on AWS
transactions + vector memory")] AGENT --> S3[("Amazon S3
versioned evidence receipts")] SKILLS["CockroachDB Agent Skills
transaction · privilege · health"] --> AGENT CCLOUD["ccloud CLI
provisioning + health receipts"] --> CRDB CRDB --> VECTOR["Distributed vector index
workspace-prefixed ANN recall"] CRDB --> TEMPORAL["MVCC time travel
AS OF SYSTEM TIME"] CRDB --> JOURNAL["Serializable intervention
quarantine + plan + lineage"] VECTOR --> AGENT TEMPORAL --> AGENT JOURNAL --> AGENT ``` ### 记忆事务 ``` incident signal → Bedrock embedding → CockroachDB vector recall + cohort anomaly → provenance + policy guardrails → proposed typed plan → conflict? yes → block → capture HLC → AS OF SYSTEM TIME reconstruction → atomic quarantine branch → Bedrock replay → human gate → S3 receipt no → human gate → idempotent action journal ``` ## 黑客松技术 ### CockroachDB 工具 - **分布式向量索引** — `memories.embedding VECTOR(1024)` 拥有一个 带有工作区前缀的余弦向量索引。操作记忆和语义记忆在 同一个数据库中保持事务一致性。同一个索引还会测量与最近 已验证记忆群体的一致性,使得语义污染 检测(不仅是检索)成为核心支撑能力。 - **MVCC 时间旅行** — 每个决策都存储了 `cluster_logical_timestamp()`。重放将该经过验证的 HLC 嵌入到精确的 `AS OF SYSTEM TIME` 查询中,在被阻止的计划生成时, 将记忆行重建为当时存在的状态。 - **可串行化干预溯源** — 记忆干预、依赖读取 状态、分支计划、不可变事件以及幂等日志结果会在 一个感知重试的事务中提交。 - **CockroachDB Agent Skills** — Lambda 加载了精确且带有归属说明的 `designing-application-transactions`、`hardening-user-privileges` 和 `reviewing-cluster-health` 快照。每条追踪都会持久化技能回执, 并且规划器会接收它们的事务、重试、最小权限和健康 防护机制。 - **ccloud CLI** — 用于检查 AWS 支持的集群,创建独立的 迁移/运行时身份,并通过 [`ops/cluster-health.ps1`](./ops/cluster-health.ps1) 生成机器可读的健康 评估报告。 ### AWS 服务 - **AWS Lambda + API Gateway** 托管了具有类型的 agent 执行边界。 - **Amazon Bedrock** 运行 Nova 事件规划器和 Titan 1024 维度 嵌入。 - **Amazon S3** 存储经过加密、版本控制和内容哈希处理的证据包。 - CockroachDB Cloud 集群本身运行在 **AWS ap-south-1**。 ## 可靠性与安全性 - **简短且可串行化的事务。** 远程模型和 S3 调用保持在数据库 事务之外。 - **感知重试。** SQLSTATE `40001` 重试使用有界的指数退避和 抖动;不会盲目重放具有歧义的变更操作。 - **幂等动作。** `(workspace_id, run_id, action_key)` 是唯一的,因此 重复的隔离请求会返回先前的权威结果。 - **最小权限。** `lattice_app` 不是管理员。它仅拥有 Lambda 所需的表级读/写权限。迁移使用独立的 身份。 - **默认情况下记忆不可信。** 检索到的文本是证据,绝不是 指令。签名、信任度、策略和破坏性操作的规则会在 规划跨越执行边界之前被检查。 - **真实的完成状态。** 在日志记录已完成的 权威结果之前,Lattice 永远不会声称某个动作已执行。 - **人工执行网关。** 一个独立的、幂等的批准事务会解锁 动作封套;演示过程会明确记录副作用保持 未执行状态。 - **可重复的隔离。** 隔离被记录在该运行的已验证分支上, 因此一个评委的操作不能为其他所有人消耗掉被污染的记忆。 - **防篡改证据。** 每份隔离回执都包含一个 SHA-256 内容哈希, 并被写入一个加密、已版本控制的 S3 存储桶中。 ## 仓库结构图 ``` app/ Interactive control-room UI services/agent/src/ Lambda handler, retrieval, guardrails, journal services/agent/migrations/ CockroachDB schema + distributed vector index services/agent/skills/ Attributed CockroachDB Agent Skill snapshots services/agent/template.yaml AWS SAM infrastructure ops/cluster-health.ps1 ccloud health + skill receipt docs/ Demo and Devpost submission material ``` ## 在本地运行 ### 前置条件 - Node.js 20+ - 一个 CockroachDB Cloud 连接字符串 - 具备 Bedrock 访问权限的 AWS 凭证,或用于仅本地嵌入开发的 Gemini key ### 前端 ``` npm install npm run dev ``` UI 将在 `http://localhost:3000` 打开。 ### Agent ``` Set-Location services/agent Copy-Item .env.example .env npm install npm run migrate npm run seed npm run dev ``` 兼容本地 Lambda 的 API 监听于 `http://127.0.0.1:8787`。在 localhost 上,UI 会自动发现它。 ### 验证 ``` npm test npm run migrate npm run seed npm run smoke npm run verify:database npm run harden:runtime ``` 冒烟测试针对 CockroachDB 执行完整的检索 → 冲突 → 隔离 → 重放路径。如果未检索到被污染的记忆,或者重放中仍然 包含身份验证绕过,测试将会失败。 ## 部署 AWS agent ``` Set-Location services/agent sam build sam deploy --guided ` --parameter-overrides DatabaseUrl="$env:DATABASE_URL" AllowedOrigin="https://your-demo.example" ``` 将返回的 API URL 设置为前端的 `NEXT_PUBLIC_LATTICE_API_URL`。 切勿提交连接字符串或提供商凭证。 ## 新项目声明 Lattice 是在 2026 年黑客松提交期间从头开始创建的。 它使用了标准的开源框架和 Codex Sites 启动模板。 CockroachDB Agent Skill 快照是上游 Apache-2.0 材料,并保留了 位于 `services/agent/skills/COCKROACHDB-SKILLS-LICENSE` 的许可证。未包含 构建者早期项目的任何源代码。 ## 许可证 MIT — 详见 [`LICENSE`](./LICENSE)。
标签:AWS云服务, CockroachDB, Streamlit, 人工智能运维, 动作门控, 智能体记忆, 自定义脚本, 访问控制