Skip to content

Server instructions + SKILL.md: fix self-contradiction, quota wording (3), and surface skipped features from generate_marketing #4

Description

@LarryWalkerDEV

Context

Three consistency problems in the server texts and one missing behavior:

  1. src/server.ts instructions list "Grundriss-Verschönerung, Video, Social-Media-Kit (in Kürze)" while step 5 of the same instructions tells the model to call generate_marketing (which delivers the social kit + exposé + video). Self-contradiction.
  2. Quota wording: instructions + skill/SKILL.md must consistently say 3 kostenlose Bilder (product decision; app enforces 3 for new trials).
  3. generate_marketing (app side /api/mcp/generate) will return a skipped array per this fixed contract (built in parallel in immostage-3d #27 — build against the contract, do not wait for it):
"skipped": [{ "feature": "video", "reason": "pro_required", "upgradeUrl": "https://..." }]

Acceptance criteria

  • server.ts instructions accurately describe what is available today: Virtuelles Staging + Marketing-Paket (Social-Posts, Exposé-PDF, Video — Video nur im Pro-Plan) verfügbar; NUR Grundriss-Verschönerung as "in Kürze". No contradiction with the workflow steps.
  • Quota wording "3 kostenlose Bilder" consistent across server.ts instructions, tool descriptions, and skill/SKILL.md.
  • src/tools/generate-marketing.ts parses skipped[] from the app response (tolerating its absence for backward compatibility) and, when present, appends a German note telling the user which features were skipped and the upgrade link, e.g. "Hinweis: Das Immobilien-Video ist im Pro-Plan enthalten. Jetzt upgraden: {upgradeUrl}".
  • Unit test: mocked app response with skipped:[{feature:'video',reason:'pro_required',upgradeUrl:'https://x'}] asserts the tool text contains the hint + URL; mocked response without skipped asserts today's text.
  • npx tsc --noEmit exits 0.

Guardrails

All user-facing text German. Do not register the deferred Phase-F tools.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions