Skip to content

Latest commit

 

History

History
99 lines (81 loc) · 4.91 KB

File metadata and controls

99 lines (81 loc) · 4.91 KB

TODOs of Beluna

  • 迁移到 Github Issues & Project

Core

Cortex

  • 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
  • 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 的负载水平可以是)

Continuity

  • 被动/主动回忆 与 被动/主动记忆;被动记忆还涉及到 sense 权重;Act其实不用记住,因为 Sense 会回传。

Spine

  • Spine Runtime 和 Body Endpoint Adapter 之间的交互给我搞清楚咯
  • 测试应该在 tests/ 下面,有什么特殊的理由要 aside src 吗?
  • 让 adapter 自己处理自己的 config

Observability

  • 拥抱 OpenTelemetry
  • Local metrics (cortex-organ-output)
  • rotate,但是基于日期 + awake from hibernate times monotoic int
  • Cortex 的日志设计还需要优化(比如input_payload 应该在 body 而不是 attributes;结构化而不是 string)

AI Gateway

  • attempt 是什么鬼
  • 日志需要精简
  • Tool trait (mainly for o11y)
  • retry, budget, relibability 都可以 consolidate 进入 adapter 实现

Std BodyEndpoint

  • sense payload 需要优化,不要重复 metadata 中有的东西; 比如 shell.result 的 payload 为什么要有 kind ? neural_signal_descriptor_id 更是诡异
  • sense payload 不会携带 uuid 的 act instance id, 带在 metadata

Shell

Apple Universal

  • 检查到 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