[SUPERSEDED][AP0] Make prolog-rlm the reference harness with DeepSeek Harness IDE #231

Closed
opened 2026-08-26 08:51:32 +00:00 by lost-rob0t · 2 comments
lost-rob0t commented 2026-08-26 08:51:32 +00:00 (Migrated from github.com)

Goal

Make prolog-rlm the only bundled reference harness while preserving prolog-rlm as a reusable library. Use the official DeepSeek Harness (DSH) as the reference IDE/workspace shell without transferring semantic/runtime ownership to DSH.

Related: #184, #219.

Locked ownership boundary

Prolog-RLM remains authoritative for:

  • context compilation and projection;
  • provider/model calls;
  • tool discovery, selection, invocation, capabilities, authority and durable effects;
  • conversations/history/memory;
  • recursion/subagents;
  • project/source KB and freshness;
  • retrieval/embeddings;
  • planning/spec/verification/repair;
  • usage accounting and canonical status.

DeepSeek Harness is presentation/workspace only. It may render sessions, editor/workspace state, diffs, approvals, questions, subagents, verification, traces and usage, and forward explicit frontend commands. It must not become a second agent loop, context compiler, provider path, compactor, tool runtime, history authority, or verifier.

Use prolog_agent_ui_v1 as the canonical frontend boundary. Extend/version that boundary if the IDE needs semantics it cannot currently express; do not import runtime internals into the DSH adapter.

CLI surfaces

The bundled harness remains prolog-rlm:

prolog-rlm run "task..."     # one-shot/headless
prolog-rlm ide .              # reference DSH IDE over canonical RLM runtime

Existing commands remain supported.

The IDE status surface must show canonical runtime telemetry including at least:

MODEL · in TOKENS · out TOKENS · ctx PERCENT

If context-window capacity is unknown, render ctx ? rather than guessing.

Library boundary

All reusable behavior required by the CLI/IDE must remain independently callable as public library modules/APIs. rlm_cli may compose them into an application; core modules must not import CLI/DSH presentation code or gain ambient coding authority.

No nested AgentProlog product harness in this repository. Other harnesses/editors remain free to consume the same public library/protocol.

First vertical slice

  • Add TDD coverage for explicit one-shot run command while preserving existing CLI commands.
  • Add a pure canonical status/usage projection (model, input tokens, output tokens, context percentage/unknown) reusable by CLI and frontend adapters.
  • Define/test the ide CLI launch contract separately from DSH process mechanics.
  • Wire DSH through prolog_agent_ui_v1; no Harness-specific semantic API.
  • Disable/replace only exact DSH seams that would otherwise own agent semantics.
  • Add end-to-end proof that one DSH user turn produces one canonical Prolog-RLM turn/provider trajectory and that DSH only projects it.
  • Dogfood gate: point the IDE at prolog-rlm itself and complete an inspect/edit/test/verify task through canonical authority.

Non-goals

  • no DSH core fork;
  • no DSH-owned prompt/context compiler;
  • no DSH-owned provider/tool/subagent/compaction semantics;
  • no second config/history authority;
  • no broad UI amputation to make integration easier;
  • no moving application semantics into renderer code.
## Goal Make `prolog-rlm` the only bundled reference harness while preserving `prolog-rlm` as a reusable library. Use the official DeepSeek Harness (DSH) as the reference IDE/workspace shell **without transferring semantic/runtime ownership to DSH**. Related: #184, #219. ## Locked ownership boundary Prolog-RLM remains authoritative for: - context compilation and projection; - provider/model calls; - tool discovery, selection, invocation, capabilities, authority and durable effects; - conversations/history/memory; - recursion/subagents; - project/source KB and freshness; - retrieval/embeddings; - planning/spec/verification/repair; - usage accounting and canonical status. DeepSeek Harness is presentation/workspace only. It may render sessions, editor/workspace state, diffs, approvals, questions, subagents, verification, traces and usage, and forward explicit frontend commands. It must not become a second agent loop, context compiler, provider path, compactor, tool runtime, history authority, or verifier. Use `prolog_agent_ui_v1` as the canonical frontend boundary. Extend/version that boundary if the IDE needs semantics it cannot currently express; do not import runtime internals into the DSH adapter. ## CLI surfaces The bundled harness remains `prolog-rlm`: ```sh prolog-rlm run "task..." # one-shot/headless prolog-rlm ide . # reference DSH IDE over canonical RLM runtime ``` Existing commands remain supported. The IDE status surface must show canonical runtime telemetry including at least: ```text MODEL · in TOKENS · out TOKENS · ctx PERCENT ``` If context-window capacity is unknown, render `ctx ?` rather than guessing. ## Library boundary All reusable behavior required by the CLI/IDE must remain independently callable as public library modules/APIs. `rlm_cli` may compose them into an application; core modules must not import CLI/DSH presentation code or gain ambient coding authority. No nested AgentProlog product harness in this repository. Other harnesses/editors remain free to consume the same public library/protocol. ## First vertical slice - [ ] Add TDD coverage for explicit one-shot `run` command while preserving existing CLI commands. - [ ] Add a pure canonical status/usage projection (model, input tokens, output tokens, context percentage/unknown) reusable by CLI and frontend adapters. - [ ] Define/test the `ide` CLI launch contract separately from DSH process mechanics. - [ ] Wire DSH through `prolog_agent_ui_v1`; no Harness-specific semantic API. - [ ] Disable/replace only exact DSH seams that would otherwise own agent semantics. - [ ] Add end-to-end proof that one DSH user turn produces one canonical Prolog-RLM turn/provider trajectory and that DSH only projects it. - [ ] Dogfood gate: point the IDE at `prolog-rlm` itself and complete an inspect/edit/test/verify task through canonical authority. ## Non-goals - no DSH core fork; - no DSH-owned prompt/context compiler; - no DSH-owned provider/tool/subagent/compaction semantics; - no second config/history authority; - no broad UI amputation to make integration easier; - no moving application semantics into renderer code.
lost-rob0t commented 2026-08-27 04:25:19 +00:00 (Migrated from github.com)

