Skip to content

Implement browser write accountability receipts #28

@mdheller

Description

@mdheller

Purpose

Implement BearBrowser support for SourceOS Mutation and Evidence Accountability, anchored to SourceOS spec PR #96:

SourceOS-Linux/sourceos-spec#96

Required behavior

BearBrowser must emit browser write accountability receipts that distinguish:

  • browser core profile state;
  • history / Places-style storage;
  • favicons;
  • cookies and permissions;
  • session restore;
  • per-origin storage;
  • service-worker/cache state;
  • download/cache writes;
  • sync state;
  • extension storage;
  • hidden/system/policy add-ons;
  • diagnostics;
  • profile repair or migration.

No-visible-extension guardrail

If extension_inventory_state=none_visible, the browser must not attribute write pressure primarily to extension storage unless hidden/system/policy add-on evidence is attached.

Acceptance criteria

  • A write-pressure event emits a receipt with actor chain, object/path class, operation, resource cost, policy, evidence quality, and causal parent fields.
  • The receipt can represent browser_actor_class and extension_inventory_state.
  • Missing database path/origin/extension evidence downgrades evidence quality.
  • Tests include a no-visible-extension fixture and reject extension-primary attribution without evidence.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions