---
author: 'Lucas Mantovan'
description:
  'Populate a quote-command skeleton from quote data without fabricating values.
  Use when a quote JSON and command skeleton are supplied and the user asks to
  create a populated command.'
extras:
  'Add an eval for missing values and a different skeleton shape; assert
  returned JSON parses.'
focus: 'Map source quote data into a target command without inventing data.'
id: 'copy-quote-info-to-payload'
improve:
  - 'Add a machine-checkable JSON validation step before returning output.'
  - 'Define behavior for duplicate IDs, unmatched items, and conflicting values
    in the source.'
  - 'Provide a fixture-based transform script if this exact mapping is
    repeatedly performed.'
name: 'copy-quote-info-to-payload'
path: '../submitted-skills/Lucas%20Mantovan/skills/copy-quote-info-to-payload/SKILL.md'
status: 'Very strong'
title: 'Copy quote info to payload'
wins:
  - 'Excellent source/skeleton distinction and preservation rule.'
  - 'Uses a linked, on-demand mapping reference.'
---

# copy-quote-info-to-payload

## Inputs

One source quote JSON and one target command skeleton.

## Workflow

1. Identify source and target; ask when the roles are ambiguous.
2. Parse both documents and start from the target structure.
3. Apply the mappings in `reference.md`; preserve unmatched target fields and
   item order.
4. Validate that the resulting document is valid JSON.
5. Return the payload and a short mapping summary.

## Rules

- Every populated value must come from the source or an explicit user
  instruction.
- Never silently choose between duplicate IDs or conflicting values.
- Do not alter item content unless the user requests it.

## Output

Return one valid JSON document, then unresolved placeholders and mapping
warnings.
