diff options
Diffstat (limited to 'docs/saved-query-sync-spec.org')
| -rw-r--r-- | docs/saved-query-sync-spec.org | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/docs/saved-query-sync-spec.org b/docs/saved-query-sync-spec.org index 2228799..887447c 100644 --- a/docs/saved-query-sync-spec.org +++ b/docs/saved-query-sync-spec.org @@ -281,6 +281,21 @@ Rationale: the failure mode is rare (=customize-save-variable= failing means dis Effect on the spec: § Open questions empties (status moves to Ready). § Implementation tasks: phase 2's entry adds a one-line note about the orphan-id messaging requirement. +** 2026-05-28 — Phase 1 round-trip probe: pearl filter output works as customView filterData + +Ran a live round-trip against api.linear.app to close phase 1: + +1. =pearl--build-issue-filter '(:open t :assignee :me)= → + =(("assignee" ("isMe" ("eq" . t))) ("state" ("type" ("nin" . ["completed" "canceled" "duplicate"]))))= +2. =customViewCreate= called with that structure as =filterData=, =shared: false=, no team. Result: =success=t=, view created with id =4354f3e7-1f94-4ea7-8ba8-6f24d3ee2944=. +3. =customView(id:)= read back the identical =filterData= structure. Linear preserved the shape exactly. +4. =shared=false= and =team=nil= persisted as personal, as expected. +5. =customViewDelete= cleaned up the throwaway view (=success=t=). + +Phase 1 is therefore complete. Pearl's existing compiler is the mapping; no new helper or schema-translation layer is needed. Phase 2 (the user-facing command) can consume =pearl--build-issue-filter='s output as =filterData= verbatim. + +Probe script archived at =/tmp/view-sync-probe.el= (not committed; one-off verification). The probe pattern (build via compiler → create → read back → delete) is what phase 7's slow-tagged integration test will codify if Craig wants a permanent regression guard. + ** 2026-05-28 — Q5 (pearl-publish-current-source v1 vs vNext): ship in v1 + bind Craig (2026-05-28, revised same-day): option 3 -- ship the convenience wrapper in v1 *and* bind it. The trigger ("I'm reading this saved query rendered in pearl right now and want to publish it") deserves a one-chord answer rather than an =M-x= round-trip; if we're shipping the wrapper anyway, binding it lands the muscle-memory shape at the same time. |
