⚠️ OpenSpec-managed issue — this content is automatically synced
from the openspec/ directory. Manual edits will be overwritten on next sync.
Artifacts
Summary
hermiq calls the same thing three different names. The user-facing surface says "conversation", the OpenRegister schema is conversation, parts of the codebase and the agent-memory routes say "session", and the page itself is called "Chat". This change declares the canonical session schema in hermiq's schema register and is the head of a four-spec chain that retires the other two words end to end.
This spec is kind: config — it edits lib/Settings/hermiq_register.json and nothing else. The migration, the API rename and the frontend rename are the three code specs that follow.
Tasks
Design
See design.md for technical design details.
Synced from openspec/changes/session-schema-declaration by OpenSpec workflow
App: hermiq
Artifacts
Summary
hermiq calls the same thing three different names. The user-facing surface says "conversation", the OpenRegister schema is
conversation, parts of the codebase and the agent-memory routes say "session", and the page itself is called "Chat". This change declares the canonicalsessionschema in hermiq's schema register and is the head of a four-spec chain that retires the other two words end to end.This spec is
kind: config— it editslib/Settings/hermiq_register.jsonand nothing else. The migration, the API rename and the frontend rename are the three code specs that follow.Tasks
register-scoped-schema-slug-resolutionis merged AND released to this instance. It lives in another repo, so nothing gates this automatically — this is the human gate.sessionwith registerhermiqin context and confirm it does NOT return schema id 1286 (scholiq's "a scheduled occurrence of a Cohort meeting"). If it returns 1286, STOP — the fix is not in and declaring the schema now walks into the collision this chain exists to avoid.conversationschema from the instance and list its properties. Do not transcribe from memory or from the Vue components — the migration copies field-by-field, and a property that exists on one schema and not the other drops data silently.sessionschema tolib/Settings/hermiq_register.jsoncarrying every property from task 2.1, with the same types, titles and descriptions.human|cron|event|flow) withhumanas the default — it is what all 282 existing objects are, and it is what the Chat page needs in order to split human sessions from automated ones.conversationschema declared and untouched. Nothing is removed in this chain until the migration is verified in production.human, onecron— so the automated/human split has something to render against on a fresh install. The 282 migrated objects are allhuman, so without a seeded automated session the split cannot be verified anywhere.session-data-migrationto assert against.Design
See design.md for technical design details.
Synced from
openspec/changes/session-schema-declarationby OpenSpec workflowApp:
hermiq