Skip to content

fix: consolidate the June docs audit for the pages that stay on dev (PRDCT-365/366/367/368/369) - #410

Open
Iamfle4ka wants to merge 2 commits into
mainfrom
PRDCT-543-audit-fixes-dev
Open

fix: consolidate the June docs audit for the pages that stay on dev (PRDCT-365/366/367/368/369)#410
Iamfle4ka wants to merge 2 commits into
mainfrom
PRDCT-543-audit-fixes-dev

Conversation

@Iamfle4ka

@Iamfle4ka Iamfle4ka commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

Consolidates six unreviewed PRs from 2026-06-22 — #391, #392, #394, #395, #396, #398 (PRDCT-365/366/367/368/369) — into one branch off current main, carrying only the fixes that belong on developers.keboola.com, and only once.

The June batch was one audit split by area. None of it was ever reviewed (only keboola-pr-reviewer-bot), all six had fallen behind main, #396 was already conflicting, and #402 (PRDCT-480, opened 2026-07-10) partially redid the same territory — so the same lines were queued in two or three places at once.

What is in

Area Fixes
overview/ OAuth endpoint for US Virginia GCP, dead #regions-and-endpoints anchor, two grammar fixes
automate/ 4 typos in set-schedule.md
integrate/storage/ required url argument added to the PHP and R client examples, dead #clients anchor, Apiary → api.keboola.com link, typos
integrate/ orchestrationshared in the artifacts example, "type": "json""path" in Data Streams, invalid JSON in the variables examples, typos
extend/generic-extractor/ AWS-signature and SSH-proxy wording, a stray ], a garbled userData sentence
extend/generic-writer/ empty [dynamic functions]() link, enpoint_path, two "default query parameters" that mean headers, a stray quote in the Bearer example

What was dropped, and why

