fix(docs): publish the documentation from development, not a stale branch - #428
Conversation
…anch This workflow triggered on `push: branches: [documentation]`. That branch exists, which is why nothing ever looked broken — but nobody updates it. Its last commit predates most of this year's work: larpinq 19 May (development is 594 commits ahead), buildiq 9 July (980 ahead). So the docs pipeline has been faithfully republishing a months-old snapshot, and reporting success every time. It is the reason larpinq.conduction.nl still says "LarpingApp" and decidiq.conduction.nl still says "Decidesk" while both repos' docs sources have said the new name since the app-id rename merged. The rename was never missed in the docs — the docs were publishing from somewhere else. Four of the twelve fleet apps (dossiq, integriq, stackiq, thematiq) already point at `development`. This brings the rest in line. Pairs with ConductionNL/.github#555, which made the reusable workflow publish to the Cloudflare Worker that actually serves the host — previously it wrote gh-pages and nothing read it. Both halves are needed: one fixes WHERE the docs go, this one fixes WHICH COMMIT they come from.
The trigger fix in this PR makes the docs workflow run. This commit makes the run reach the edge. `worker-name` was never passed, so the callee derived it from `cname`. Since the app-id rename `cname` is the NEW host, and the worker that actually holds the custom domains is still named after the OLD app id. The derived name therefore points at a worker that does not exist — deploying it CREATES a second worker while both custom domains keep routing to the original. Every deploy green, reaching nobody, with the live-site verification added in ConductionNL/.github#555 as the only thing that would ever have noticed. Pinning the name also decouples the worker from `cname`, so the docs host can move to the new subdomain later without silently forking the worker. Measured today: the live host still serves the pre-rename title, which is the staleness this PR chain exists to end.
|
Scope grew by one commit after auditing what a successful run of this workflow would actually have done. Fixing the trigger makes this workflow run. It would then have deployed to Deploying the derived name does not fail. It creates a second worker, while both custom domains keep routing to the original — so every deploy is green and reaches nobody. The live-site
|
Quality Report — ConductionNL/keepiq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ⏭️ | ||||
| phpcs | ⏭️ | ||||
| phpmd | ⏭️ | ||||
| psalm | ⏭️ | ||||
| phpstan | ⏭️ | ||||
| phpmetrics | ⏭️ | ||||
| eslint | ⏭️ | ||||
| stylelint | ⏭️ | ||||
| build | ⏭️ | ||||
| composer | ⏭️ | ⏭️ | |||
| npm | ⏭️ | ⏭️ | |||
| app:check-code | ⏭️ | ||||
| info.xml | ⏭️ | ||||
| REUSE | ⏭️ | ||||
| PHPUnit | ❌ | ||||
| Newman | ❌ | ||||
| Playwright | ❌ | ||||
| Hydra gates | ❌ |
Quality workflow — 2026-08-24 09:25 UTC
Download the full PDF report from the workflow artifacts.
The docs build FAILS, and has been failing — it was simply never run, because the workflow triggered on a branch nobody updates. Making the trigger correct surfaced it on the first run. Error: MDX compilation failed for application-secret-requests.md Cause: Expected a closing tag for `<date>` (27:39-27:45) `<date>` was written as a plain-English placeholder inside a table cell. MDX reads it as an opening JSX tag, finds no closing tag, and aborts the whole client bundle — so no page of this site could publish, whatever the workflow did. Backticks the two placeholders. They now render as code, which is what a placeholder should look like anyway, and the sentence is unchanged. Verified locally: npm ci --legacy-peer-deps && npm run build now exits 0 with all 10 AI-baseline checks passing.
|
One more commit. Once the trigger was fixed the workflow ran for the first time — and the docs build failed:
This was invisible for as long as the workflow never ran. Backticked the two placeholders; they now render as code, which is what a placeholder should look like anyway, and the sentence is unchanged. Verified locally: |
Quality Report — ConductionNL/keepiq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| build | ✅ | ||||
| check-manifest | ✅ | ||||
| test-l10n | ✅ | ||||
| format | ✅ | ||||
| check-l10n-js | ✅ | ||||
| check-schema-l10n | ✅ | ||||
| composer | ✅ | ✅ 111/111 | |||
| npm | ✅ | ✅ 550/550 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| PHPUnit | ❌ | ||||
| Newman | ❌ | ||||
| Playwright | ❌ | ||||
| Hydra gates | ❌ |
Quality workflow — 2026-08-24 09:50 UTC
Download the full PDF report from the workflow artifacts.
Quality Report — ConductionNL/keepiq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| build | ✅ | ||||
| check-manifest | ✅ | ||||
| test-l10n | ✅ | ||||
| format | ✅ | ||||
| check-l10n-js | ✅ | ||||
| check-schema-l10n | ✅ | ||||
| composer | ✅ | ✅ 111/111 | |||
| npm | ✅ | ✅ 550/550 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| PHPUnit | ✅ | ||||
| Newman | ✅ | ||||
| Playwright | ✅ | ||||
| Hydra gates | ✅ |
Quality workflow — 2026-08-24 10:49 UTC
Download the full PDF report from the workflow artifacts.
What
Points this app's documentation workflow at
developmentinstead of a branchcalled
documentation.Why the docs have been frozen
The workflow triggered on
push: branches: [documentation]. That branchexists — which is why nothing ever looked broken — but nobody updates it:
documentationlast commitdevelopmentis ahead bySo the pipeline has been faithfully republishing a months-old snapshot and
reporting success every time.
This is why
larpinq.conduction.nlstill says "LarpingApp" anddecidiq.conduction.nlstill says "Decidesk", while both repos' docs sourceshave said the new name since the app-id rename merged. The rename was never
missed in the docs — the docs were publishing from somewhere else.
Not an outlier
Four of the twelve fleet apps (dossiq, integriq, stackiq, thematiq) already point
at
development. Seven were ondocumentation. This brings them in line.The other half
Pairs with ConductionNL/.github#555, which made the reusable workflow publish
to the Cloudflare Worker that actually serves each docs host — previously it
wrote
gh-pagesand nothing read it, then printed "Deployment completed" withthe gh-pages commit.
Both halves are needed, and they fail differently:
development, not a stale branchMeasured proof the pair works: buildiq's docs were rebuilt and published by hand
after #555 merged, and
buildiq.conduction.nlnow serves "Buildiq, no-code appbuilder inside Nextcloud" with zero occurrences of the old name, where it had
been serving a 26 June build.