Skip to content

refactor: rename nori-acp to nori-harness (slice H finale)#532

Open
CSRessel wants to merge 2 commits into
refactor/harness-session-runtimefrom
refactor/rename-nori-harness
Open

refactor: rename nori-acp to nori-harness (slice H finale)#532
CSRessel wants to merge 2 commits into
refactor/harness-session-runtimefrom
refactor/rename-nori-harness

Conversation

@CSRessel

@CSRessel CSRessel commented Jul 4, 2026

Copy link
Copy Markdown
Collaborator

Slice H finale of the crate-layering refactor (design doc). Stacked on #531 (slice H2, session runtime).

What

Renames the nori-acp crate to nori-harness — directory acp/harness/, package + lib name, all workspace deps, use-paths, and docs path references.

Why now

Rename-on-adoption (design doc §5 convention): after G2 moved the low-level ACP hosting machinery out to nori-acp-host and H2 moved session orchestration in (the runtime module), what remains is the Layer-1 headless harness the design names nori-harness — transcript recording, session reducer, undo, worktrees, hooks, session runtime. The old name described a responsibility the crate no longer owns exclusively.

Deliberately unchanged

  • The on-disk log prefix nori-acp (~/.nori/cli/log/nori-acp.YYYY-MM-DD.log) — a runtime artifact external tooling and debugging docs grep for.
  • The nori-acp-host crate (correctly named — it hosts ACP agents).

One real find

The tui-pty-e2e tracing filter directive nori_acp=debug had been covering nori_acp_host targets only via tracing's string-prefix matching. After the rename, the exit-cleanup tests (which grep acp-host's "agent spawned (pid)" debug line) went red until the filter named both crates explicitly — it now does, so the coverage no longer depends on a name-prefix coincidence.

Validation

  • Full workspace suite green; tui-pty-e2e green (23 suites, including the exit-cleanup suite above).
  • elizacp close-the-loop TUI drive: prompt → response rendered → prompt returns.
  • just fmt, just fix -p nori-harness clean.

Adopt the Layer-1 name from docs/specs/crate-layering.md §3. With the
low-level ACP hosting machinery extracted to nori-acp-host (slice G2) and
session orchestration moved into the crate's runtime module (slice H2),
this crate is the headless harness — transcript recording, session
reducer, undo, worktrees, hooks, session runtime — not "the ACP crate".

- directory acp/ → harness/, package nori-acp → nori-harness,
  lib nori_acp → nori_harness; all workspace deps and use-paths rewired
- docs.md path references nori-rs/acp/ → nori-rs/harness/
- deliberately unchanged: the on-disk log prefix nori-acp
  (~/.nori/cli/log/nori-acp.*.log) — a runtime artifact external tooling
  greps for — and the nori-acp-host crate name
- tui-pty-e2e tracing filter now names nori_harness and nori_acp_host
  explicitly; the old nori_acp directive had covered nori_acp_host only
  via string-prefix matching, and the exit-cleanup tests grep the
  acp-host "agent spawned (pid)" debug line

Validation: full workspace suite green; tui-pty-e2e green (23 suites);
elizacp close-the-loop TUI drive green; just fmt + just fix clean.

Part of the crate-layering refactor (docs/specs/crate-layering.md).
@cursor

cursor Bot commented Jul 4, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

Also add nori-acp-host and nori-config to the CI test list — they were
never added when extracted, so their suites (106 tests in acp-host) did
not run in CI at all; only the workspace-local battery covered them.
🤖 Generated with [Nori](https://noriagentic.com)

Co-Authored-By: Nori <contact@tilework.tech>
@cursor

cursor Bot commented Jul 4, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

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