Skip to content

feat(profiles): add isolated session profiles and capabilities - #4

Merged
TheViniAlmeida merged 1 commit into
nextfrom
feat/session-profiles
Oct 10, 2026
Merged

TheViniAlmeida merged 1 commit into
nextfrom
feat/session-profiles

Conversation

@TheViniAlmeida

Copy link
Copy Markdown
Owner

Selecting a session in a different root must also select that root's native CLI and HOME/XDG environment. This adds explicit profiles and root-bound session references for the upcoming terminal interface, while preserving existing CLI selectors and output.

  • Ephemeral profiles and optional private POSIX JSON snapshots: bounded schema, HOME/XDG-only overrides, exclusive creation and ownership/mode/symlink checks. No stored secrets, implicit writes or overwrite.
  • Paginated catalog listing filters the selected root before LIMIT/OFFSET and retains missing/unsupported metadata with reasons. Authoritative reads revalidate format/root/native ID; same IDs in different roots remain distinct.
  • Source and target environments are snapshotted independently through the shared operation API. Native OpenCode/Kilo store guards remain in place. Canonical MastraCode database-file roots are supported without falling through to a sibling database.
  • Conservative capabilities registry exposes adapter schemas/directions/media limits. Native title overrides and in-place updates remain disabled until proven.
  • Assign the two-store profile oracle to the existing exact OpenCode2.0.23 CI gate, which rejects skips. Update the implementation plan's progress pointer.

Validation: 1864 passed, 55 skipped with isolated HOME/XDG and stock OpenCode2.0.22; Ruff lint/format, shell/diff checks and wheel/sdist build passed. The built wheel passed 42 profile tests, including two native stores sharing one session ID. Independent review approved after 186 passed, 1 deselected, excluding only the opt-in real-store inventory probe. A discovered MastraCode file-root regression was fixed and independently retested. No real sessions or supplier credentials were used.

This milestone adds core APIs, not the TUI entrypoint. Profile snapshot persistence currently requires POSIX; edit/removal/overwrite are explicit future work. Historical exact-client and private-store opt-in skips are not passes. Stock2.0.23 execution is assigned to CI; local execution used stock22.

@TheViniAlmeida
TheViniAlmeida merged commit 06ccaac into next Oct 10, 2026
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant