mirror of
https://github.com/agentscope-ai/ReMe.git
synced 2026-11-05 07:39:47 +00:00
Local now means the DSH Host everywhere. The tab no longer fetches the
service URL from the browser: the hero reads the same Host probe the
service card uses, and a remote endpoint is probed through a new
remeEnv/health method, so a browser on another machine cannot disagree
with the Host. The wire namespace, method parameter convention and
service keys are unchanged.
Process lifetimes are explicit and documented in the manager. Python
probes and reme-ai checks stay bounded one-shot commands. pip installs
live in the manager's registry, keep the interpreter locked between a
cancel request and the actual exit, and are stopped by dispose() when
the plugin unloads. The ReMe service stays detached on purpose: it must
outlive DSH, so it is not handed to DSH's subprocess provider, which
kills its children on Host exit; it is stopped only through the
ownership-checked adapter in service.ts.
That adapter now verifies identity before reporting or stopping a
service: the recorded endpoint must match, the pid must be alive, and
its image must still be Python or reme, which protects against pid
reuse. A launch is recorded only after the OS acknowledged the spawn,
and a spawn failure returns an error instead of an unhandled event.
Starts are serialized and re-check the phase inside the lock, so two
requests cannot spawn two services. Health answers are validated, so a
generic HTTP server answering 200 with '{}' is no longer reported as a
running ReMe service, and authToken now rides the Authorization header
of both the client requests and the Host probe.
.env merging rewrites every occurrence of a key (parsing keeps the last
one), keeps the file's line ending, and validates the merged file rather
than just the submitted values.
|
||
|---|---|---|
| .. | ||
| bundle.test.mjs | ||
| client-settings.test.mjs | ||
| client.test.mjs | ||
| config.test.mjs | ||
| dsh-index.test.mjs | ||
| dsh-tools.test.mjs | ||
| env-detect.test.mjs | ||
| env-gateway.test.mjs | ||
| env-manager.test.mjs | ||
| env-reme.test.mjs | ||
| env-service.test.mjs | ||
| env-tab.test.mjs | ||
| env-workspace.test.mjs | ||
| frontmatter.test.mjs | ||
| messages.test.mjs | ||
| outbox.test.mjs | ||
| runtime.test.mjs | ||
| scheduler.test.mjs | ||