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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions