githubnext/chopinPublic

Let's compose rich plans together

Jev conversation-to-document workflow #241

ClosedMaggieAppletonclosed 156 commits intomainfromrefs/pull/241/head
  1. MA

    Ordinary chat can create sourced decision cards and shared options. People explicitly **Save** a choice; a scoped Planner job then writes that saved decision into the document. Any writer can add multiple options to an open card. Existing saved custom answers remain readable.

    **Review status:** all ten incoming PRs (#242–#251) are merged into this prototype. All 14 replacement PRs are published and independently reviewed; their complete Git tree exactly matches this integrated PR. All 14 PRs are ready for review with passing current-head validation, browser, and container checks. Keep this integration PR in draft as the complete-feature reference; review the replacement stack below.

    ### Review and merge order

    | Order | PR | Review boundary | | --- | --- | --- | | 1 | [#252](https://github.com/githubnext/chopin/pull/252) | Bounded state, identities and source ranges | | 2 | [#253](https://github.com/githubnext/chopin/pull/253) | Event replay and restoration | | 3 | [#255](https://github.com/githubnext/chopin/pull/255) | Decision records and shared drafts | | 4 | [#256](https://github.com/githubnext/chopin/pull/256) | Exact question context | | 5 | [#257](https://github.com/githubnext/chopin/pull/257) | Interpretation policy and complete option lists | | 6 | [#258](https://github.com/githubnext/chopin/pull/258) | Jev adapter and checked judgments | | 7 | [#259](https://github.com/githubnext/chopin/pull/259) | Durable follow-up work | | 8 | [#260](https://github.com/githubnext/chopin/pull/260) | Storage and research recovery records | | 9 | [#261](https://github.com/githubnext/chopin/pull/261) | Document projections | | 10 | [#262](https://github.com/githubnext/chopin/pull/262) | Decision services and fenced commits | | 11 | [#263](https://github.com/githubnext/chopin/pull/263) | Conversation processor and runtime | | 12 | [#264](https://github.com/githubnext/chopin/pull/264) | Research execution and placement recovery | | 13 | [#265](https://github.com/githubnext/chopin/pull/265) | Chat, decision controls and feature activation | | 14 | [#266](https://github.com/githubnext/chopin/pull/266) | System verification and review guides |

    Each PR is based on the preceding layer. Review bottom to top and keep the stack synchronized with `gh stack` as layers land. The service, runtime and UI layers remain substantial; their descriptions separate production changes from test/support volume. Nothing in this stack has been merged into main.

    ### What changes for users

    - Chat moves to the left; desktop panes remain side by side down to 500px. - Jev interprets ordinary discussion using exact, attributed excerpts. Open cards, a title/goal, refinements, and advisory option suggestions may appear before Save. - Shared decision cards support repeated option additions, Save, Reopen, and Discard. Saving writes prose grounded in the current selected choice and rationale. - Evidence links connect cards, chat, and document prose. People can attach missed excerpts and inspect analysis through explicit debugging buttons. - Optional research offers require human acceptance before work starts, then use Chopin’s existing child-document workflow.

    Explicit `@chopin` editing, collaborative documents, and ordinary research remain existing Chopin foundations. Conversation analysis remains opt-in with `CONVERSATION_PLAN=on`.

    ### Current interface

    Real Chromium capture with controlled Jev/Planner fixtures: Chat on the left, exact source highlighting, a shared option selected, and explicit human Save. The document opening was seeded; this demonstrates the interface, not live model quality.

    ![Current Jev interface: sourced shared options with an explicit human Save](https://github.com/user-attachments/assets/dc10e4a3-3b3d-4253-b404-b3912e74bff1)

    ### Scope and cleanup

    Against pinned main `3e57e40e`, the cleaned tree adds **94,627 lines** across 862 changed files: 25,534 application/package lines, 68,200 tests and test infrastructure, 761 documentation, and 132 other lines. These are textual additions, including comments and whitespace. The classification now counts 592 lines of confirmed test-only drivers and helpers with test infrastructure, rather than application code.

    The cleanup removes sentence-specific recovery rules, the unused unkeyed option route, artificial callback/read-order tests, vacuous assertions, and obsolete documentation. It retains the keyed shared-option route and meaningful durability, permission, recovery, and multi-user tests. It also fixes full-history processing cost, reserved option capacity, duplicate option IDs clearing selections, partial option-list admission, stale marker geometry after card collapse, and recovery after exhausted research-link lookups. The last fix retries an existing read and cannot start more research. Relative to the branch with all ten incoming fixes, cleanup is **+1,823/−4,604 lines** (net −2,781).

    ### Verification

    - Final tree `b46f3d76` (identical to integrated head `a4ad84ef`): **3,551 unit tests**, with three PostgreSQL-only skips; **109 component Chromium tests**; **331 application Chromium tests in GitHub CI**; **79 sealed Jev Chromium tests**. Browser pass runs report no retries. Types, repository checks, and build pass; all three integrated-PR GitHub checks are green. - **72 real PostgreSQL contract/lifecycle tests** passed on the unchanged server implementation. The extracted layers additionally pass their focused checks; the complete local stack and this PR share Git tree `66dd073c962973790e2d099ea9a7317f789298e6`. - A local application run had one mobile comment-sheet drag failure (330/331). That unchanged case passed in isolation and in the complete GitHub run; its intermittent cause is unconfirmed. No production guard or assertion was weakened to obtain the passing runs. - Controlled provider fixtures exercise actual authorization, persistence, sockets, and UI. Live model quality across paraphrases remains unverified. All 14 replacement PRs pass all three current-head CI jobs. Final stack CI also ran 14 design and 331 application browser cases without retries or flaky classification.

    [UI reconciliation](https://github.com/githubnext/chopin/blob/Maggie/jev-chat-product/docs/jev-ui-reconciliation.md) · [Feature quality handoff](https://github.com/githubnext/chopin/blob/Maggie/jev-chat-product/docs/jev-quality-handoff.md)

    ### Scope and review map

    The scope image explains the user-facing capabilities; the review map shows the 14-layer order and separates application changes from test/support volume.

    ![Final Jev scope: eight capabilities and 94627 added lines including 68200 test and support lines](https://github.com/user-attachments/assets/b7c4eabf-3512-4c7a-a5a4-077f2dc10527)

    ![Jev review and merge map: fourteen reviewed PRs with passing current-head CI](https://github.com/user-attachments/assets/566301b0-1c53-417b-b8c9-d92efaceb0db)