KeelBase
一个开源运行时项目,用于管理AI请求写入数据时的人工确认流程,采用双窗口超时设计和单点仲裁机制来保证一致性。
时间轴 (近 90 天)
KeelBase 是一个位于 AI agent 和业务系统之间的开源运行时,在工具真正执行前重新校验身份、授权、范围、风险与确认状态。
KeelBase 的对话内等待超时默认值为 60 秒,过期只结束这次等待,不影响数据状态。
KeelBase 的离线窗口默认值为 24 小时,记录在此期间保持可决策,过期后才翻转为超时。
KeelBase 的设计要求每个时间边界只由一个函数计算,读路径和维护扫描都调用同一函数以获得同一时刻。
KeelBase 使用数据库条件更新(UPDATE ... WHERE status = 'pending')作为决策的原子仲裁点,命中一行则决策成立,命中零行则不执行。
在 KeelBase 的旧行为中,决策写入数据库抛异常时错误被吞掉,内存等待仍被释放,导致记录保持 pending 状态并被再次决策执行。
KeelBase 在决策持久化失败时采用失败关闭(fail-closed)策略:没有证据表明决策到达数据库就不释放等待,让本次失败并让人重试。
KeelBase 的仲裁点只保证至多一次决策,不保证至多一次执行;同一请求被模型重试或服务重启后重发属于另一层问题。
KeelBase 的源码仓库托管在 GitHub(github.com/rain6fish/KeelBase),并设有 Gitee 镜像(gitee.com/rain6fish/KeelBase)。
全部知识事实 (9)
KeelBase 的源码仓库托管在 GitHub(github.com/rain6fish/KeelBase),并设有 Gitee 镜像(gitee.com/rain6fish/KeelBase)。
50%待验证KeelBase 的对话内等待超时默认值为 60 秒,过期只结束这次等待,不影响数据状态。
50%待验证KeelBase 的离线窗口默认值为 24 小时,记录在此期间保持可决策,过期后才翻转为超时。
50%待验证KeelBase 的设计要求每个时间边界只由一个函数计算,读路径和维护扫描都调用同一函数以获得同一时刻。
50%待验证KeelBase 使用数据库条件更新(UPDATE ... WHERE status = 'pending')作为决策的原子仲裁点,命中一行则决策成立,命中零行则不执行。
50%待验证KeelBase 是一个位于 AI agent 和业务系统之间的开源运行时,在工具真正执行前重新校验身份、授权、范围、风险与确认状态。
50%待验证KeelBase 在决策持久化失败时采用失败关闭(fail-closed)策略:没有证据表明决策到达数据库就不释放等待,让本次失败并让人重试。
50%待验证KeelBase 的仲裁点只保证至多一次决策,不保证至多一次执行;同一请求被模型重试或服务重启后重发属于另一层问题。
50%待验证在 KeelBase 的旧行为中,决策写入数据库抛异常时错误被吞掉,内存等待仍被释放,导致记录保持 pending 状态并被再次决策执行。
50%