Skip to content

[Frontier] [MEM16-01A] Carry precise file ancestry through memory and later conversations #402

Closed

Description

@chayapats

Parent

S16 #392, MEM16-01 delivery graph; source-lineage dependency of FILE16-01 #396.

Model tier

Frontier: transitive private ancestry across memory, native/history derivatives, recipient approval and revocation is a protected contract.

Context to read

AGENTS.md, CONTEXT.md, docs/agents/workflow.md, S16/S15 specs, ADRs 0064/0074/0076, docs/design/S16-rakazo-experience.md, docs/contracts/s16-files-v1.md, #400/#401. Audit src/s15/{memory,team,disclosure}/, conversation/{application,types,owner-view}.ts and src/s16/files/. Preserve current FR/NFR and source/forget semantics.

Deliverable

Useful file-derived memory can inform a later authorized conversation or Bot without losing the exact original/derivative file ancestry. Forget, correction and source withdrawal invalidate uncited descendants and future model/tool/recipient sends. Replace the explicit text-slice file-memory/history fence only when these checks are composed.

Implementation steps

  1. Freeze metadata-only source/claim/packet ancestry queries with exact bounded identities; no serialized principal, generic resource label or model citation substitutes for a source.
  2. Bind file metadata anchors and actual observed content claims to protected MEM/TEAM provenance, retention scope and current pinned resources. Derive summaries/artifacts from complete ancestry.
  3. Track precise file ancestors of every included memory/history fragment before interpreter/model/tool/VM release and recipient selection. Unrelated withdrawn files must not block clean unrelated work.
  4. Make file withdrawal/forget/correct monotonic across MEM, TEAM, CHAT result/history/native derivatives, artifacts, previews/downloads and replay suppression. Define conservative cross-ledger commit/recovery; evaluate a shared SQLite writer when it simplifies atomicity rather than adding ad-hoc distributed flags.
  5. Allow future authorized requests/Bots to use file-derived memory only through current private/team scope and precise new-recipient approval.
  6. Implement authored source/impact/correct/forget feedback with actual service facts and Thai/English keys; remove the unavailable-memory capability only after integration passes.

Acceptance criteria

  • A later request uses an actual useful file-derived fact with source provenance, within current scope, without explicitly reattaching the entire file.
  • Private data does not move to another Bot/resource/recipient via uncited memory, summary, interpreter history, native compaction, artifact or handoff.
  • Withdrawal/forget during a live wait prevents the next send/publication; future retrieval/history excludes retired content and cannot replay it after restart.
  • Correction preserves inherited ceilings and invalidates stale dependent outputs; replay suppression does not retain erased private bytes as a new memory source.
  • Exact source approvals cannot be bypassed with a generic computer source; clean unrelated work remains usable.
  • The first text-only contract remains compatible until a versioned enabled-memory capability is present.

Tests and evidence

  1. Composed file → actual tool observation → MEM retention → later Bot/request retrieval → actual authorized model input.
  2. Exact-source versus broad-resource recipient approval; private/team scope, withdrawn/corrected parent, uncited descendants and concurrent requests.
  3. Forget/withdraw before and after retrieval/model wait/compaction/publication/download, restart and duplicate command identities.
  4. Browser source/impact/correct/forget states use current protected projections, with no fabricated completion.

Requirements

FR-05/07/15/16/17/18/22/31/35/38/42; NFR-02/05/06/07/10/11/12/14; S16-AC03/04/08/10/20.

Blocked by

#400 precise file source/custody/publication. Coordinate original/derivative identities with #401; text-only memory proof can progress independently of a live parser/vision route. Contract/commit design must be reviewed before ready-for-agent.

Contracts used/delivered

Existing MEM/TEAM/DATA15/POLICY owning ports plus versioned metadata ancestry and file-dependent history/publication bindings. Schway public native/session/compaction surface only.

Out of scope

Global storage migration without preservation proof, unrelated connectors/native clients, new work authority, owner-host activation and private S14 data promotion.

Do not

Do not remove the current memory/history fence before transitive checks pass, trust model citations for ancestry, scan all old files as blanket lineage, store credentials, silently broaden recipient/resource scope, add model attribution, use implement-parallel or merge.

Definition of done

bun install --frozen-lockfile, bun run typecheck, relevant MEM/TEAM/CHAT/DATA15/file/composed/browser regressions and git diff --check pass. PR Closes this issue, Refs #392/#396, records exact contract/commit/evidence, and does not claim complete MEM16-01 search/UI/native coverage from source ancestry alone.

Complete backlog publication — 2026-11-05

Preserve the primary-owned prepared jit/402-s16-file-memory branch; no new implementation claim or edits are made here. #416 owns remaining memory search/client lifecycle; #407/#413/#421/#433 consume exact file ancestry. Consider a metadata query/commit contract before ad-hoc cross-ledger flags; do not remove the current memory/history fence before proof.

Activity

  1. chayapats commented on Nov 5, 2026

    @chayapats
    OwnerAuthor

    Implementation is available for review in draft #435, head 818f219748fd985c4eeae1288295167a44ac9e78, stacked on #434. ADR 0078 and docs/contracts/s16-file-memory-v1.md record exact ancestry, history privacy, original-byte validation, conservative cross-ledger ordering and opt-in/rollback fences. This does not activate the owner host or change runtime defaults.

    Evidence: main implementation 10a965579b049a2b98936dfa3856f7ab5ae08441 passed the complete repository suite (4,477 pass, 28 skip, 0 fail) and seven opt-in real Chromium file/memory scenarios at desktop/mobile widths in English/Thai. After the isolated maximum-ID correction, 59 memory/file regressions, 154 service-package checks and typecheck passed. PR #435 states the exact run boundaries; the complete suite was not rerun after that correction. CI draft jobs are skipped and no review has been submitted.

    The result includes later actual model/VM use, private Bot isolation in work and interpretation, exact source/recipient checks, model-wait withdrawal/forget, auth-resend fencing, source/hash substitution, artifact impact/download withholding, image ancestry, observed read-range reconstruction, restart and old-reader refusal. Existing file commands are never retroactively opted into memory. Full memory search/client lifecycle remains #416, and live/host acceptance remains #431/#432. This issue remains open pending stack review/integration.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions