Skip to content

Feat/task memory evidence pipeline - #68

Merged
AnzoBenjamin merged 6 commits into
mainfrom
feat/task-memory-evidence-pipeline
Aug 31, 2026
Merged

Feat/task memory evidence pipeline#68
AnzoBenjamin merged 6 commits into
mainfrom
feat/task-memory-evidence-pipeline

Conversation

@AnzoBenjamin

@AnzoBenjamin AnzoBenjamin commented Aug 31, 2026

Copy link
Copy Markdown
Owner

This change is Reviewable

The suggest_followups ordering/gate rejections and the pre-gate git-committer withhold are control-flow diagnostics the model resolves on its own, but they reached the CLI without userMessage/autoRecovering and surfaced as user-visible error banners logged at error level. Tag them as auto-recovering with concise user summaries, log auto-recovering notices at debug, and sharpen the rejection wording so suggest_followups is described as the final output of the turn.
The pre-push memory-drift guard flagged cli/knowledge.md and common/knowledge.md as stale against their sibling src/ trees. Record how handleRuntimeError splits runtime errors on autoRecovering (log-only debug notices vs rendered failures) and how the optional userMessage/autoRecovering fields on printModeErrorSchema are meant to be consumed, so the guard and future readers both stay in sync.
Replace the completion summary emoji status rows with a titled Run summary box of aligned label/value rows, so each row reads without relying on emoji width or color alone. Restructure the status bar into three regions - status label, left-aligned chip cluster, right-pinned scroll and stop controls - and give the scroll-to-bottom button a fixed reserved width so hovering it no longer reflows the row. A shared isScrollButtonCompact predicate keeps the chip-budget reservation in step with the form the button actually renders.
The terminal policy exempted only temp-root-prefixed operands, so the bare temp-root operand in the tmux-cli stale-capture sweep was denied and the whole setup script failed with a misleading writability error. Gate on the resolved temp-root relationship instead, so sibling-prefix directories stay refused. Also split background ampersands before env-dump classification and fail closed on unparseable fragments that name a dump utility.

The agent-runtime scope backstop hard-blocked every absolute path, so the SDK read-only owned-temp exception (job logs, tmux captures) was unreachable through read_files. Allow owned-temp reads there while keeping writes hard-blocked, and refresh cli/knowledge.md for the pre-push memory-drift guard.
Tools were contained to the project root plus the openbuff-owned temp namespace, so a user could not read their own config directory (logs, harness state) even though reading it is a legitimate non-mutating action. Add a third containment scope for a default-closed, configure-once allowlist of roots outside the project that read-only tools may reach, configurable via readableRoots in openbuff.json.

The write-path resolvers are left untouched, so a write physically cannot reach an allowlisted root; the filesystem authority also fails closed on the new scope. The resolver dereferences exactly once and refuses mandatory-sensitive files, so no consumer can forget that check.

readableRoots grants filesystem authority rather than influencing model routing, and project config wins the config merge, so a cloned repository could otherwise allowlist credential directories. Roots are now attributed to their declaring config file and only config-dir declarations are trusted by default; set OPENBUFF_TRUST_PROJECT_READABLE_ROOTS=1 to opt in to project-declared roots. The sensitive-path list also gained the credential carriers it was missing.
Records the read-only external-read containment scope, its default-closed configure-once registry, the write-path resolver separation that keeps writes out of allowlisted roots, and the path-aware credential carriers added to the sensitive-path policy.

Required by the pre-push memory-drift guard, which flagged the file as stale relative to the sibling src changes.
@vercel

vercel Bot commented Aug 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openbuff Ready Ready Preview, v0 Aug 31, 2026 7:29pm

@AnzoBenjamin
AnzoBenjamin merged commit 0ac6b78 into main Aug 31, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant