Skip to content

Add Muse Code Harness - #444

Merged
JacobStephens2 merged 4 commits into
issue-432from
issue-438
Oct 6, 2026
Merged

JacobStephens2 merged 4 commits into
issue-432from
issue-438

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Summary

harness muse / [harness.muse] / Setup
  validate Effort locally
  validate Model from cached catalog, else a minimal call
  muse exec --json --yolo (null stdin, MUSE_NO_AUTO_UPDATE=1)
    load the Factory skill; warn if its load is absent
  after exit: read the session log's last reply and usage
    missing/unreadable log: last stream reply, no usage

Adds Muse Code through the registered Harness adapter, including Resume, linked Factory skills, progress, Model/Effort validation, and Setup's muse-spark-1.3 proposal. Documents Muse's contributor default and unattended invocation in ADR 0013.

Closes #438

Evidence

  • Before: cargo test --test muse_sessions rejected harness muse.
    After: all 10 Muse scenarios pass, covering invocation, validation before work, Setup, Resume, failure, missing skill warnings, native logs, and Architecture review's last reply.
  • Before: the Spec review found that fallback coverage emitted only one stream reply. Temporarily disabling reply separation now makes the Architecture review scenario fail.
    After: the fake emits multiple replies with Muse's model boundary; the scenario and recorded-stream regression pass with the parser restored.
  • Before: Muse's native skill result and retained log required verification.
    After: a minimal Muse 1.4.2 probe confirmed read_skill detection, session id, last reply, and token usage; an offline probe confirmed XDG data-directory handling.
  • Final checks: cargo test --quiet (1107 passed, 0 failed), cargo clippy --all-targets -- -D warnings, and cargo fmt --check pass. UPDATE_PROMPTS=1 cargo test --bin thirdshift prompts_page passes with no generated changes.

Test seams

  • Scenario tests at the CLI boundary using the fake Muse executable and its native session log.
  • Pure parsing tests for the Model catalog, retained session log, and stream events.
  • Setup's existing Outside seam for validation refusal and retry.

Review with thirdshift-code-review against issue-432 at 7136bcd: Standards reported no findings; Spec confirmed the fallback coverage finding is addressed, with no remaining findings. The latest base is merged, preserving its process-tree stopping.

Merge Danger

Door: two-way

Reverting removes the new Harness; users configured for Muse would need to choose another Harness.

Blast Radius: Sessions

Shared changes pass the prompt to the adapter's stream and emit its warnings after exit. Setup now lists installed Harnesses. Missing or unreadable Muse logs retain the stream's last reply without usage.

Unaddressed findings

Standards

None; the review reported no confirmed findings.

Spec

None; the last-reply fallback coverage finding was addressed.

Built with codex · gpt-6.1-sol · xhigh

# Conflicts:
#	src/harness.rs
#	tests/fakes.rs
#	tests/support/fakes.rs
Preserve agy's catalog validation and instruction fallback alongside Muse's skill loading and final-reply recovery. Combine both Harnesses in registration, Setup, User config, documentation and scenario fakes.

Validated with cargo check --locked --all-targets, cargo test --locked --quiet (1127 passed), cargo clippy --locked --all-targets -- -D warnings, cargo fmt --check and git diff --check.
@JacobStephens2
JacobStephens2 merged commit 45de69e into issue-432 Oct 6, 2026
13 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-438 branch October 6, 2026 17:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant