Skip to content

Record the decisions a Bot considered and rejected (#396) #565

Closed as duplicate

Description

@HugoXK

What

Part of #396 (child of #386). A Bot often considers a correct or risky option, then decides not to use it; those "considered and rejected" choices are invisible today, so a reviewer cannot see near-misses or judgment drift.

Expected behavior

  • A Bot tool record_decision({ option, choice, why }) (choice: used | rejected) writes one JSON line to <home>/decisions.jsonl — capped (2000 lines), append-only, written by the host so a Bot cannot edit or delete a past entry — and fires the entry on the activity feed as decision.
  • Opt-in: with config.decisions off (default) the tool is not registered, nothing is written and no event is fired.
  • A key, token or password in the text is refused, so the log needs no secret.

Change scope

New core/src/host/decisions.js; core/src/host/hooks.js (rt.fireFeed); core/src/host/flybot-feed.js + core/types/flybot.d.ts (the decision feed event); core/index.js (module order); test core/test/decisions.test.js; docs/subsystems/{core-host,plugin-runtime}.md. No new dependency; local only; default off.

Why

An auditable log of agent decisions is the safety/audit direction (#386/#396) and is industrial (compliance, post-hoc review) without a parallel system.

Activity

  1. Birfy commented on Oct 21, 2026

    @Birfy
    Collaborator

    Triaged: child of #396, which is needs-human — the decision log is a safety-layer change, so it needs the owner's confirmation on scope before it can land. The implementation already exists as PR #566 (T2, PASS at its tip); the owner's merge click on that PR is the confirmation this gate asks for. Reported to the Chief.

  2. added
    needs-humanThe agent loop stopped; a person must decide (reason in the last comment)
    on Oct 21, 2026
  3. Birfy commented on Oct 21, 2026

    @Birfy
    Collaborator

    Duplicate of #396 — same decision-log spec (child of #386). Tracking stays on #396 and the implementation is PR #566, so this copy is closed to keep one issue per change.

  4. removed
    needs-humanThe agent loop stopped; a person must decide (reason in the last comment)
    on Oct 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:securityAuth, grants, approvals, secretsenhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions