Skip to content

Track v0.5.1 follow-ups, handoffs, and deferrals #939

Description

@sdairs

Follow-up ownership and milestone audit — 2026-09-21

This broader handoff/deferral tracker is now in v0.5.1. #757 is the sole v0.5.0 release-acceptance tracker. The owner's latest instruction is to retain current implementation in v0.5.0 with real Development links and defer work not being implemented to v0.5.1. The former v0.5.0 exception for #928 is removed.

Current implementation remains v0.5.0

Issue Native closing Development PR
#920 #980
#927 #981
#828 #983
#978 #984
#979 #989, after feature prerequisites #986/#987/#988
#990 #991
#996 #992

All seven issues have a concrete implemented fix and a native Development relationship. Stack #982 is unchanged at ten PRs through #992. #991 now combines library/CLI pagination with explicit page controls; #992 combines library/CLI BYOC lookup and the complete snapshot refresh. Together they implement generated library issue #985. This feature organization supersedes the earlier library/CLI split; the required corrected-main drift rerun in #757 now follows both PRs. No duplicate implementation PRs were opened.

#979 links only its final feature PR #989 for closure; its other three contributing PRs remain explicitly listed. #978 now closes with detector PR #984; its required normal drift-workflow rerun after detector/remediation merge is retained explicitly in #757. A closed implementation issue or #985's automated closure does not waive final release acceptance.

v0.5.1 follow-ups

These are investigation/design-first follow-ups, not guaranteed code fixes. Record evidence, then close or split concrete work. No guessed contracts or new production probes are authorized by milestone assignment alone. This tracker closes manually after the follow-up ownership/dispositions are complete; it has no artificial closing feature PR.

Keep existing holds and separate design work

All four newcomer issues retain good first issue: #845/#926/#928/#935. No assignees changed. #757 now holds the outstanding review/merge, corrected-main drift, final combined local/live checks, and release-artifact obligations. The existing 0.5.0 version bump is already merged; this cleanup did not merge, tag or release anything.

Earlier scope and evidence (preserved)

Remaining-issue action plan — 2026-09-18

This is the current plan and supersedes all execution instructions in the historical record below. The 58-PR stack is merged. Al has now authorized implementation of the five issues in the first work table. Ten reviewed draft PRs are published in native GitHub stack #982, through #992. All seven issue assignments are implemented and the combined local gates pass. Final CI and post-merge acceptance remain explicit below. Each issue has a fresh, finite subagent assignment and orchestrator review. The ordinary corrected drift workflow generated API-library issue #985; intentional CLI exposure remains separate in #990. The separately authorized Homebrew PR refresh is complete and remains on hold.

The original planning inventory of 31 open issues has one primary home per issue here (the execution follow-ups #985 and #990 are recorded below): 5 for Al and an agent, 4 for new engineers, 8 waiting on upstream, 1 Homebrew signing hold, 8 parked, 3 outside this plan, and 2 trackers. #935 is both a newcomer task and blocked; it is counted once under the newcomer handoff.

What Al needs to do

  1. Review the implementation stack once validation finishes. Work is underway under the authorization in this session. Live Cloud integration is queued for the affected exact PR heads; merge and release remain separate decisions. After merging the detector and remediation, rerun the normal drift workflow on corrected main.
  2. Assign the newcomer work later: Verify source-kind rules before enforcing ClickPipe field mappings #845, Clarify when successful ClickPipe state requests are no-ops #926, Explore schema-assisted ClickPipe creation #928 and Verify and document Postgres replica and restore credentials #935 all have good first issue. They are available for the new CLI engineers; none has been assigned by this planning pass.
  3. Coordinate upstream feedback: share Improve backend context when waking a stopped service #923's stopped-service context suggestion with the API team; add upstream owners/ticket links for the already-raised backend group when available. The current agent should wait for those contracts/fixes, not invent substitutes.
  4. Revisit release scope in v0.5.0 release scope and acceptance checklist #757 before selecting the release candidate. In particular, explicitly decide the release treatment of deferred Decide the stable exit-code taxonomy #234/Design opt-in global local-server data directories #250/Define automatic default server configuration and precedence #254. Existing milestones are preserved; Explore schema-assisted ClickPipe creation #928 remains in v0.5.0. Handoff or deferral here does not silently remove a release requirement.

The macOS signing key is a separate future dependency for Homebrew, not a prerequisite for progressing the five ready issues.

Authorized implementation queue

Issue Agreed work for the agent Dependency / completion boundary
#978 Detect operation-parameter and pagination-envelope OpenAPI drift that currently escapes CI. Fix detection first, rerun the normal drift workflow, then use its ordinary issue for API-library remediation. Add intentional CLI exposure separately. Do not call the missing library/CLI behavior fixed merely because the detector is repaired.
#920 Reject combining service --add-tag and --remove-tag in one invocation, even for different keys; allow repetition within either operation. Usage error before a request; direction is settled.
#927 Infer Kinesis IAM_USER from a complete access-key pair when auth is omitted; reject conflicting role/key inputs. Apply consistently to create and discovery. Coordinate the same argument surface with #979.
#828 Treat stdout BrokenPipe as success: exit 0, quiet termination, and no error/failure telemetry. Preserve genuine unrelated failures and native child exit-status passthrough; do not expand into #234's broader exit taxonomy.
#979 Expose the four confirmed historical API-to-CLI gaps: snapshots/configuration, Kinesis Protobuf, MongoDB initial-load parallelism, and create-paused ClickPipes. The issue contains the audit and deliberate exclusions. Coordinate Kinesis changes with #927 and avoid duplicating newly detected drift work from #978.

Use focused issue-linked branches/PRs and the repository's required validation. This work is not authorization to merge, release, or start the parked/handoff work. The earlier merged stack must not be reconstructed as a new queue.

Current implementation stack — #982

All PRs below are drafts in one native GitHub stack, in the listed order. Each base is the preceding branch; #980 starts from main.

Issue Scope PR / status
#920 Mutually exclusive tag operations #980 — reviewed; CI green
#927 Consistent Kinesis auth inference #981 — reviewed; CI green
#828 Quiet stdout BrokenPipe success with genuine errors preserved #983 — reviewed; non-live CI green; exact-head Cloud integration queued
#978 Operation-parameter and envelope drift detection #984 — reviewed; non-live CI green; exact-head Cloud integration queued
#979 Snapshot list/get/configuration #986 — reviewed; CI green; live configuration readback passed
#979 Kinesis Protobuf #987 — reviewed; CI green
#979 MongoDB initial-load parallelism #988 — reviewed; CI green
#979 Create paused for supported streaming/object-storage sources #989 — reviewed; CI green
#985 Generated API-library remediation: pagination and BYOC profile contract #991 — reviewed; local gates and non-live CI passed; exact-head Cloud integration queued
#990 CLI pagination and BYOC-only profile lookup #992 — reviewed; combined local gates passed; CI pending

Validation evidence and remaining boundaries:

No issues have been closed as complete before their changes merge. Homebrew and all parked, upstream-blocked and newcomer scopes below remain unchanged.

Descoped from this agent's queue — follow-up for new CLI engineers

Find these through the good first issue filter. These are handoffs, not outstanding product questions Al must resolve before the ready queue can proceed. The assignee can investigate and bring back a small proposal where needed.

Issue Handoff First step / limit
#845 Enhancement: earlier, clearer field-mapping validation. Confirm which source kinds require destination columns, including omitted source and explicit empty mappings; propose a bounded check. Do not assume a universal rule.
#926 Investigate successful ClickPipe state requests that may be no-ops. The recorded case is start on a Completed ClickPipe, returning success and Completed. It is not a confirmed repeated-start service case. Establish the backend contract before proposing “already running / nothing changed” feedback; equal immediate state alone is insufficient.
#928 Enhancement, still in v0.5.0: schema-assisted ClickPipe creation as a convenience. Explore a small UX such as combined create/discovery. No flag name or file interface is fixed; discovery and explicit-column create already work.
#935 Documentation + blocked: confirm Postgres replica/restore credential inheritance. Obtain authoritative backend behavior, including rotation/timing, and clarify documentation only if needed. No CLI defect or code change is assumed; it can close with evidence if existing guidance is sufficient.

Blocked upstream — do not implement CLI workarounds now

These eight issues have blocked. The API/backend teams own the missing behavior or contract; Al coordinates follow-up. An agent can reassess the consumer-side work when the specified evidence arrives. Keep the issues open until that dependency is resolved.

Issue What must come from upstream
#923 Clear, actionable context when waking an explicitly stopped service: it is stopped, cannot be woken, and needs start. The CLI should consume that context; no message-matching heuristic, added lookup, or automatic start is queued. This is suggested API-team feedback, not a delivered backend change.
#796 Confirm fractional duration/percentile types and align OpenAPI with responses. Existing client tolerance stays.
#797 Define timestamp precision and detail-selector semantics so returned execution timestamps round-trip. List-window normalization is already merged.
#824 Make supported settings apply through whole-pipe PATCH, including mixed updates, or reject unsupported settings explicitly. The dedicated settings update is the existing workaround.
#937 Define null versus omission/reset separately for create, whole-pipe PATCH and settings PUT.
#835 Distinguishable switchover behavior when no usable standby exists. CLI wait removal is already merged.
#838 Authoritative region/size discovery or typed Postgres create validation errors.
#841 Reconcile Kafka schema-discovery authentication documentation with observed rejection of omitted authentication.

Al previously raised the seven issues other than #923 with the team. No individual upstream owner or ticket has been supplied here. #935's separate backend-confirmation dependency is recorded in the newcomer table, not an additional item in this count.

Homebrew — refresh complete; hold outside the stack

#276 / PR #279 is refreshed against main at a91970e9, with conflicts resolved. Local checks passed, and all current-head GitHub checks passed or were skipped by the normal classifier, including Homebrew and Cloud API library CI. Both issue and PR are blocked; automatic merge is off.

Do not merge, publish, add it to the implementation stack, or treat it as active work. It waits for the ClickHouse macOS signing key, which Al does not expect soon. Resume only when that prerequisite is available, then validate signed artifacts and reassess readiness. Passing CI does not clear this hold.

Parked — keep open, no agent work until explicitly revisited

Issues Parked scope / condition to revisit
#915 Explicit override for agent-detected JSON: no output-policy choice yet; deferred.
#234 Broad exit-code taxonomy: revisit after the backlog is smaller. The narrow BrokenPipe decision in #828 is already settled.
#250, #254 Global local-server storage and automatic default-config/precedence design: deferred; do not introduce migration or precedence rules now.
#832 Live maximum-u64 service-setting readback precision investigation.
#929 Reliable virtual-field and optional-field metadata in schema discovery.
#931 Supported Postgres log severity filter contract.
#936 Query API payload-limit units and enforcement contract.

The last four investigations remain deferred. Their presence in GitHub or a milestone is not an instruction to probe production or implement guessed limits/semantics.

Outside this plan — do not start

Trackers and already-completed dispositions

Evidence behind the first ready issue

Both the scheduled drift check and the manual check succeeded with zero actionable findings despite the confirmed key-pagination and BYOC region-parameter gaps. The canonical analyzer also returned zero on the captured live spec. #978 records this detector defect; waiting for another daily run is not a resolution.


Historical merged-stack record — not an active work queue

Scope review and implementation plan — 2026-09-15

Reviewed the 58 initially open issues against 24 open PRs, their development links and issue timelines. The existing main PR stack is 876, initially ending at #911 (23 entries); the Homebrew PR is separate. Newly opened #912 is also included.

The review created 26 focused split issues, retained original evidence, narrowed the remaining original scopes, and recorded explicit decisions needed for deferrals. Historical completed fixes are not new implementation work. #852 and #757 remain tracking issues with existing PR ownership; they are not duplicate implementation jobs.

Execution

Ready implementation queue

Issue Scope PR / status
#886 OpenAPI drift: synchronize the current live spec and Rust library #940
#908 Preserve structured UDF attachment dependency errors #944
#913 Detect obsolete OpenAPI helper and requiredness exclusions #945
#914 Detect changed enum values at acknowledged OpenAPI locations #947
#862 Add JSON output to skills, telemetry and update management commands #942
#860 Suggest installed alternatives when removing the default local version #948
#916 Explain how to load the file written by local server dotenv #949
#849 Reject empty service backup-configuration updates #950
#917 Report service start and stop acknowledgments accurately #951
#918 Show upgrade-window days and duration units in human output #952
#919 Use consistent UTC timestamps in the service backup table #954
#848 Correct service scaling and backup configuration help #953
#922 Document the Query API relationship to service IP access lists #955
#847 Make existing ClickPipes metrics and error diagnostics discoverable #956
#846 Document ClickPipe creation prerequisites and flag constraints #959
#924 Document the pause prerequisite for editing CDC ClickPipes #957
#844 Explain the GCP scope of ClickPipe workload identity context #960
#925 Use a ClickPipe name in delete confirmation when supplied #961
#842 Clarify ClickPipe state-command acknowledgments and prerequisites #964
#840 Require destination columns before creating an object-storage ClickPipe #946
#839 Show the provider in the Postgres service list #968
#930 Explain automatic Postgres metrics bucket selection #969
#932 Explain Postgres restart acknowledgment and verification #971
#837 Render Postgres log lists as readable human output #963
#933 Render Postgres slow-query lists as a compact table #962
#934 Render Postgres metric series compactly for humans #966
#836 Document safe Postgres connection recovery and endpoint details #972
#834 Remove misleading Postgres promote and switchover wait flags #973
#833 Document UTF-8 Query API input and native-client fallback #965
#826 Distinguish Query API wake delays from gateway execution timeouts #958
#825 Emit structured error envelopes for every Cloud failure in JSON mode #941
#938 Normalize Postgres slow-query list window timestamps #967
#912 Add new codeowners #970

Snapshot API revalidation

Snapshot API access is verified on both previously blocked PR commits. Both live workflows and their required Cloud integration decisions passed after the environment feature flag was enabled.

PR #940

  • Issue: OpenAPI drift: 26 gaps between live spec and library #886
  • Exact head: c21ced7df3699825d418ed1f1d2df4e9e585a8f6
  • Cloud Integration: run 34981762977, attempt 2 — success
  • Snapshot step: PASS [NON-BLOCKING] list and get service snapshots
  • Snapshot coverage: list is confirmed. Get is conditional on a nonempty list; the log does not report list length, so it does not independently prove that get executed.
  • Cleanup: stop before delete, delete service, and confirm service is gone all passed.
  • Exact-head decision: Cloud integration decision — success for c21ced7df3699825d418ed1f1d2df4e9e585a8f6.

The decision check records successful service, postgres, organization, and clickpipes suites for the exact PR head.

PR #944

Snapshot result

The list and get service snapshots step passed at 2026-09-15T18:17:58Z. Snapshot list coverage is explicit because the list call always runs. Snapshot get is conditional on a nonempty list; the log has no list cardinality or separate get marker, so it does not prove that the get branch ran.

Cleanup

delete service passed, followed by confirm service is gone after delete passing. The lifecycle ended with 1 passed; 0 failed and PASS: all recorded steps completed successfully.

Exact-head decision

The PR current head and run head both equal 0c2e5d2e20e299e75d4a383ef11cf9f0047b1770. The Cloud integration decision reconciled to success at 2026-09-15T18:55:39Z.

The earlier HTTP 403 failures (#940 attempt 1, #944 attempt 1) were resolved by enabling environment access. No code changes or check overrides were needed. Each result applies to its tested commit; neither run transfers live-test coverage to other stack commits.

Postgres role-change follow-up

#834 is implemented in #973, appended after #972 with an explicit Development link. Remove the cloud promote/switchover wait flags and role polling; explain independent replica promotion and the limits of verifying an HA switchover. Preserve local readiness timeouts. External PR #943 is excluded from this implementation and stack at the project owner’s direction.

Deferred: direction or external contract needed

Issue Direction needed
#915 Choose --no-json, an output-mode flag, an environment variable, or documentation only, and define conflicts.
#920 Conflicting tag operations need an explicit behavioral rule.
#921 Default table width and tag truncation/display need a presentation choice.
#923 Need a reliable state/error signal; avoid classifying a generic 400 by matching prose or adding unapproved preflight behavior.
#845 Need the backend rule by pipe kind and a decision on lookup-based validation before enforcing it.
#926 Need a verified backend transition contract before the CLI can classify an acknowledgment as a no-op.
#841 Published/observed authentication behavior must be reconciled before removing or requiring a mode.
#927 Need a mode-inference and conflicting-credentials policy.
#928 Need an input contract and explicit treatment of discovered virtual fields.
#929 Need reliable virtual-field metadata and agreed display meaning; current Optional forwarding is not proven wrong.
#931 Need the supported severity contract; the model currently allows free text.
#838 Need an authoritative region/size discovery or structured validation contract.
#935 Need backend confirmation of live-replica and historical-restore password semantics.
#835 Requires backend ownership and API behavior changes outside this repository.
#936 Need the authoritative size boundary before enforcing a client-side cap.
#832 Need backend/direct-HTTP evidence; current evidence does not establish a remaining CLI bug.
#828 Need the documented exit code for a consumer closing stdout; default SIGPIPE alone changes it to 141.
#824 Requires backend decision/fix for the published PATCH contract.
#937 Need upstream nullable/reset semantics.
#797 Need upstream timestamp grammar and detail-selector semantics.
#796 Requires upstream numeric-contract confirmation/schema correction.
#800 Need profile format/ownership, import scope and endpoint/credential precedence.
#254 Need default-config lookup and merge/override policy.
#250 Need global/project selection, isolation and migration rules.
#234 Need policy choices for permission, transient/rate-limit failures and compatibility.
#206 Need GCP fixture/credentials, resource lifecycle and release-priority direction.
#129 Need copy/symlink and version/update/removal behavior; currently outside v0.5.0.

First batch validation (PRs #940–942 only)

Combined head c5974c68d252f28fd3e3ace7409d5b34920650e1 passed all required local gates: formatting, default CLI Clippy and tests (1949 passed, 5 intentionally ignored), telemetry-disabled check and all-target Clippy, library/analyzer all-target Clippy and tests (660 passed), all-feature workspace check, and 91 Python/classifier tests. The README integration retained both output contracts. Existing stack entries and all three Development links were verified. Live Cloud validation for the API layer is running separately; no merge or release was performed.

Resumed batch validation

Combined stack head e20d63b3af4c8541a6f597d9494b530f2c56b666 passed all required local checks: formatting, CLI clippy/tests, telemetry-disabled check and all-target clippy, API/analyzer all-target clippy/tests, all-feature workspace build, Python classifier/drift tests, and diff checks.

Test totals: 1991 CLI, 672 API/analyzer, and 93 Python tests (2756 total). Ignored/live tests are excluded from these totals.

Snapshot API access was revalidated successfully on the exact heads of PRs #940 and #944 after the environment feature flag was enabled. Run links and coverage details are recorded in tracker #939.

Historical CI snapshot before snapshot API revalidation: all 32 submitted PR heads match the reviewed commits. 30 have green completed checks; #940 and #944 have the documented snapshot-access failure. No checks remain pending. The native stack contains 55 PRs: the original 23 plus 32 issue PRs, with every issue Development relationship verified. The original working checkout remains clean.

Snapshot API access was revalidated successfully on the exact heads of PRs #940 and #944 after the environment feature flag was enabled. Run links and coverage details are recorded in tracker #939.

Postgres role-change follow-up validation

Reviewed head 8c1518c9b0b74b759861e662df7957fa1a6cb72d passed formatting, default CLI clippy, the complete CLI test suite (1,976 passed), telemetry-disabled build and all-target clippy, and diff checks. Ignored/live tests are excluded from this count.

Regression coverage verifies that both removed flags exit 2 before requests, each role command sends one authenticated PATCH with the correct body, JSON acknowledgment output is preserved, and a closed stdout does not cause a panic. Local startup readiness validation remains green.

The native stack audit verified the original 23 PRs plus 33 issue PRs (56 total), in order, with correct branch bases and explicit Development links. PR #973 follows #972 and is linked to #834. The original checkout remains clean.

All GitHub checks completed successfully or were skipped by the normal change classifier. The Cloud integration decision is green.

Snapshot API access was revalidated successfully on the exact heads of PRs #940 and #944 after the environment feature flag was enabled. Run links and coverage details are recorded in tracker #939.

Snapshot API access was revalidated successfully on the exact heads of PRs #940 and #944 after the environment feature flag was enabled. Run links and coverage details are recorded in tracker #939.

These deferrals keep the issue open and preserve its evidence. They do not waive release requirements. #129 and #206 remain excluded from v0.5.0 by the existing release tracker.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions