Add session recall, managed SSH runtime UX, and skill portability#503
Add session recall, managed SSH runtime UX, and skill portability#503
Conversation
Merging this PR will improve performance by 15.18%
Performance Changes
Comparing Footnotes
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Greptile SummaryThis PR lands four major capability areas: cross-session recall with automatic checkpoints, Cursor-compatible project context ingestion, portable skill bundle export/import, and a full managed SSH remote execution runtime with web/CLI UX. All security concerns from the previous review round are resolved — the checkpoint path-traversal fix, tightened context-warning heuristics, robust passphrase detection, clean Key changes:
Two minor P2 findings remain: the known-hosts option value is assembled without path quoting (a space in the temp-dir path truncates it, causing a connection failure rather than a security bypass), and Confidence Score: 5/5Safe to merge; all prior P0/P1 security concerns are resolved and the remaining findings are P2 style/quality suggestions. Every finding from the previous review round has a corresponding fix with regression tests. The two new findings are P2: an edge-case path-quoting issue that causes a connection failure rather than a bypass, and a coverage gap in the warning scanner for content in stripped HTML comments. Neither blocks merge. crates/projects/src/context.rs (scan_context_warnings runs on post-sanitized content), crates/gateway/src/node_exec.rs (known-hosts option path quoting in exec_over_ssh) Important Files Changed
Reviews (9): Last reviewed commit: "refactor(ssh): use secrecy for imported ..." | Re-trigger Greptile |
|
Addressed the remaining Greptile P2s in
Validation:
|
|
Addressed the two latest Greptile follow-ups in
Validation:
|
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
withered-breeze-e956 | 1c14460 | Commit Preview URL Branch Preview URL |
Mar 29 2026, 12:09 PM |
|
Followed up on the latest review feedback in three small commits:
Validation run on the updated PR head:
I also re-checked review thread state after the push. There are still no unresolved inline review conversations on this PR. |
|
Followed up on the latest Greptile note in
Validation:
I also re-checked PR thread state after the push. There are no unresolved inline review conversations on this PR. |
|
Followed up on the latest Greptile summary in
Validation:
I also re-checked PR thread state after the push. There are still no unresolved inline review conversations on this PR. |
Summary
Validation
Completed
just formatcargo test -p moltis-tools sessions_search -- --nocapturecargo test -p moltis-tools checkpoint -- --nocapturecargo test -p moltis-projects types -- --nocapturecargo test -p moltis-projects context -- --nocapturecargo test -p moltis-skills portability -- --nocapturecargo test -p moltis-config ssh_exec -- --nocapturecargo test -p moltis-gateway node_exec -- --nocapturecargo test -p moltis-auth test_credential_store_ssh_keys_and_targets -- --nocapturecargo test -p moltis-auth test_first_ssh_target_becomes_default_and_delete_promotes_replacement -- --nocapturecargo test -p moltis-auth test_reset_all_removes_managed_ssh_material -- --nocapturecargo test -p moltis-vault migration -- --nocapturecargo test -p moltis-httpd ssh_routes -- --nocapturecargo test -p moltis check_remote_exec_warns_for_unpinned_active_target -- --nocapturecargo test -p moltis read_remote_exec_inventory_reports_pinned_defaults -- --nocapturecargo check -p moltis-gatewaycargo check -p moltis-gateway -p moltis -p moltis-skills -p moltis-projects -p moltis-configcargo check -p moltis-web -p moltis-gatewaycargo check -p moltis-auth -p moltis-gateway -p moltis-httpd -p moltis-web -p moltis-tools -p moltis-vaultcargo check -p moltis-auth -p moltis-gateway -p moltis-httpd -p moltis-web -p moltiscargo check -p moltis-graphql --testsbiome check --write crates/web/src/assets/js/page-skills.js crates/web/ui/e2e/specs/skills.spec.jsbiome check --write crates/web/src/assets/js/page-nodes.js crates/web/src/assets/js/nodes-selector.js crates/web/src/assets/js/components/session-header.js crates/web/ui/e2e/specs/node-selector.spec.jsbiome check --write crates/web/src/assets/js/page-settings.js crates/web/ui/e2e/specs/ssh-settings.spec.jsbiome check --write crates/web/src/assets/js/page-nodes.js crates/web/ui/e2e/specs/settings-nav.spec.jscd crates/web/ui && npx playwright test e2e/specs/skills.spec.jscd crates/web/ui && npx playwright test e2e/specs/node-selector.spec.jscd crates/web/ui && npx playwright test e2e/specs/ssh-settings.spec.js e2e/specs/settings-nav.spec.jscd crates/web/ui && npx playwright test e2e/specs/ssh-settings.spec.jscd crates/web/ui && npx playwright test e2e/specs/settings-nav.spec.js -g "nodes doctor can repair and clear the active SSH host pin"cd crates/web/ui && npx playwright test e2e/specs/settings-nav.spec.js -g "nodes doctor shows actionable hint for active SSH route failures"Remaining
just lintstill fails locally because of the existingllama-cpp-sys-2/ CMake environment issue (make: Makefile: No such file or directory)just testwas not rerun across the entire workspace for this stacked branchManual QA
.cursorrules/.cursor/rules