- 迁移到 Github Issues & Project
- 文档化拓扑结构
- descriptor 缺少 description 字段 😆
- config.rs 过耦合了其它业务,我认为就根据 json schema 来检查就可以了 https://gemini.google.com/u/1/app/19d2716163455423
- 文档模式再重构 https://chatgpt.com/share/69a94971-bebc-800c-a38e-b243c67d0efe
- 让 json schema 通过 cli 生成
- IR 改进 https://gemini.google.com/u/1/app/e9c1e8ff7b2377bf
- 增加对 sense 消费的控制力 (权重;特定屏蔽)
- 重构 goal tree
- weight 是基于一棵树的,而不是整个森林的
- 移除本能(加入到 Primary Prompt 中)
- 重新设计 node
- patch-goal-tool
- goal forest patching 总是不成功(改成 ops 就可以了但是),更多见 scratch/goal-forest-patch-issue-diagnosis.txt
- 解决方案尝试:将 goal-forest-patch 变为 natural-language based; 结论:还是不太稳定,但至少可以了,随着后面 Dual Loop 的修复,删掉对 focal-awareness, somatic-acts 输出的要求等,使 content 就是纯粹的思考
- Cortex / Stem Dual loop
- 除了 cognition-state,其它都不可以给 input-helper 主动"解释"
- 移除 l1-memory:goal-forest, 对话历史承担了这个角色
- 将 act 的输出也变为工具调用,但是立即返回;如果开启 wait,则等待响应的 sense (act-descriptor 配置 sense-matcher)
- goal-forest patch helper 应该自动生成 numbering 啊,numbering 是 required 的现在/
- goal-forest patch with reset
- efferent-pathway
- 驱动 primary turn: sense / tick.
- Add rule tool 没有捏?就最直接的 add / remove 吧,也不要什么 overwrite / reset 了。
- Sense internal monotonic id 需要基于进程声明周期而不是 cycle 周期
- Act dispatch failure as a tool result
- cognition-patch 这个模块很奇怪,应该删除;cognition 又是啥 ?
- cortex runtime 和 cortex 太割裂了 ... 但目前来看也没有必要 coupling
- expand-sense 不成功
- act tools 每次都被重建,导致了 tool-name 和 act 的对应关系因为正则化而不稳定;我建议继续维护 map,但是不要用
act_000x,而是将/,.分别替换为_,-;且对 Endpoint Id, NS Id 做约束。 - only driven by tick
- "Each admitted tick executes exactly one Cortex::cortex(...) " 不可接受
- Continuation 似乎不是一个好的设计
- sense input helper 还在干多余的事情
- goal forest patch 丢东西
- turn 0 goal forest patch with reset fails
- add
trim_if_resolvable
- add
- goal forest remains revision 1
- 进一步解除 cortex runtime 和 cortex 与 primary 的边界
- GoalForest 与 context reset 依然不工作
- goal-forest 不应该重复 system-prompt
- Cortex 当前的设计存在系统性的问题,导致 "spinning in an idle “self-talk” loop with no new external input, generating high-volume repetitive logs."
- act dispatch 情况不是本体感的一部分(但 afferent/efferent pathway 的负载水平可以是)
- 被动/主动回忆 与 被动/主动记忆;被动记忆还涉及到 sense 权重;Act其实不用记住,因为 Sense 会回传。
- Spine Runtime 和 Body Endpoint Adapter 之间的交互给我搞清楚咯
- 测试应该在 tests/ 下面,有什么特殊的理由要 aside src 吗?
- 让 adapter 自己处理自己的 config
- 拥抱 OpenTelemetry
- Local metrics (cortex-organ-output)
- rotate,但是基于日期 + awake from hibernate times monotoic int
- Cortex 的日志设计还需要优化(比如
input_payload应该在body而不是attributes;结构化而不是 string)
- attempt 是什么鬼
- 日志需要精简
- Tool trait (mainly for o11y)
- retry, budget, relibability 都可以 consolidate 进入 adapter 实现
- sense payload 需要优化,不要重复 metadata 中有的东西; 比如 shell.result 的 payload 为什么要有 kind ? neural_signal_descriptor_id 更是诡异
- sense payload 不会携带 uuid 的 act instance id, 带在 metadata
- 检查到 socket 存在不代表就要连接,把 Beluna 的状态和连接状态分开。
- Consolidate core's o11y into chat view:
- 移动 metrics 到顶部,和状态
- 将关键日志渲染为 tool call message
- polling 日志或者说有更优雅的 watch
- Sense, Act persistence
- 重构 Body Endpoint 部分
- 作为 Body Endpoint 哪来的 Spine ? 请直接命名为 BodyEndpoint 即可
- 优化 sense, act
- 需要一个大重构,主要是 ChatView 且移除 core logs o11y
- send 的时候尝试连接一次,失败了就告诉 Beluna is disconnected