Skip to content

Project discussions: author and answerable on user messages, attributed model input, ACP meta - #5

Merged
TheFabFab merged 12 commits into
documentor-pgfrom
documentor-discussions
Oct 12, 2026
Merged

TheFabFab merged 12 commits into
documentor-pgfrom
documentor-discussions

Conversation

@TheFabFab

Copy link
Copy Markdown
Owner

Six additive changes DocuMentor's project discussions rely on (documentor/FORK.md has a row for each). A client that sends none of the new fields gets today's behaviour, so the released image runs the currently pinned DocuMentor unchanged.

  • schema/v1/session.ts: a user message's info carries author?: {id, name} and answerable?: boolean.
  • session/prompt.ts + session/message-v2.ts: an unanswerable message is context, never the message a turn answers; prompt with answerable: false stores and returns; a session with nothing answerable resumes without a step. In a session whose metadata is { documentor: { kind: "discussion" } }, the model input prefixes each authored human message with Name: .
  • session/compaction.ts: in a discussion, the summary input prefixes each authored message with Name: ; prune and the retained-tail count skip side remarks (answerable: false).
  • acp/service.ts: _meta.documentor = { author, answerable, noReply, system, partMetadata } on session/prompt, _meta.documentor.metadata on session/new; a stored-only prompt answers end_turn without waiting for an idle event that never comes.
  • acp/event.ts: replayed user_message_chunk carries _meta.opencode with the author and the part metadata.
  • sdk/js/src/v2/gen: regenerated; session.prompt and session.promptAsync forward author and answerable.

Verified locally: the documentor: cases in the touched test files (event, service-session, prompt, message-v2, compaction; all pass in full), bun turbo typecheck, check:generated, and binary-smoke.sh on a --single build.

Design: TheFabFab/KPG docs/superpowers/specs/2026-10-12-project-discussions-design.md.

🤖 Generated with Claude Code

TheFabFab and others added 12 commits October 12, 2026 10:08
…swerable

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…loop

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…sage a turn answers

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…aid what

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ystem text and session metadata

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…art metadata

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…md rows

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The replay meta's doc comment also names what messageId and parentId are
on a replayed user message.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

This PR doesn't fully meet our contributing guidelines and PR template.

What needs to be fixed:

  • PR description is missing required template sections. Please use the PR template.

Please edit this PR description to address the above within 72 hours, or it will be automatically closed.

If you believe this was flagged incorrectly, please let a maintainer know.

@github-actions

Copy link
Copy Markdown

Hey! Your PR title Project discussions: author and answerable on user messages, attributed model input, ACP meta doesn't follow conventional commit format.

Please update it to start with one of:

  • feat: or feat(scope): new feature
  • fix: or fix(scope): bug fix
  • docs: or docs(scope): documentation changes
  • chore: or chore(scope): maintenance tasks
  • refactor: or refactor(scope): code refactoring
  • test: or test(scope): adding or updating tests

Where scope is the package name (e.g., app, desktop, opencode).

See CONTRIBUTING.md for details.

@TheFabFab
TheFabFab merged commit 24a15c8 into documentor-pg Oct 12, 2026
8 of 14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant