feat: 权限档位体系(三档 plan/workspace/full + 四桥 from_session_id)
L2 核心改动:sessions 表补 permission_mode / permission_enforcement 两列 (sqlite + pg 同步),三桥 lib/permission-mode.js 翻译档位到平台原生配置, homeagent advisory 模式提示词告知模型实际强制力。四桥全部携带 from_session_id 供 relay 去重与会话回溯。 FromHuman / ToHuman 判据已加入心跳 payload 与 notify/mail.go。
This commit is contained in:
@ -9,6 +9,7 @@
|
||||
*/
|
||||
|
||||
import { replyInstruction, inboundHeadline } from '../lib/relay-policy.js';
|
||||
import { clampRelayKey } from '../lib/relay-key.js';
|
||||
|
||||
/** 去掉已有的 Re: 前缀,避免 Re: Re: Re: 叠加。 */
|
||||
export function stripRe(subject) {
|
||||
@ -180,7 +181,10 @@ export function buildMailPrompt({ agentName, data, kind, reused }) {
|
||||
* @returns {string}
|
||||
*/
|
||||
export function relayKeyFor(piSessionId, leafId) {
|
||||
return `${piSessionId || 'unknown'}:${leafId || 'noleaf'}`;
|
||||
// clampRelayKey 收尾:会话 id 与 leafId 平常都短,但不能假定——
|
||||
// 同一个假定在权限询问那边已经坏过一次(toolCallId 被拼了思考签名,
|
||||
// 437 ~ 13601 字节)。超限时才改写,所以合规的键不受影响。
|
||||
return clampRelayKey(`${piSessionId || 'unknown'}:${leafId || 'noleaf'}`);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user