Retired pages. Everything the June PRs touched under extend/component/**, extend/common-interface/**, extend/job-queue/ and extend/publish/ is gone from here. Those pages moved to help in connection-docs#1046 and #406 turns them into redirect_to stubs — fixing them in this repo changes nothing a reader can see. That is the whole of #393 and six of the eight files in #396.

They are not lost: #1046 carried the unfixed text to help, so none of those fixes had reached readers. They are re-applied against help in connection-docs#1077, which also picks up defects the migration introduced.

Three hunks #402 already fixes — the pagenumoffset link, [job types](todo), and the localhost:4000 link in integrate/variables. #402 is newer and stays open; this PR stays off those lines so the two do not collide. Note #395's version of the third one is wrong: it targets #step-2--create-default-values-for-variable, but the heading is ### Step 2 -- Create Default Values for Variables. #402 has the correct plural, so its version is the one to keep.

#397 and #402 are untouched and should still be merged. Per DEV-MIGRATION-PLAN.md, dev /cli/ is the keboola-as-code CLI — a different product from the kbagent CLI documented at help.keboola.com/cli/ (#1015), with /cli/keboola-as-code/ already planned for it. Not a superseded copy.

Verification

Every substantive claim was checked against source rather than taken on faith from the June diffs:

  • PHP client: storage-api-php-client Client::__construct throws InvalidArgumentException('url must be set'). R client: initialize(token, url, ...) in sapi-r-client/R/client.R has no default for url (its own docstring calling it "Optional" is wrong). Both sets of examples were unrunnable as written.
  • OAuth URL: the US Virginia GCP row pointed at oauth.europe-west3.gcp.keboola.com, copy-pasted from the EU Frankfurt row. GET connection.us-east4.gcp.keboola.com/v2/storage returns oauth → https://oauth.us-east4.gcp.keboola.com, matching the other 18 rows.
  • Dead anchor: the heading is ## Stacks and Endpoints, so #regions-and-endpoints resolves nowhere. Fixed on the two pages that stay; the rest of the instances are on retired pages and are handled help-side.
  • Artifacts: the "all artifact types" example used orchestration; the page documents exactly runs, custom, shared.
  • Data Streams: the Path example used "type": "json"; the column-type table has no json type.
  • Anchors: #storage-api-clients and #dynamic-functions both resolve to real headings (## Storage API Clients, ## Dynamic Functions); the previous #clients and empty () did not.
  • [EX131]: the period removed was mid-sentence — the sentence continues with [EX133] on the next line.

Build: not run locally — this repo builds through docker compose and there is no container runtime on this machine, so the Build workflow here is the first build.

Once this lands

Close #391, #392, #394, #395, #396 and #398 as superseded by this PR (branches stay cherry-pickable). #393 is superseded by connection-docs#1077. #397 and #402 continue on their own.

Replaces six unreviewed PRs from 2026-06-22 (#391, #392, #394, #395, #396,
#398 — PRDCT-365/366/367/368/369) with one branch off current main, carrying
only the fixes that belong on developers.keboola.com and only once.

Dropped from the June set:
- Everything under extend/component/**, extend/common-interface/**,
  extend/job-queue/ and extend/publish/ — those pages moved to help in
  keboola/connection-docs#1046 and #406 turns them into redirect stubs, so
  fixing them here changes nothing a reader can see. Their fixes go to
  connection-docs instead; #1046 carried the *unfixed* text over, so none of
  them had reached help.
- Three hunks that #402 (PRDCT-480, open, newer) already fixes: the
  pagenum -> offset link, the `[job types](todo)` link, and the localhost:4000
  link in integrate/variables. #395's version of that last one is wrong — it
  targets #step-2--create-default-values-for-variable, but the heading is
  "Step 2 -- Create Default Values for Variables". #402 has the correct plural.

Everything substantive was verified against source rather than taken from the
June diffs:
- storage-api-php-client throws `InvalidArgumentException('url must be set')`,
  and the R client's `initialize(token, url, ...)` has no default for `url` —
  so the PHP and R examples were unrunnable without it, and the R page's "the
  only required argument is a token" was wrong.
- The OAuth row for US Virginia GCP pointed at europe-west3, a copy-paste from
  the EU Frankfurt row. `GET connection.us-east4.gcp.keboola.com/v2/storage`
  reports `oauth -> https://oauth.us-east4.gcp.keboola.com`, matching the other
  18 rows of that table.
- `#regions-and-endpoints` is dead — the heading is "## Stacks and Endpoints".
  Fixed in overview/encryption.md (from #391) and in the one other page that
  stays (integrate/storage/docker-cli-client.md); the remaining instances sit
  on retired pages and are fixed on the help side instead.
- Artifacts: the "all artifact types" example used `orchestration`, but the page
  documents exactly three types — `runs`, `custom`, `shared`.
- Data Streams: the Path example used `"type": "json"`; the column-type table
  has no `json` type, and the section documents `path`.
- `#storage-api-clients` and `#dynamic-functions` both resolve to real headings;
  the previous `#clients` and empty `[dynamic functions]()` did not.
- The period removed after example [EX131] was mid-sentence — the sentence
  continues with example [EX133] on the next line.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Aug 4, 2026

Copy link
Copy Markdown

PRDCT-365

PRDCT-543

@Iamfle4ka

Copy link
Copy Markdown
Collaborator Author

Two hunks in this PR were not described in the section above, because the summary I wrote it from used a filter that silently dropped every changed markdown list item (a list line - x appears as -- x in a diff). git apply had taken the full diffs, so nothing was lost from the branch — but two of #398's product-behaviour claims went in unexamined. Both now verified, and both were flagged by keboola-pr-reviewer-bot on #398 as needing a human:

  • nextFlagnextPageFlag in pagination/index.md. Code search over keboola/generic-extractor: nextPageFlag appears 5 times (README plus the config of examples 045, 046, 047, 139); nextFlag appears 0 times. The old name was never an option.
  • limitStop's count / field are conditionally, not unconditionally, required. The list said "(required)" for both while the very next sentence said they are mutually exclusive with one required — self-contradictory. Upstream settles it: doc/examples/126-pagination-stop-limit/config.json sets {"field": "scroller.count"} alone, 127-pagination-stop-field/config.json sets {"count": 3} alone.

While re-checking, I also re-ran the #402 overlap with a correct filter, comparing changed-line sets per file rather than eyeballing a summary: 6 files are touched by both PRs and 0 changed lines are shared — every overlap is complementary. So the two can merge in either order.

The remaining keboola-pr-reviewer-bot concerns from the superseded PRs are resolved too, all against public sources: the OAuth endpoint (#391) against the stack's own /v2/storage service index; the PHP and R url argument (#394) against Client::__construct and sapi-r-client/R/client.R; orchestrationshared and "type": "json""path" (#395) against each page's own type list; and #job-type (#395's other concern, now carried by #402) against the ### Job Type heading, which exists.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant