Skip to content

fix: preserve structured composer intent - #270

Merged
iamjr15 merged 1 commit into
mainfrom
fix/skill-mention-prefix
Aug 12, 2026
Merged

fix: preserve structured composer intent#270
iamjr15 merged 1 commit into
mainfrom
fix/skill-mention-prefix

Conversation

@iamjr15

@iamjr15 iamjr15 commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • preserve the user's exact authored message instead of encoding selected skills or connected apps into visible prompt text
  • carry non-app work intent, selected skill, and selected connected app through the validated run contract and durable Workflow input
  • make explicit Documents, Slides, Research, Data, and Media choices authoritative before keyword-based domain classification

Architecture

The browser sends an exact text message plus a small validated metadata envelope. The gateway includes that envelope in its idempotency body, the agent Worker checkpoints it in Workflow input, and agent-core converts it into request-scoped domain and capability guidance. App topology remains project mode; non-app work remains a general project.

Decisions Made

Decision Choice Alternatives considered Reasoning
Preserve message identity Keep user text byte-for-byte and send selections separately Strip hidden prefixes at render time Rendering would hide persisted corruption and leave routing ambiguous
Route non-app surfaces Validated run intent More project modes or keyword-only classification Intent is per run; project storage topology is unchanged
Selected capabilities Separate skill and connected-app fields Internal prose or slash prefixes Typed metadata survives retries without polluting transcript or model task text
Classification precedence App project mode, then explicit run intent, then keywords Keywords first Explicit user choices must win over incidental words such as “website” in a memo

Edge Cases Handled

  • signed-out and existing-project prompt handoffs retain intent and capability selections
  • custom user skills use the same bounded selected-skill contract as bundled skills
  • follow-up messages do not accidentally inherit first-run selection metadata
  • selected project or repository import keeps its existing app/general topology contract
  • invalid URL metadata is discarded before request submission and revalidated at the API boundary

Verification

  • pnpm lint
  • pnpm typecheck
  • pnpm turbo build --force
  • pnpm deadcode
  • pnpm architecture:check
  • pnpm turbo skills:build

Production QA after merge

  • submit an ordinary Documents request that mentions a website and confirm a document deliverable, exact visible prompt, and Files surface
  • submit ordinary Data and Research requests and confirm no internal skill prefix appears
  • submit a Slides request and confirm the deck skill is loaded from metadata
  • inspect browser console and production deployment health

Carry work intent, selected skills, and connected apps as validated run metadata.
Preserve exact user text and make surface choices authoritative before keyword routing.
@iamjr15
iamjr15 merged commit 7e5d3f3 into main Aug 12, 2026
4 checks passed
@iamjr15
iamjr15 deleted the fix/skill-mention-prefix branch August 12, 2026 22:59
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