Salvage complete.

Merged #263 onto current main, preserving the reusable runtime-status contract:

  • model identity;
  • prompt/input + completion/output token counters;
  • explicit current-context occupancy/window;
  • derived context percent only from that explicit observation;
  • ctx ? when capacity is unknown.

The bundled DSH/reference-IDE and rlm_cli_app/ide/run ownership from this issue is not being carried forward because the repository has since standardized on standalone AgentProlog as the downstream product (#141), with DSH integration remaining a downstream/plugin concern (#184).

Closing this AP0 issue as superseded rather than keeping a stale product boundary alive.

Salvage complete. Merged #263 onto current `main`, preserving the reusable runtime-status contract: - model identity; - prompt/input + completion/output token counters; - explicit current-context occupancy/window; - derived context percent only from that explicit observation; - `ctx ?` when capacity is unknown. The bundled DSH/reference-IDE and `rlm_cli_app`/`ide`/`run` ownership from this issue is not being carried forward because the repository has since standardized on standalone AgentProlog as the downstream product (#141), with DSH integration remaining a downstream/plugin concern (#184). Closing this AP0 issue as superseded rather than keeping a stale product boundary alive.
lost-rob0t commented 2026-08-27 14:24:59 +00:00 (Migrated from github.com)

Architecture correction — supersedes the closure rationale above

The earlier closure rationale in this issue said the repository had standardized on standalone/downstream AgentProlog. The user explicitly reversed that decision on 2026-08-27 in #184.

Current authority is #184:

  • lost-rob0t/prolog-rlm ships the reusable runtime and the bundled AgentProlog application/harness;
  • reusable prolog/ remains independently consumable and must not import product/frontend layers;
  • PR #132 is the active implementation base;
  • the existing prolog_agent_ui_v1 remains the canonical renderer-independent boundary and is now consumed by the bundled harness as well as external clients;
  • useful prior Harness work is salvaged here; there is no separate downstream product track to preserve.

This issue can remain closed because #184 now owns the migration. Its generic runtime-status work remains valid; only the old standalone-product ownership rationale is superseded.

## Architecture correction — supersedes the closure rationale above The earlier closure rationale in this issue said the repository had standardized on standalone/downstream AgentProlog. The user explicitly reversed that decision on 2026-08-27 in #184. Current authority is #184: - `lost-rob0t/prolog-rlm` ships the reusable runtime **and** the bundled AgentProlog application/harness; - reusable `prolog/` remains independently consumable and must not import product/frontend layers; - PR #132 is the active implementation base; - the existing `prolog_agent_ui_v1` remains the canonical renderer-independent boundary and is now consumed by the bundled harness as well as external clients; - useful prior Harness work is salvaged here; there is no separate downstream product track to preserve. This issue can remain closed because #184 now owns the migration. Its generic runtime-status work remains valid; only the old standalone-product ownership rationale is superseded.
nsaspy changed title from [AP0] Make prolog-rlm the reference harness with DeepSeek Harness IDE to [SUPERSEDED][AP0] Make prolog-rlm the reference harness with DeepSeek Harness IDE 2026-09-08 01:29:00 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/prolog-rlm#231
No description provided.