<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Harbor Self-Evolving</title><link>https://istarwyh.github.io/harbor-self-evolving/</link><description>Recent content on Harbor Self-Evolving</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Sun, 27 Sep 2026 21:17:01 +0800</lastBuildDate><atom:link href="https://istarwyh.github.io/harbor-self-evolving/index.xml" rel="self" type="application/rss+xml"/><item><title>0.10.2 — stable Workbench styling</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.2/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.2/</guid><description>&lt;p&gt;Released 2026-09-27. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.10.2"&gt;&lt;code&gt;v0.10.2&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="fixed"&gt;Fixed&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Each live Harbor client-plugin lifetime owns its own stylesheet tag, so disposing an older duplicate or hot-reloaded instance cannot remove the active Workbench styles.&lt;/li&gt;&#10;&lt;li&gt;Job status text stays at the card&amp;rsquo;s top-right corner without stretching to the title height.&lt;/li&gt;&#10;&lt;li&gt;The status background bubble is removed while completion, running, attention and failure colors and symbols remain visible.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter identities align at 0.10.2.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="verification"&gt;Verification&#10;&lt;/h2&gt;&#10;&lt;p&gt;The &lt;a href="https://github.com/istarwyh/harbor-self-evolving/blob/main/docs/releases/v0.10.2/README.md"&gt;0.10.2 archive&lt;/a&gt; records the targeted lifecycle/layout checks and coordinated package publication evidence.&lt;/p&gt;</description></item><item><title>0.10.1 — trustworthy scientific evaluation loop</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.1/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.1/</guid><description>&lt;p&gt;Released 2026-09-26. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.10.1"&gt;&lt;code&gt;v0.10.1&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="shipped"&gt;Shipped&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Formal Candidate Experiments execute only the exact &lt;code&gt;harbor-dsh-evaluator/v2&lt;/code&gt; bundle through a strict private Dataset adapter; Dataset verifiers and v1 fallback cannot become score authority.&lt;/li&gt;&#10;&lt;li&gt;Trusted Evaluation Reports, content-addressed Job bundles, cross-artifact Evaluator identity, score suppression and execution-failure handling keep invalid evidence out of quality conclusions.&lt;/li&gt;&#10;&lt;li&gt;Repeat-aware Experiments, paired uncertainty, immutable Promotion reports, exact Policy snapshots and stronger Docker/environment invariants make governed comparison auditable.&lt;/li&gt;&#10;&lt;li&gt;Historical diagnosis, Candidate-bound business observations, independent Ground Truth meta-evaluation and confirmed badcase drafts preserve their distinct evidence boundaries.&lt;/li&gt;&#10;&lt;li&gt;Diagnostic, experiment and governed product profiles reveal only the controls justified by their evidence level.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter identities align at 0.10.1, with 34 public schemas in both packages.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="repair"&gt;Release repair&#10;&lt;/h2&gt;&#10;&lt;p&gt;0.10.0 published to npm, but clean Linux tag/PyPI workflows exposed two release-test portability issues before any Python artifact was built. Public tags and package versions were not moved or overwritten. 0.10.1 contains the same runtime behavior with stable test-helper imports and a bounded shared-runner response budget, and supersedes 0.10.0.&lt;/p&gt;</description></item><item><title>0.10.0 — incomplete publication</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.0/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.0/</guid><description>&lt;p&gt;Tagged 2026-09-26 at &lt;code&gt;97a385062ba194d5496ba2d98c45a3701d08c01d&lt;/code&gt;.&lt;/p&gt;&#10;&lt;div class="td-callout td-callout--warning" role="note"&gt;&#10; &lt;div class="td-callout__title"&gt;&lt;i class="td-callout__icon fa-solid fa-triangle-exclamation" aria-hidden="true"&gt;&lt;/i&gt;&lt;span class="td-callout__label"&gt;Warning&lt;/span&gt;&lt;/div&gt;&#10; &lt;div class="td-callout__body"&gt;&#10;&lt;p&gt;Publication was incomplete. npm 0.10.0 published successfully, but clean Linux tag/PyPI workflows failed before any Python artifact was built. The tag and npm package remain immutable; use 0.10.1 instead.&lt;/p&gt;&#10; &lt;/div&gt;&#10;&lt;/div&gt;&lt;h2 id="scope"&gt;Intended source scope&#10;&lt;/h2&gt;&#10;&lt;p&gt;The source introduced the exact Evaluator v2 execution boundary, sealed trusted reports, repeat-aware scientific Experiments, governed Gate invariants, hardened Historical/business/meta evidence and three product profiles. Runtime behavior is carried forward by 0.10.1.&lt;/p&gt;</description></item><item><title>0.9.8 — Host path translation fix</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.8/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.8/</guid><description>&lt;p&gt;Released 2026-09-21. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.9.8"&gt;&lt;code&gt;v0.9.8&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="shipped"&gt;Shipped&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Host command translation preserves paths already resolved into the Trial host directory.&lt;/li&gt;&#10;&lt;li&gt;Historical Session Observation and Candidate commands no longer receive a duplicate host-root prefix.&lt;/li&gt;&#10;&lt;li&gt;A HostEnvironment integration test executes the complete SessionObservationAgent upload, digest verification and artifact write path.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter identities align at 0.9.8.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="verification"&gt;Verification&#10;&lt;/h2&gt;&#10;&lt;p&gt;The &lt;a href="https://github.com/istarwyh/harbor-self-evolving/blob/main/docs/releases/v0.9.8/README.md"&gt;0.9.8 archive&lt;/a&gt; records focused and complete automated checks. Publication and evidence status are reported separately.&lt;/p&gt;</description></item><item><title>0.9.7 — Context contracts and bilingual site</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.7/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.7/</guid><description>&lt;p&gt;Released 2026-09-20. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.9.7"&gt;&lt;code&gt;v0.9.7&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="shipped"&gt;Shipped&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Candidate Context v3 is valid in Dashboard overview and Job detail; eligible Jobs can use Compare/Gate.&lt;/li&gt;&#10;&lt;li&gt;Historical Context v2 is recognized explicitly by protocol, including context-only pending Jobs.&lt;/li&gt;&#10;&lt;li&gt;Setup persists the complete installation identity. Settings only copies a reviewable exact update command and never executes registry packages.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter identities align at 0.9.7.&lt;/li&gt;&#10;&lt;li&gt;The bilingual product/documentation site covers all 19 tools, the Skill, Adapter, evaluation concepts, evidence boundaries and roadmap.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="verification"&gt;Verification&#10;&lt;/h2&gt;&#10;&lt;p&gt;The &lt;a href="https://github.com/istarwyh/harbor-self-evolving/blob/main/docs/releases/v0.9.7/README.md"&gt;0.9.7 archive&lt;/a&gt; records automated Node/Python/package/site checks, public package identities and release assets. Publication and evidence status are reported separately.&lt;/p&gt;</description></item><item><title>0.9.6 — Host-first execution</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.6/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.9.6/</guid><description>&lt;p&gt;Released 2026-09-19. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.9.6"&gt;&lt;code&gt;v0.9.6&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="shipped"&gt;Shipped&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Host is the default execution environment; Docker remains explicit opt-in.&lt;/li&gt;&#10;&lt;li&gt;Candidate Context records execution environment so Host and Docker are not silently comparable.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter package identities align at 0.9.6.&lt;/li&gt;&#10;&lt;li&gt;The normal registry setup path remains the supported installation.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="verification"&gt;Verification&#10;&lt;/h2&gt;&#10;&lt;p&gt;The archive records automated Node/Python/package checks and public release identities. Evidence types are kept separate from business acceptance.&lt;/p&gt;</description></item><item><title>19 Harbor Agent tools</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/reference/tools/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/reference/tools/</guid><description>&lt;p&gt;The Plugin exposes &lt;strong&gt;19 strict tools&lt;/strong&gt;: ten workspace/Job mutations enter DSH one-shot approval; nine operations are read-only or in-memory. If the Host lacks the approval seam, mutation tools fail closed.&lt;/p&gt;&#10;&lt;div class="td-table-scroll td-table-scroll--static"&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;Tool&lt;/th&gt;&#10; &lt;th scope="col"&gt;Purpose and minimum boundary&lt;/th&gt;&#10; &lt;th scope="col"&gt;Mode / result&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_candidate_snapshot&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Freeze one Cordis composition as an immutable Candidate Manifest.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes local artifact · approval.&lt;/strong&gt; Next: Dataset/Stack doctor or Context preview.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_model_binding&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Read the current DSH default provider/model/reasoning identity.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only/in-memory.&lt;/strong&gt; Returns a non-secret binding draft; never credentials.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_evolution_init&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Compile an accepted Dataset/Generator/Evaluator/Optimizer card into a non-overwriting Stack project.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes local artifacts · approval.&lt;/strong&gt; Does not run evaluation.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_evolution_doctor&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Validate Candidate, Dataset, Stack, optional Policy and execution architecture before cost.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Returns blocking diagnostics.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_quick_diagnostic_init&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Create one Query, minimal Host-model Candidate, runnable Task and non-promotion Evaluator.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes local artifacts · approval.&lt;/strong&gt; Wiring diagnostic only.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_session_diagnostic_preview&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Preview 1–10 recent completed top-level Sessions in exact current workspace.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only/in-memory.&lt;/strong&gt; Safe metadata + 15-minute owner-bound selection token.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_session_diagnostic_run&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Revalidate a selection token, freeze a private redacted Batch and run one Trial per Session.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Starts evaluation · writes · approval.&lt;/strong&gt; Historical, Gate N/A.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_dataset_validate&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Validate manifest, Task uniqueness, instructions, paths, sensitive metadata and source digest.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Does not repair or rewrite identity.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_context_preview&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Refresh Candidate manifest, preview Context v3 and find comparable baselines.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes refreshed manifest · approval.&lt;/strong&gt; No Job.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_eval_run&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Run strict diagnostic or promotion-eligible Candidate Job with frozen identities.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Starts evaluation · writes · approval.&lt;/strong&gt; Returns Job identity.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_eval_result&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Read summary, Job, Dataset, progress, Trial or governance view.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Bounded, recursively redacted, explicitly untrusted envelope.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_resolve_page_context&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Resolve exact-session opaque &lt;code&gt;@harbor&lt;/code&gt; page context and current revision.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Returns narrow metadata, typed refs and navigation action.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_get_evidence&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Read one Evidence item through an exact typed ancestry ref.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Never accepts a guessed path/id.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_propose_action&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Draft one expiring Workbench action from an explicit user request and fresh context.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;In-memory draft.&lt;/strong&gt; Never writes resources, starts a Job, Gates or deploys.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_evaluator_inspect&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Inspect active descriptor, implementation kind, ternary Criteria and bounded editable source.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Read-only.&lt;/strong&gt; Secret/local-path-shaped source is omitted.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_evaluator_update&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Replace one allowlisted source with optimistic concurrency and new Evaluator/Stack versions.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes local artifacts · approval.&lt;/strong&gt; No automatic evaluation or Gate.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_ground_truth_init&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Create a non-overwriting independent Ground Truth draft with explicit provenance.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes local artifact · approval.&lt;/strong&gt; Human/programmatic/consensus/model/external.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_evaluator_meta_evaluate&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Compare repeated observations with independent GT and emit ESF/SCE/RCR.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes report · approval.&lt;/strong&gt; Evaluator governance, not Candidate promotion.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;harbor_candidate_compare&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;Apply deterministic Promotion Gate to comparable Baseline and Candidate Jobs under Policy.&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;Writes Gate artifact · approval · promotion eligible.&lt;/strong&gt; Never deploys.&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h2 id="badges"&gt;Badge meanings&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Read-only:&lt;/strong&gt; does not modify workspace evaluation state.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Writes local artifacts:&lt;/strong&gt; creates or versions files in the bounded Harbor workspace.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Starts evaluation:&lt;/strong&gt; can incur runner/Judge/model work after approval.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Promotion eligible:&lt;/strong&gt; produces evidence or decisions usable by a promotion policy; Historical and quick diagnostic paths do not.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;Tool success means the declared operation completed—not that Candidate quality improved or production changed.&lt;/p&gt;</description></item><item><title>Evaluate recent Sessions</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/historical/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/historical/</guid><description>&lt;p&gt;Historical evaluation is the cold start when you have real Agent interactions but no curated Dataset. It is &lt;strong&gt;diagnostic&lt;/strong&gt;, not promotion evidence.&lt;/p&gt;&#10;&lt;img class="td-image" src="https://istarwyh.github.io/harbor-self-evolving/images/diagrams/historical-flow.svg" alt="Historical evaluation flow" title="Current Historical Context v2 flow" loading="lazy" decoding="async"&gt;&lt;h2 id="web"&gt;Web path&#10;&lt;/h2&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;Open &lt;strong&gt;Historical Sessions&lt;/strong&gt; in the DSH Harbor page.&lt;/li&gt;&#10;&lt;li&gt;Preview up to &lt;strong&gt;three&lt;/strong&gt; recently completed top-level Sessions visible to the current DSH workspace.&lt;/li&gt;&#10;&lt;li&gt;Review the frozen Judge identity, projected evidence fields, redaction policy and cost/data disclosure.&lt;/li&gt;&#10;&lt;li&gt;Select Sessions and confirm.&lt;/li&gt;&#10;&lt;li&gt;The Plugin writes a private redacted Batch, materializes one Harbor Trial per Session and starts a non-promotion Historical Job.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;The Agent-tool path can preview up to &lt;strong&gt;ten&lt;/strong&gt; Sessions, but only from the exact current working directory. Preview returns safe metadata and a short-lived owner-bound selection token—not raw Session ids or transcripts.&lt;/p&gt;</description></item><item><title>Install and start</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/start/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/start/</guid><description>&lt;h2 id="requirements"&gt;Requirements&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;A working DeepSeek Harness installation and the business Agent workspace you want to evaluate.&lt;/li&gt;&#10;&lt;li&gt;Node.js/npm for the DSH Plugin setup command.&lt;/li&gt;&#10;&lt;li&gt;Python environment support used by the installed Adapter.&lt;/li&gt;&#10;&lt;li&gt;Harbor &lt;code&gt;&amp;gt;=0.21,&amp;lt;0.22&lt;/code&gt;.&lt;/li&gt;&#10;&lt;li&gt;Docker only if you explicitly choose container execution; 0.10.3 defaults to Host.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="install"&gt;Install&#10;&lt;/h2&gt;&#10;&lt;p&gt;Run from the &lt;strong&gt;business Agent workspace&lt;/strong&gt;, not from this source repository:&lt;/p&gt;&#10;&lt;div class="td-code td-code--untitled" id="td-code-5090da87-fence-0" data-td-code data-td-code-auto-id&#10; data-td-language="bash" data-td-line-count="1"&gt;&#10; &lt;div class="td-code__viewport" id="td-code-5090da87-fence-0-viewport" data-td-code-viewport&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;npx --yes dsh-harbor-evolution@latest setup --project-root &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="nv"&gt;$PWD&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#10;&lt;/div&gt;&#10;&lt;p&gt;For a version-pinned installation, replace &lt;code&gt;latest&lt;/code&gt; with &lt;code&gt;0.10.3&lt;/code&gt;. Setup writes the selected DSH profile dependency, configures the Harbor project integration, installs the compatible Python Adapter and exposes the bundled &lt;code&gt;evolve-agent-with-harbor&lt;/code&gt; Skill. Follow the exact restart command printed by setup.&lt;/p&gt;</description></item><item><title>Native DSH evaluation workbench</title><link>https://istarwyh.github.io/harbor-self-evolving/product/dsh-plugin/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/product/dsh-plugin/</guid><description>&lt;p&gt;The npm package &lt;code&gt;dsh-harbor-evolution&lt;/code&gt; is more than a tool registry. It owns five layers:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;Setup lifecycle&lt;/strong&gt; — configure the selected DSH profile, install the Python Adapter, expose the bundled Skill and request a restart.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Agent orchestration&lt;/strong&gt; — register 19 strict tools with typed boundaries and approval semantics.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Native Web experience&lt;/strong&gt; — Workbench, Historical launcher, Context, Evidence, Artifacts, operations and Settings.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Host services&lt;/strong&gt; — bounded project/job reads, Session selection, model brokerage and background operation coordination.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Trust boundary&lt;/strong&gt; — redaction, same-origin browser checks, explicit confirmation and untrusted evidence envelopes.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;img class="td-image" src="https://istarwyh.github.io/harbor-self-evolving/images/diagrams/plugin-layers.svg" alt="DSH Plugin responsibility layers" title="Current contract · explanatory diagram" loading="lazy" decoding="async"&gt;&lt;h2 id="tools"&gt;Tool surface&#10;&lt;/h2&gt;&#10;&lt;p&gt;The Plugin registers &lt;strong&gt;19 tools&lt;/strong&gt;. Ten mutation-capable tools require one-shot DSH approval; nine are read-only or in-memory. The complete per-tool contract is in &lt;a href="https://istarwyh.github.io/harbor-self-evolving/docs/reference/tools/"&gt;Tool reference&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Why self-editing is not progress</title><link>https://istarwyh.github.io/harbor-self-evolving/book/01-why/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/01-why/</guid><description>&lt;p&gt;An Agent can rewrite its prompt, tools or Evaluator and still become worse. “It changed” is not “it improved.”&lt;/p&gt;&#10;&lt;p&gt;A trustworthy loop fixes the business cases, execution identity and scoring contract before the change. It separates the Optimizer that proposes a change from the Gate that judges promotion.&lt;/p&gt;&#10;&lt;h2 id="you-do"&gt;You do&#10;&lt;/h2&gt;&#10;&lt;p&gt;Name the business failure and the owner of the final deployment decision.&lt;/p&gt;&#10;&lt;h2 id="harbor-records"&gt;Harbor records&#10;&lt;/h2&gt;&#10;&lt;p&gt;The identities and evidence chain needed to revisit the claim.&lt;/p&gt;</description></item><item><title>Candidate evaluation and promotion</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/candidate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/candidate/</guid><description>&lt;p&gt;Candidate evaluation answers a narrower question than Historical diagnosis: &lt;strong&gt;did one controlled change improve a fixed business task under comparable evaluation conditions?&lt;/strong&gt;&lt;/p&gt;&#10;&lt;img class="td-image" src="https://istarwyh.github.io/harbor-self-evolving/images/diagrams/candidate-pipeline.svg" alt="Candidate evaluation pipeline" title="Current Candidate Context v3 pipeline" loading="lazy" decoding="async"&gt;&lt;h2 id="sequence"&gt;Strict sequence&#10;&lt;/h2&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;Snapshot Candidate&lt;/strong&gt; into an immutable manifest.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Validate Dataset&lt;/strong&gt; identity, task uniqueness, paths, sensitive metadata and source digest.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Doctor&lt;/strong&gt; Candidate, Dataset, Evaluation Stack and optional Promotion Policy.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Preview Context v3&lt;/strong&gt; and discover comparable baselines before spending on a Job.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Run diagnostic first&lt;/strong&gt; when the stack or provider path is new.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Change one controlled surface&lt;/strong&gt;—Agent or Evaluator, not both silently.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Run promotion-eligible regression&lt;/strong&gt; with fixed identities.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Inspect progress, Trial output, criterion evidence and governance impact.&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Compare and Gate&lt;/strong&gt; against a comparable baseline.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="comparability"&gt;Comparability&#10;&lt;/h2&gt;&#10;&lt;p&gt;A baseline is not comparable merely because it used the same repository. Candidate manifest, Dataset manifest, Evaluation Stack, Context, execution environment and relevant model/Judge identities must satisfy the contract. A changed Dataset digest, stack version, provider identity or runtime boundary can require a fresh baseline.&lt;/p&gt;</description></item><item><title>Define the four concepts</title><link>https://istarwyh.github.io/harbor-self-evolving/book/02-four-concepts/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/02-four-concepts/</guid><description>&lt;p&gt;Self-evolution is not “letting the model edit itself.” It is an inspectable learning chain: &lt;strong&gt;Dataset defines the problem, Generator produces results, Evaluator judges evidence, and Optimizer proposes one controlled change.&lt;/strong&gt; The Evaluator is itself tested through Meta-Evaluation.&lt;/p&gt;&#10;&lt;h2 id="four-roles"&gt;Meet the four roles&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Dataset&lt;/strong&gt; — business tasks and failure cases that answer what to evaluate.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Generator&lt;/strong&gt; — runs the Candidate and produces answers or Artifacts: who answers and how.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Evaluator&lt;/strong&gt; — applies criteria and Evidence requirements: what counts as good and whether evidence is sufficient.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Optimizer&lt;/strong&gt; — proposes one new-version change from failure evidence: what to change next.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;In an Agent system, each role is broader than a model. Generator includes prompts, Skills, tools and runtime; Evaluator includes rubric, Judge, parsing and validity rules; Optimizer may be a Coding Agent constrained by the project Skill.&lt;/p&gt;</description></item><item><title>Diagnose recent Sessions</title><link>https://istarwyh.github.io/harbor-self-evolving/book/03-diagnose/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/03-diagnose/</guid><description>&lt;p&gt;Historical evaluation lowers the cold-start cost. Preview bounded Session metadata, inspect what may reach the Judge, then confirm a non-promotion Job.&lt;/p&gt;&#10;&lt;h2 id="you-do"&gt;You do&#10;&lt;/h2&gt;&#10;&lt;p&gt;Select recent completed Sessions that reflect the failure, review exclusions and consent to the disclosed Judge/data boundary.&lt;/p&gt;&#10;&lt;h2 id="harbor-records"&gt;Harbor records&#10;&lt;/h2&gt;&#10;&lt;p&gt;A private redacted Batch, frozen Judge identity, one Trial per Session, criterion applicability, coverage and reason codes.&lt;/p&gt;&#10;&lt;h2 id="does-not-prove"&gt;This does not prove&#10;&lt;/h2&gt;&#10;&lt;p&gt;Historical scores are not comparable Candidate regression evidence and never go through Promotion Gate.&lt;/p&gt;</description></item><item><title>Evaluator governance and meta-evaluation</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/evaluator/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/workflows/evaluator/</guid><description>&lt;p&gt;Candidate quality and Evaluator quality are separate governance problems.&lt;/p&gt;&#10;&lt;h2 id="interface"&gt;Interface and inspection&#10;&lt;/h2&gt;&#10;&lt;p&gt;Formal Candidate Evaluators implement &lt;code&gt;harbor-dsh-evaluator/v2&lt;/code&gt;. A descriptor identifies implementation kind (&lt;code&gt;script&lt;/code&gt; or &lt;code&gt;llm-as-judge&lt;/code&gt;), ternary Criteria and a bounded allowlist of editable source files. Inspection omits secret-shaped and local-path-shaped values.&lt;/p&gt;&#10;&lt;h2 id="update"&gt;Controlled update&#10;&lt;/h2&gt;&#10;&lt;p&gt;An Evaluator update replaces one descriptor-authorized source file under optimistic concurrency. The caller supplies the expected digest and &lt;strong&gt;new Evaluator and Stack versions&lt;/strong&gt;. The update never runs evaluation or Gate automatically.&lt;/p&gt;</description></item><item><title>Workbench, context, and reviewed actions</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/plugin/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/plugin/</guid><description>&lt;p&gt;The Harbor page is injected into the existing DSH Web GUI. It reuses DSH locale, Session, conversation, composer, Settings and Tool View surfaces; it is not a second chat product or login system.&lt;/p&gt;&#10;&lt;h2 id="workbench"&gt;Object-first Workbench&#10;&lt;/h2&gt;&#10;&lt;p&gt;A Job opens into eight connected sections: Summary, Trials, Pipeline, Optimization, Compare/Gate, Evaluator/Rubric, Artifacts and Audit. The Pipeline tracks Candidate, Dataset, Integration, Renderer, Judge, Meta, Reporter, Optimizer and Gate separately so a wiring failure is not mislabeled as a low score.&lt;/p&gt;</description></item><item><title>Concepts and trustworthy scores</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/concepts/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/concepts/</guid><description>&lt;h2 id="four-concepts"&gt;Translate the four concepts into business language&#10;&lt;/h2&gt;&#10;&lt;div class="td-table-scroll td-table-scroll--static"&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;Concept&lt;/th&gt;&#10; &lt;th scope="col"&gt;Practical meaning&lt;/th&gt;&#10; &lt;th scope="col"&gt;Question answered in Harbor&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;strong&gt;Dataset&lt;/strong&gt;&lt;/td&gt;&#10; &lt;td&gt;Business cases with task instructions, inputs and expected evidence. It defines what to evaluate; it is not a raw dump of conversations.&lt;/td&gt;&#10; &lt;td&gt;Which capabilities must work, and which failures must be detected?&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;strong&gt;Generator&lt;/strong&gt;&lt;/td&gt;&#10; &lt;td&gt;The execution process that receives a Task and produces an answer or Artifact under a fixed Candidate, model and runtime. It may be an LLM Agent, script, workflow or other program.&lt;/td&gt;&#10; &lt;td&gt;Who answers, how is it run, and what does it produce?&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;strong&gt;Evaluator&lt;/strong&gt;&lt;/td&gt;&#10; &lt;td&gt;The criteria and evidence logic used to judge output quality. It may be a deterministic script or &lt;code&gt;llm-as-judge&lt;/code&gt;.&lt;/td&gt;&#10; &lt;td&gt;What counts as good, and is the evidence sufficient to decide?&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;strong&gt;Optimizer&lt;/strong&gt;&lt;/td&gt;&#10; &lt;td&gt;The role that reads Dataset-level results and Trial evidence, then proposes one constrained, reviewable change. It cannot declare success by itself.&lt;/td&gt;&#10; &lt;td&gt;What should change, and how do we avoid changing too much at once?&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;p&gt;Harbor compiles these user-facing concepts into a stricter Evaluation Stack with Integration, Renderer, Judge, Contract, Reporter, Policy, Context and Gate roles. Users describe the business problem first instead of filling in an internal architecture questionnaire.&lt;/p&gt;</description></item><item><title>Turn badcases into a Dataset</title><link>https://istarwyh.github.io/harbor-self-evolving/book/04-curate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/04-curate/</guid><description>&lt;p&gt;A Dataset is curated business intent, not a dump of private transcripts. Abstract the failure, preserve the relevant constraint and create an independently reviewable expected behavior.&lt;/p&gt;&#10;&lt;h2 id="you-do"&gt;You do&#10;&lt;/h2&gt;&#10;&lt;p&gt;Deduplicate failure patterns, remove private identifiers, separate tuning from holdout and review every instruction file.&lt;/p&gt;&#10;&lt;h2 id="harbor-records"&gt;Harbor records&#10;&lt;/h2&gt;&#10;&lt;p&gt;Task ids, paths, instructions, sensitive-metadata checks and immutable source digest.&lt;/p&gt;&#10;&lt;h2 id="does-not-prove"&gt;This does not prove&#10;&lt;/h2&gt;&#10;&lt;p&gt;A clean Dataset does not prove the population is complete or that one metric captures all business risk.&lt;/p&gt;</description></item><item><title>Architecture and trust boundaries</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/architecture/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/architecture/</guid><description>&lt;img class="td-image" src="https://istarwyh.github.io/harbor-self-evolving/images/diagrams/system-architecture.svg" alt="Harbor Self-Evolving architecture" title="Current 0.9.7 contract and explicit safety boundaries" loading="lazy" decoding="async"&gt;&lt;h2 id="roles"&gt;Three product roles&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Plugin:&lt;/strong&gt; the user-facing DSH integration and permission boundary.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Skill:&lt;/strong&gt; the workflow policy that chooses the smallest safe evaluation path.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Adapter:&lt;/strong&gt; the Harbor runtime bridge that materializes Jobs, Trials, Evidence and Context.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;p&gt;The &lt;strong&gt;Gate&lt;/strong&gt; remains a separate deterministic policy function; it is not part of the Optimizer and has no deployment capability.&lt;/p&gt;&#10;&lt;h2 id="stack"&gt;Eight-role Evaluation Stack&#10;&lt;/h2&gt;&#10;&lt;p&gt;Generator, Integration, Renderer, Evaluator/Judge, Contract, Reporter, Optimizer and Policy/Gate separate execution, observation, interpretation, reporting, change proposal and promotion. This avoids a single opaque prompt both changing the system and grading itself.&lt;/p&gt;</description></item><item><title>Run one controlled regression</title><link>https://istarwyh.github.io/harbor-self-evolving/book/05-regress/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/05-regress/</guid><description>&lt;p&gt;Snapshot the Candidate, validate the Dataset, doctor the Stack, preview Context and run diagnostic mode before promotion-eligible work when the path is new.&lt;/p&gt;&#10;&lt;h2 id="you-do"&gt;You do&#10;&lt;/h2&gt;&#10;&lt;p&gt;State one hypothesis and one allowed change. Keep Dataset, criteria, provider and runtime fixed unless the change deliberately creates a new baseline.&lt;/p&gt;&#10;&lt;h2 id="harbor-records"&gt;Harbor records&#10;&lt;/h2&gt;&#10;&lt;p&gt;Manifest digests, Context v3, model/Judge identities, Trial output, criterion Evidence, validity, coverage and governance impact.&lt;/p&gt;</description></item><item><title>Read the Gate and hand off</title><link>https://istarwyh.github.io/harbor-self-evolving/book/06-gate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/book/06-gate/</guid><description>&lt;p&gt;Compare the Candidate Job with a comparable baseline under an explicit Promotion Policy. Read the overall decision together with regressions, coverage and invalid criteria.&lt;/p&gt;&#10;&lt;h2 id="you-do"&gt;You do&#10;&lt;/h2&gt;&#10;&lt;p&gt;Review representative evidence, confirm the policy matches business risk and decide whether external CI/CD should consume the recommendation.&lt;/p&gt;&#10;&lt;h2 id="harbor-records"&gt;Harbor records&#10;&lt;/h2&gt;&#10;&lt;p&gt;Baseline/Candidate Job identities, Policy identity, comparison details and deterministic Gate artifact.&lt;/p&gt;&#10;&lt;h2 id="does-not-prove"&gt;This does not prove&#10;&lt;/h2&gt;&#10;&lt;p&gt;&lt;code&gt;PROMOTE&lt;/code&gt; is not a production deployment, Champion mutation or universal quality guarantee. It is a recommendation for the frozen evidence and policy.&lt;/p&gt;</description></item><item><title>Security, privacy, and execution boundaries</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/security/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/security/</guid><description>&lt;p&gt;Harbor Self-Evolving narrows high-impact operations, but it is not a general sandbox or multi-user authorization system.&lt;/p&gt;&#10;&lt;img class="td-image" src="https://istarwyh.github.io/harbor-self-evolving/images/diagrams/trust-boundaries.svg" alt="Harbor trust boundaries" title="Browser, Session, evidence, Broker, Host and deployment boundaries" loading="lazy" decoding="async"&gt;&lt;h2 id="scope"&gt;Session and project scope&#10;&lt;/h2&gt;&#10;&lt;p&gt;Agent tools derive project root from the calling Session&amp;rsquo;s absolute cwd. Web tokens bind Session and project. Candidate/private context and journal paths apply symlink and no-follow defenses where implemented. General lexical path containment is not a universal physical-filesystem guarantee; stronger realpath/openat containment remains roadmap work.&lt;/p&gt;</description></item><item><title>Troubleshooting</title><link>https://istarwyh.github.io/harbor-self-evolving/docs/troubleshooting/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/docs/troubleshooting/</guid><description>&lt;h2 id="missing-page"&gt;Harbor page is missing&#10;&lt;/h2&gt;&#10;&lt;p&gt;Confirm setup changed the profile DSH actually runs, restart using the printed command, and verify the dependency is an exact registry version rather than &lt;code&gt;link:&lt;/code&gt;. Check that both Harbor plugins and the bundled Skill are present.&lt;/p&gt;&#10;&lt;h2 id="entrypoints"&gt;Plugin loads but evaluation commands fail&#10;&lt;/h2&gt;&#10;&lt;p&gt;Check the managed Python environment and &lt;code&gt;harbor plugins list&lt;/code&gt;. Normal installation must include both &lt;code&gt;dsh-evolution&lt;/code&gt; and &lt;code&gt;dsh-historical-evaluation&lt;/code&gt;; adding the npm source directory alone is incomplete.&lt;/p&gt;</description></item><item><title>Evidence before optimization</title><link>https://istarwyh.github.io/harbor-self-evolving/blog/evidence-before-optimization/</link><pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/blog/evidence-before-optimization/</guid><description>&lt;p&gt;The fastest way to make self-evolution untrustworthy is to let the same opaque loop choose cases, rewrite itself and declare victory.&lt;/p&gt;&#10;&lt;p&gt;Harbor reverses that order. First freeze what is being tested and how. Then inspect whether evidence is valid and how much of the population it covers. Only then propose one change and compare it against a baseline whose identities still match.&lt;/p&gt;&#10;&lt;p&gt;This is why the Optimizer and Gate are separate, why Historical Sessions are diagnosis rather than promotion, and why a raw reward never silently becomes a valid score.&lt;/p&gt;</description></item><item><title>Host first, with honest boundaries</title><link>https://istarwyh.github.io/harbor-self-evolving/blog/host-first-honest-boundaries/</link><pubDate>Sat, 19 Sep 2026 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/blog/host-first-honest-boundaries/</guid><description>&lt;p&gt;Requiring Docker before a user can diagnose an Agent creates friction. Pretending direct execution is isolated creates risk. Version 0.9.6 chooses Host as the default and names the boundary precisely.&lt;/p&gt;&#10;&lt;p&gt;Host mode runs with the current user&amp;rsquo;s permissions and environment. It supplies no container isolation, user switching, network policy or CPU/memory limits. Docker remains explicit opt-in when that boundary is required.&lt;/p&gt;&#10;&lt;p&gt;Execution environment becomes part of Context identity. A result produced on Host is not silently compared with Docker. Lower friction does not require weaker evidence—as long as the runtime difference remains visible.&lt;/p&gt;</description></item><item><title>0.10.3 — actionable project-directory recovery</title><link>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.3/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://istarwyh.github.io/harbor-self-evolving/releases/0.10.3/</guid><description>&lt;p&gt;Released on 2026-09-27. Formal source tag: &lt;a href="https://github.com/istarwyh/harbor-self-evolving/releases/tag/v0.10.3"&gt;&lt;code&gt;v0.10.3&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#10;&lt;h2 id="what-changed"&gt;What changed&#10;&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;Directory-read denials now use the stable &lt;code&gt;HARBOR_PROJECT_ROOT_ACCESS_DENIED&lt;/code&gt; code without exposing a local path.&lt;/li&gt;&#10;&lt;li&gt;The Workbench explains that the failure is not a network issue, provides macOS recovery and alternative project-location steps, keeps technical details collapsed, and can copy the recovery instructions.&lt;/li&gt;&#10;&lt;li&gt;Classification is limited to directory reads so ordinary &lt;code&gt;EACCES&lt;/code&gt; file operations are not mislabeled.&lt;/li&gt;&#10;&lt;li&gt;Source-development setup explicitly includes locked dev dependencies even when the Host runs with &lt;code&gt;NODE_ENV=production&lt;/code&gt;.&lt;/li&gt;&#10;&lt;li&gt;Plugin, Skill and Python Adapter identities align at 0.10.3.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="evidence-boundary"&gt;Evidence boundary&#10;&lt;/h2&gt;&#10;&lt;p&gt;The &lt;a href="https://github.com/istarwyh/harbor-self-evolving/blob/main/docs/releases/v0.10.3/README.md"&gt;0.10.3 archive&lt;/a&gt; records targeted service/client/setup checks, the generated client bundle, source setup and matched public npm/PyPI artifacts. It does not claim complete cross-platform TCC/ACL coverage or fix desktop Host signing and permission declarations.&lt;/p&gt;</description></item></channel></rss>