Skip to content

V2: follow-up cleanup from event schema gang grill #35020

Description

@opencode-agent

Summary

Follow-up cleanup items from the V2 event-schema gang grill that do not need to block the main schema issue.

Source discussion: https://discord.com/channels/1391832426048651334/1522263729318658181

Items

Step/tool settlement ordering

Background check found local tool settlements can publish after step.ended / step.failed, and callID can repeat across turns. Decide whether this is a bug.

Desired invariant to consider:

step.started
  tool.called
  tool.success | tool.failed
step.ended | step.failed

If enforcing this invariant, publish step settlement only after owned tool fibers settle/finalize.

Compaction checkpoint template headings

Current headings are generic:

## Goal
## Constraints & Preferences
## Progress
## Key Decisions
## Next Steps
## Critical Context
## Relevant Files

Rename to something more OpenCode continuation-checkpoint flavored before beta.

Compaction event payload

Accepted that compaction.ended can keep separate text and recent because they are real checkpoint components: rolling summary and serialized retained tail.

Still clean up projection-only messageID via derived projected IDs if that global direction lands.

Synthetic event shape

Keep synthetic broad/plugin-facing metadata:

session.synthetic { text, description?, metadata? }

This is a valid use of metadata, unlike provider continuation state.

Metadata

Metadata

Assignees

Labels

2.0coreAnything pertaining to core functionality of the application (opencode server stuff)gang-grillDesign topics queued for later group grilling

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions