Skip to content

Tracer: Preserve model plans in Profile Backup only #505

Closed

Description

@DoodleBears

Parent

#882 — Profile Portability: implement accepted backup, restore and transfer UX. Moved from #488 on 2026-10-06; #488's runtime slices (#498/#500/#501/#504/#506/#508) are complete and #488 is closed.

What to build

Identity-preserving Profile Backup / Managed Restore carries the deployment-local Model Presets (#883) and each PersonaBot Model Plan (#884) as part of the complete-core backup delivered by #886.

Acceptance criteria

  • Exporting and restoring a Profile preserves reusable preset templates, applied independent Bot snapshots, Assignment allowlists/defaults, and plan revisions.
  • A restored Bot remains subject to dependency resolution and Human activation; a missing provider/model/credential stops a new model request rather than silently choosing another route.
  • Credentials are never written into the backup (ADR-0027, ADR-0093).
  • Focused backup/restore tests exercise observable round trips; a Human can inspect a restored Bot's Profile and run a valid real DSH reply after repair.

Blocked by

Sharing boundary (moved out of this issue)

The former criterion "PersonaBot Export and SoulSnapshot omit model bindings" no longer has a target: per ADR-0131 the sharing unit is the Bot's Memory Git repository, not a SoulSnapshot. Phase 1 Marketplace already satisfies the boundary structurally: the shared repository is bots/<slug>/memory (packages/core/src/bots/registry.ts:118), Model Plans live in the SQLite Bot registry (#884), and Git-URL install clones only Memory into a fresh local identity (registry.ts:385). The Phase 2 upload path carries the matching acceptance in #17.


Generated by Claude Code

Activity

  1. added this to the v1.0 milestone on Sep 29, 2026
  2. added
    ready-for-agentFully specified, ready for an AFK agent
    area:fullstackEnd-to-end Host and Client implementation
    scope:tracerHuman-testable implementation slice
    feature:profilePersonaBot Profile surface (popover, view, cards)
    on Sep 29, 2026
  3. DoodleBears commented on Sep 30, 2026

    @DoodleBears
    ContributorAuthor

    Dependency verification / sequencing update

  4. modified the milestones: v1.0, v1.1 on Oct 6, 2026
  5. DoodleBears commented on Oct 8, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim

    Human instructed merge and continue. #886 is merged in #1195 at a7b9773e; no #505 implementation claim or open matching PR was found. This continuation will stop at a reviewable PR for Human QA, without release or further merge authorization.

  6. added
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 8, 2026
  7. DoodleBears commented on Oct 8, 2026

    @DoodleBears
    ContributorAuthor

    Agent work outcome — handed off for Human review

    The complete-core implementation is already merged in #1195; this continuation adds its #505 acceptance regression without a separate model-only format or production change. Two Bots retain different independent plans/revisions after shared-template edits, full backup/restore, target-local template edits and cold restart. Assignment defaults, model allowlists, allowed/default reasoning effort and source-template metadata are preserved. A synthetic credential sentinel is absent from every decompressed package entry and the destination. Missing target dependencies refuse authorization/activation or the selected route request without trying a fallback; invalid model/effort choices remain refused.

    Local validation passed nine backup tests, lint, format and typecheck; the final restored-plan case was also rerun alone. Linux full verification passed on 0c205d9e. #886's real Generation 72 authorization/activation/reply and cold-restart reply evidence remains applicable. Additionally, read-only queries through the actual target Host's public model endpoints matched the stopped source database's template and plan exactly, with no model repair needed.

    Remaining scope: Human review of this test-only PR. The final Settings visual QA gaps disclosed for #886 remain recorded there; this PR does not claim new screenshots or UI interaction coverage. Human authorized #1195's merge, not this subsequent PR's merge or a release.

  8. added and removed
    ready-for-agentFully specified, ready for an AFK agent
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 8, 2026
  9. DoodleBears commented on Oct 8, 2026

    @DoodleBears
    ContributorAuthor

    Agent work outcome — completed after Human-authorized merge

    Human asked whether E2E had been tested and authorized merge if sound. The owner-level full backup/restore/cold-restart regression and reused real DSH authorization/reply/cold-restart evidence from #1195 were distinguished from the outstanding Settings visual QA gap before merge. Actual restored Host model endpoints also matched the stopped source exactly. Exact-head Linux full verification passed: 3333 tests passed, nine skipped; no unresolved review threads were present.

    This commit changes tests only. Remaining Settings interaction/screenshots stay documented under #886/#1195; no new UI E2E capture is claimed. No release was performed.

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:fullstackEnd-to-end Host and Client implementationfeature:profilePersonaBot Profile surface (popover, view, cards)ready-for-humanRequires human implementationscope:tracerHuman-testable implementation slice

    Type

    No type

    Projects

    • Status
      Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions