Add full shell, replaceable Omics adapter and bilingual interaction
Implement approved specification #32 and tickets #33-#37. Keep host authentication server-verified and pin session interaction language. Compile scoped base selectors for browser compatibility and retain full gutters during CSS pruning.
This commit is contained in:
@@ -106,6 +106,19 @@ class FilesystemSessionRepository:
|
||||
path = self._artifact_path(session_dir, key)
|
||||
return path.read_text() if path.exists() else None
|
||||
|
||||
def ensure_interaction_language(
|
||||
self, session_id: str, workspace_language: str
|
||||
) -> SessionSnapshot:
|
||||
from tht.session.store import pin_interaction_language
|
||||
|
||||
session_dir = self._session_dir(session_id)
|
||||
with self._lock(session_dir):
|
||||
self._require_existing(session_dir, session_id)
|
||||
manifest = SessionManifest.from_yaml(session_dir / MANIFEST)
|
||||
if pin_interaction_language(manifest, workspace_language):
|
||||
self._write_manifest(session_dir, manifest)
|
||||
return self.get(session_id)
|
||||
|
||||
def write_artifact(self, session_id: str, key: str, content: str) -> None:
|
||||
session_dir = self._session_dir(session_id)
|
||||
with self._lock(session_dir):
|
||||
|
||||
Reference in New Issue
Block a user