Commit Graph
7 Commits
Author SHA1 Message Date
Gregory SchierandClaude Opus 5 333e3c1653 feat(import): add stable per-resource source keys to the importer contract
Re-importing an edited document currently has no way to tell an updated
request from a new one, because every import mints fresh model IDs. Give
each imported resource a key that identifies its source element instead,
so a later import can match against what it already created.

`ImportResponse` gains an optional `sourceKeys` map, keyed by the resource
IDs plugins already emit. A parallel map keeps `ImportResources` and the
partial TS types unchanged.

Bundled importers emit keys where the format carries them: Postman item
IDs, Insomnia `_id`s, OpenAPI `operationId` (falling back to the route),
and Yaak model IDs. curl has no identity of its own, so it emits none.

Planning derives a key for anything left over, hashed from the model type,
folder ancestry, and name or method+URL, prefixed `fb:` so later code can
tell derived keys from importer-provided ones. These break when the source
document renames or moves a resource, which is accepted.

Keys land in `ImportPlan.source_keys`, keyed by minted model ID so the
mapping stays lossless, ready for the commit step to persist. Nothing
consumes them yet.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-31 11:14:52 -07:00
Gregory Schier a42cba567c Support all possible Postman auth types 2025-10-29 07:06:10 -07:00
Gregory Schier 615de8b3cc Update importers for folder environment and fix tests 2025-09-25 07:12:50 -07:00
Gregory Schier 101efdd512 Merge plugins repo into mono 2025-05-29 08:02:24 -07:00
Gregory Schier 723e8d2874 Move everything into subdir for repo merge 2025-05-29 07:16:39 -07:00
Gregory Schier a80a25a90e Update for standalone base environments 2025-01-13 17:04:35 -08:00
Gregory Schier 92ac91733e Handle Postman URL query and variable fields 2024-09-17 05:58:21 -07:00