✦ 아하 모멘트! 이것이 메모리 릴리즈입니다. 에이전트가 배운 것이 종료 시 더 이상 손실되지 않으며, Memorian은 503 오류를 뚫고 계속 회상하고, 모든 회상이 이제 화면에 아하 모멘트로 나타납니다. 즐겨보세요.
엔진 미변경: senpi 2026.9.7, beta.46과 동일. 이번 릴리즈는 모두 omo 쪽이며, 대부분 메모리 서브시스템입니다. 메모리가 세션 수가 나타내는 것보다 얇게 느껴지는 이유를 찾았습니다.
이 세션에서 작성한 저널이 실제로 플러시됩니다. (#7899, closes #7889)
종료 드레인은 고정된 1.5초 예산을 가지고 있고, 그 안의 유일한 지속성 단계인 journal-flush가 _마지막_에 실행되었습니다. 그 이전에 드레인은 Memorian 판사, 게이트 및 팩트 자식을 대기했고, 이들 중 하나라도 프로바이더 재시도 체인 안에 있으면 플러시가 시도되기 전에 예산이 소진됩니다. 한 호스트에서 측정한 결과: 78개 세션에 걸쳐 199개의 기아 이벤트, 191개 중에 journal-flush 건너뜀, 183개는 일반적인 omo.jsonc 핫-리로드에서 발생했습니다. 하나의 공유 설정 편집이 모든 열린 세션의 저널을 무음으로 한 번에 삭제했습니다. 이것은 종료 엣지 케이스가 아니라 정상 사용 중의 메모리 손실입니다. 플러시가 이제 먼저 실행되며, 모든 드레인 전 대기 이전에 같은 데드라인으로 예산 증가 없음. 여전히 건너뛰거나 중단되면 error 레벨에서 memory shutdown drain skipped the journal flush를 얻습니다.
Memorian이 이제 eval 셀과 긴 셸 명령을 읽습니다. (#7895)
어휘 플래너는 eval 코드를 읽지 않았고 120자를 초과하는 셸 명령은 전체를 폐기했습니다. eval에서 생활하는 경우 판사는 기본적으로 당신을 위해 실행되지 않았습니다. 이제 eval 코드 및 요약 인수에서 용어를 수확하고 모든 길이의 명령에서 수집하며 도구 용어를 위해 두 개의 최신 우선, 경로 선호 쿼리 슬롯을 예약하므로 프롬프트가 이미 두 기본 슬롯을 소유하고 있을 때도 셀의 하나의 파일명이 메모리를 표면화할 수 있습니다.
dropped (원인 deadline)이므로, 빨간색 "Memorian gate failed - deadline" 공지는 해당 경우에 대해 제거됩니다. 36시간 동안 한 호스트에서 44개의 영토큰 데드라인 중단이 실패로 렌더링되었습니다. 실제 프로바이더 중단은 여전히 child_failed로 표시됩니다.outcome.json을 씁니다. 실행 디렉토리는 7일 후, 30일 후(넛지 처리됨, 실패 또는 삭제됨) 정리되며 시간당 스로틀됩니다.판사와 팩트 자식이 빠른 카테고리 폴백 체인을 탑니다. (#7907 fixes #7904, #7911)
두 자식 모두 quick의 기본 모델만으로 modelFallback: false로 시작되었습니다. 해당 단계에서 하나의 503 server_is_overloaded이고 실행은 끝났으며, 구성한 단계가 배열에 미사용으로 남아있습니다. 이제 카테고리 자신의 체인(selectedModel + fallbackModels)을 받고 senpi는 작업 하위 에이전트 및 메인 세션에 대해 수행하는 방식과 동일하게 중간 턴 단계를 회전합니다. 실행은 전체 체인이 소진될 때만 실패합니다. 폴백이 존재하면 동일 모델 재시도 예산은 하나로 제한되며, 그렇지 않으면 2단계 체인이 90초 데드라인 내에서 실행될 수 없습니다. 카테고리 외 사다리는 여전히 거부됩니다: 판사는 여전히 quick에 고정되어 있지만, 모든 quick을 사용할 수 있습니다.
그리고 기록이 어느 모델이 답했는지에 대해 진실을 말합니다. (#7911)
게이트 항목, 넛지/빈 결과, 실패 기록 및 outcome.json이 시작 기본이 아닌 판정을 실제로 생성한 단계의 이름을 지정합니다.
회상이 회상처럼 보입니다. (#7906)
Memorian 넛지는 제3자 장부 기입처럼 읽혔습니다: Memorian nudged · <hint>, 음소거, via steer 라인. 이제 에이전트 자신의 목소리로 ✦ Aha moment! / just remembered: <hint> (두 번째는 also remembered:)로 렌더링됩니다. 전달 경로는 법의학을 위해 기록에 남지만 화면에서 사라지고, "힌트, 현재 상태 아님" 주의는 확장 보기로 이동했습니다. 이것이 당신이 먼저 알아챌 것입니다.
**알려진 메모리 문제, 이 릴리즈에서 수정되지 않음: ** #7912. 리플렉션 스케줄러가 같은 id를 가진 퇴직 실행 디렉토리가 이를 숨길 때 런처가 죽은 active.lock을 회수하지 않으므로 pending.json이 무제한 증가하고 리플렉션/드림 실행이 시작되지 않습니다. runtime/reflection/active.lock이 죽은 pid의 이름을 지정하면 한 번 삭제하세요. 적절한 수정은 거기에 추적됩니다.
호스트 종료를 위해 일시 중지된 DAG 실행은 후임 호스트가 선임 호스트가 여전히 종료되는 동안 세션을 재개했다면 영구히 paused 상태로 남았습니다. 이것이 OmO Desktop RPC 재시작의 정상적인 형태이므로 재시작을 통해 생존한 모든 데스크탑 호스팅 실행이 막혔고, 데스크탑의 "자동으로 주장하고 재개될 것" 프롬프트는 거짓말했습니다. attach는 이제 이전 홀더 pid에 임차료 시계를 장착하고 종료되는 순간 동일 세션에서 복구를 다시 실행합니다(두 번째 session_start 없음). detach, pauseForShutdown 및 dispose는 시계를 취소합니다.
ulw-loop 도구 키트: 손실된 업데이트 없음, 무음 공유 범위 없음 (#7908, #7913)create-goals, record-evidence, checkpoint, ...)이 pid + 획득 당 토큰을 전달하는 O_EXCL 잠금 파일을 가집니다. 부실 잠금은 소유자 pid가 죽었을 때만 회수되고, release는 자신의 토큰만 언링크하며, 획득할 수 없는 대기자는 잠금 해제로 진행되는 대신 ULW_LOOP_LOCK_TIMEOUT으로 닫힙니다. 이전에 3개의 병렬 record-evidence 호출이 4개 라운드마다 4개 중 1개 기준을 착지했고 모든 프로세스는 ok: true로 종료 0.--session-id 없이, 세션 환경 키 없이 CLI는 cwd 글로벌 .omo/ulw-loop/ 루트로 폴백했습니다. PI_SESSION_ID를 전달하지 않는 eval 커널에서 동일한 세션이 낯선 사람의 계획을 읽을 수 있습니다. 이제 거부하고 omo-senpi가 삽입하는 ulw-loop 포인터는 --session-id를 전달하므로 eval 호출이 올바른 범위에 도달합니다.ULW_LOOP_MIGRATION_REQUIRED로 실패하고 복구의 이름을 지정합니다(변경 명령을 한 번 실행).skill-pointers는 모든 입력에서 어디든지 워크플로우 이름과 일치했고 _"사용자가 ... 요청했습니다"_를 삽입했습니다. 멀티 세션 설정에서 릴레이된 상태 라인이나 워크플로우 이름을 지은 인용된 권고가 수신인에서 포인터를 다시 준비했고, ultrawork 트리거는 단어 경계가 없었습니다. 인라인 및 울타리 코드, 그리고 이미 삽입된 포인터 블록이 키워드 테스트 전에 마스크되고, 포인터 텍스트는 조건부입니다("이 세션의 사용자가 X를 실행하도록 요청하면... 그렇지 않으면 무시"), ultrawork / ulw만 단어 경계에서 일치합니다. ulw-loop이 여전히 준비되고, ulwfoo는 그렇지 않습니다.
Win32_Process를 통해 식별됩니다(PowerShell이 PATH가 아닌 SystemRoot를 통해 해결됨), 따라서 첫 번째 상태 확인에서 고아가 되는 대신 감지하고 중지할 수 있습니다. (#7885, 감사합니다 @LilMGenius)lsp-daemon의 spawnDaemonProcess는 BUN_BE_BUN=1 없이 컴파일된 omo 바이너리를 통해 데몬을 시작하므로 ensureDaemonRunning 재시도가 데몬 대신 팬텀 에이전트 세션을 부팅할 수 있습니다. dev 및 이 릴리즈에 있으며 수정이 진행 중입니다. 시작하지 않은 짧은 세션이 보이면 omo doctor가 고아 엔진을 나열합니다.task_lost로 실패합니다.npm i -g omo-ai@beta
bunx oh-my-openagent@5.0.0-beta.47 install
bunx lazycodex-ai@5.0.0-beta.47 install
시도해보고 무엇이 깨지는지 알려주세요. 저는 여기 있겠습니다.
커뮤니티 기여자 2명에게 감사합니다: