Skip to content

Convert the developer documentation to Cohesivo SaaS - #3382

Draft
mnocon wants to merge 51 commits into
saas-batch-2from
saas-batch-3
Draft

Convert the developer documentation to Cohesivo SaaS#3382
mnocon wants to merge 51 commits into
saas-batch-2from
saas-batch-3

Conversation

@mnocon

@mnocon mnocon commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

NOT FOR REVIEW

Converts the developer documentation from Ibexa DXP on-premise to Cohesivo SaaS.

A Cohesivo reader has no server, no shell, no repository, no Composer, and no
ability to deploy a PHP class or a Twig template. Today's documentation tells
them to do all of those things. This branch removes what only makes sense for a
self-hosted, code-extended installation, strips PHP from what survives, and
drops the edition concept entirely.

Nothing is lost: the removed content is the on-premise documentation and
remains intact on the maintained on-premise branches. A single page here states
that an on-premise Cohesivo exists and links to it.

Scale

Roughly 230–250 of about 590 documentation pages are deleted and a further 250
or so are stripped, alongside about 3,700 generated and tooling files. Stated up
front so a pull request touching hundreds of pages is expected rather than
alarming.

How this is split

The worklist lives outside version control at .scratch/cohesivo-saas-conversion/
(spec at spec.md, tickets at issues/NN-*.md), so ticket churn never appears
in a diff. Each ticket lands as its own draft pull request against this branch,
scoped to one theme, and leaves the site building in strict mode and link-clean.

Deletions land before edits, so no edit fixes a link into a page a later batch
removes.

# Ticket Blocked by
01 Add the conversion-invariant test with a baseline
02 Delete the redirect map and the redirects plugin configuration
03 Strip edition markers from pages, theme, badges, and styles 01
04 Remove edition support from the llms.txt pipeline 03
05 Delete the edition pages and add the on-premise pointer page 01
06 Delete edition and cloud product-name variables, rewrite call sites 03, 05
07 Reduce the API section to REST 01
08 Delete the Templating section 01
09 Delete self-hosting content 01
10 Delete console-only pages 01
11 Delete code-level extension points 01
12 Delete all tutorials 01
13 Resolve add-on installation pages 01
14 Strip PHP from the search reference trees 07–13
15 Strip PHP from content management 07–13
16 Strip PHP from administration 07–13
17 Strip PHP from the remaining sections 07–13
18 Add SiteAccess review labels 07–13
19 Rebuild the entry points 03–18
20 Empty and delete the invariant baseline 03–19
21 Remove PHP repository tooling 07

Gates at every merge

  • The strict site build: PYTHONPATH=tools python -m mkdocs build --strict
  • The Python unit suite: PYTHONPATH=tools python -m pytest -q
  • The unresolved-variable check and the link check
  • The conversion-invariant test (added by 01), whose baseline shrinks with every
    ticket and is emptied and deleted by 20

Baseline at branch point: strict build clean, 95 Python tests passing.

Accepted consequences

  • Deleting the redirect map breaks inbound links to ~400 old URLs on this site.
    The same redirects remain live on the on-premise branches, which continue to
    serve them.
  • No documented path remains for bulk content import, export, or search
    reindexing. Whether those return as UI actions or background jobs is a product
    decision tracked outside this conversion.
  • All tutorials are deleted with no replacement. A SaaS getting-started tutorial
    is separate work.

Out of scope

Authoring the on-premise documentation; rewriting SiteAccess pages as UI
documentation; specifying the add-on provisioning flow; authoring REST examples
for reference pages left without one; authoring real release notes.

🤖 Generated with Claude Code

Specs and issues for the SaaS conversion live in .scratch/ as a local
worklist. Keeping it out of git means pull request diffs stay pure
documentation changes.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown

Preview of modified files: Too many files modified in a single PR, preview link list is skipped. (568 files > 150)

mnocon and others added 28 commits September 7, 2026 13:49
Remove all 480 entries of the mkdocs-redirects redirect_maps block from
plugins.yml, along with the redirects plugin registration itself, and drop
the now-unused mkdocs-redirects dependency from requirements.txt.

The same redirects remain live on the maintained on-premise documentation
branches, which continue to serve those URLs. Doing this first means no
later conversion batch has to decide whether a page it deleted needs a
redirect entry.

build_package_docs.py still reads redirect_maps from plugins.yml and
degrades to an empty map when the block is absent, so package builds and
their tests are unaffected. No documentation page is touched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the redirects plugin registration and all 480 redirect entries from
plugins.yml, plus the now-unused mkdocs-redirects dependency.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adds tests/python/test_conversion_invariants.py, which walks docs/ and
asserts four end-state invariants of the Cohesivo SaaS conversion as four
independent assertions, each naming the offending pages on failure:

  - no page carries edition frontmatter (`edition:` / `editions:`)
  - no page references a product-name variable slated for deletion
  - no page contains a PHP code sample (fenced block or .php include macro)
  - no page carries the stale internal `delete:` marker

Today's 431 violations (74 / 29 / 314 / 14) are recorded in
tests/python/invariants-baseline.yaml, following the convention of
tests/yaml-validation-baseline.yaml: plain YAML beside the code that reads
it, a generated-file header explaining regeneration, and sorted
deterministic output so a shrinking baseline is a clean diff. Regenerate
with the new `--update-invariant-baseline` pytest flag.

A violation on a page absent from the baseline fails, and so does removing
a baseline entry whose violation persists. A baseline entry whose violation
is gone is reported as a warning rather than a failure, so that conversion
tickets landing in parallel do not turn the baseline into a
merge-conflict magnet.

The test, its baseline and the new conftest fixtures are temporary and are
removed by conversion ticket 20, which requires every baseline list to be
empty.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adds four independently reported invariants over the documentation tree — no
edition frontmatter, no deleted product-name variable, no PHP code sample, no
stale delete: marker — with today's 431 violations recorded as an accepted
baseline so the suite is green on landing.

Temporary scaffolding: the test and its baseline are deleted by ticket 20.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the custom field type tutorial, the beginner website tutorial,
and the page-and-form tutorial in full (25 pages, 46 images/assets),
along with the Tutorials navigation section in mkdocs.yml. A
replacement SaaS getting-started tutorial is separate work.

Fixes every inbound link left dangling by the deletion, including the
front page's primary "Beginner tutorial" entry tile (docs/index.md),
which is removed while leaving the remaining two tiles as a coherent
entry-point row. Judgement calls, per the ticket notes:

- docs/users/user_registration.md is kept (it has substantial content
  beyond the dead link) with its procedure link replaced by a pointer
  to the anonymous user/register policy.
- docs/content_management/images/add_image_asset_from_dam.md now
  points at Page blocks instead of the deleted tutorial step.
- docs/content_management/pages/ibexa_connect_scenario_block.md keeps
  its profiler caution but drops the tutorial setup instruction.
- docs/content_management/content_management_guide.md drops the
  custom-field-type clause outright (not a SaaS capability).
- Three further dangling links were found beyond the ticket's list,
  in referrer pages slated for deletion by other in-flight tickets
  (09, 11) that haven't merged into this branch yet: fixed here too
  so this branch's build stays green independently.

PYTHONPATH=tools ~/python/bin/python3.13 -m mkdocs build --strict: exit 0
PYTHONPATH=tools ~/python/bin/python3.13 -m pytest -q: 95 passed

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes all three tutorials (25 pages) and 46 images used only by them, removes
the Tutorials nav section, and strips inbound links from 10 surviving pages
including the front page's primary entry tile.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Cohesivo is headless: the reader owns the presentation layer and cannot
deploy template files, so the whole Templating section (26 pages plus
2 images, and the now-orphaned rendering_dump_variable snippet) is
removed, along with its nav entry. 36 surviving pages had their inbound
links into the section de-linked or removed; where a sentence only
existed to point at deleted content (Assets/Webpack Encore, dead
Content-queries/Page-layout cross-references, template customization
instructions in passwords.md) the sentence was dropped rather than
repointed. The image-variations concept was folded as plain prose into
content_management/images/images.md instead of being linked. Page
Builder, Form Builder, and Site Factory pages were left in place and
only had their dangling links fixed.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Delete the PHP API and everything that only makes sense with it:

- docs/api/php_api/ in full (php_api.md plus the 3620-file
  phpDocumentor output under php_api_reference/)
- docs/api/event_reference/ (20 pages, PHP event-class tables)
- docs/api/graphql/ (5 pages) and the orphaned jwt-graphiql.png
- docs/api/rest_api/extending_rest_api/ (2 pages, both require
  deploying PHP)
- docs/administration/dashboard/php_api_dashboard_service.md
- docs/recommendations/raptor_integration/tracking_php_api.md

REST usage, REST authentication, the generated REST reference and the
OpenAPI schema dumps are retained and are now the section's whole
content.

Remove every inbound link into the deleted space:

- 539 links into the generated class reference across 156 surviving
  pages (117 of them search reference pages) are unlinked, keeping the
  surrounding prose intact
- links to php_api.md#service-container are repointed at the Symfony
  service container documentation; #using-sudo and
  #setting-the-repository-user links are unlinked
- five cards() blocks that named deleted pages are fixed (a stale card
  is a hard build failure, not a warning)
- the "PHP API" tile is dropped from the front page accordion
- GraphQL mentions in the surviving MCP and RelationList pages are
  reworded to REST or removed

Navigation: the PHP API, GraphQL, Event reference and Extending REST
API groups are gone, and the remaining REST API group is flattened
into API: so the section is one landing page plus REST.

lychee.toml.dist drops the now-dead site/api/php_api/php_api_reference/
exclusion. Remaining php_api references in code_samples/,
phpstan-baseline.neon, build_package_docs.py, tools/api_refs/ and the
CI workflows belong to ticket 21.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes docs/templating/ in full (26 pages + 2 images) and an orphaned snippet,
removes the Templating nav section, and strips inbound links from 36 surviving
pages. Page Builder, Form Builder and Site Factory are retained as authoring
features.

Conflict resolution: ticket 08 edited four tutorial pages that ticket 12 had
already deleted. The deletions win — those tutorials are gone.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Cohesivo tenants have no server, no shell and no repository codebase, so
nothing in the documentation should instruct them to provision, configure
or operate infrastructure.

Deleted:
- docs/infrastructure_and_maintenance/ in full (24 pages plus images and
  diagram sources): request lifecycle, databases, cache and HTTP cache,
  reverse proxies, Fastly, clustering, DevOps, backup, performance,
  background tasks, environments, sessions, the security pages and the
  support and maintenance FAQ
- docs/search/search_engines/ in full (7 pages) plus the
  elasticsearch_clear_index snippet, whose only call site was there
- docs/administration/project_organization/ in full (3 pages), including
  the architecture and bundle-registration pages
- docs/administration/configuration/repository_configuration.md
- the two images orphaned by the above (architecture.png, solr.png)

Navigation: removed the Infrastructure and maintenance top-level section,
the Search engines group and the two remaining entries. No section is
left with a single child by this change.

Surviving pages: removed every inbound link into the deleted space,
keeping the sentence where it still carried meaning and dropping it where
it was only a pointer. Fixed the cards() blocks on the Administration and
Search landing pages, which would otherwise crash the build.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes docs/api/php_api/ in full (3,621 files of generated phpDocumentor
output plus the PHP API usage page), the event reference, the GraphQL section,
the REST extension points, and the PHP dashboard/tracking API pages. Removes
links into that space from 156 surviving pages and flattens the REST group into
the API section.

Conflict resolution: four modify/delete conflicts against tickets 08 and 12
resolved in favour of the deletion. In
custom_recommendation_rendering.md each branch had removed one of two links and
kept the other; the resolution takes both removals.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…with-CLI, CDP export schedule

Removes the data-migration section (9 pages), the search reindexing page,
the translate-with-CLI page, and the CDP data export schedule page, since
a Cohesivo SaaS reader has no console to run these procedures on. Updates
mkdocs.yml nav accordingly and removes every inbound link from surviving
pages (a content_management.md and an ai_actions.md cards() block would
otherwise crash the build with FileNotFoundError).

Accepted consequence: the documentation now has no described path for bulk
content import, export, or search reindexing. Whether these return as UI
actions or background jobs is a product decision tracked outside this
conversion.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the infrastructure and maintenance section, the search engine overview
and configuration pages, the project organization pages, and the repository
connection page (47 files), and strips inbound links from 39 surviving pages.

Conflict resolution: ten modify/delete conflicts against tickets 07, 08, 10 and
12 resolved in favour of the deletion in both directions. In configuration.md
each branch had removed one bullet from the settings list and kept the other;
the resolution drops both.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the edition comparison page and the two per-edition product
pages (docs/ibexa_products/editions.md, ibexa_headless.md,
ibexa_experience.md), along with the 16 images used only by them.
Replaces the "Cohesivo editions" nav section with a single flat entry
pointing to the new docs/on_premise.md page, which states that an
on-premise Cohesivo exists and links to its documentation without
claiming any specific features.

Removes inbound links to the deleted pages from 9 surviving pages.
Per the spec's rule that self-hosted-only concepts are removed rather
than hedged, "LTS Update" sentences that existed only to point at
editions.md#lts-updates are deleted outright; sentences that also
carried real functional content are restated without the edition
framing. The docs/index.md LTS-Update promo tile is left untouched
(ticket 19's concern) and still links to the deleted page; the two
pages the ticket originally named (product_guides.md,
user_management_guide.md) do not actually link to any edition page,
confirmed and left alone.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the data-migration section, the search reindexing page, the
translate-with-CLI page and the CDP data export schedule page (12 files), and
strips inbound links from 10 surviving pages.

Conflict resolution: three modify/delete conflicts against tickets 09 and 10
resolved in favour of the deletion. In mkdocs.yml, HEAD had dropped the whole
Infrastructure and maintenance section while ticket 10 had dropped the Reindex
search entry; the merged nav keeps neither.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the edition comparison page, both per-edition product pages and 16
images, replaces the editions nav section with a single on-premise pointer page,
and removes 9 inbound links.

Conflict resolution: both modify/delete conflicts resolved in favour of the
deletion — bundles.md was deleted by ticket 09, editions.md by this ticket.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Delete the two install-only pages (Qualifio, Raptor CDP) and fold their
account-registration step into the corresponding feature page. Keep and
strip the two pages that also carry real configuration content (Quable
connector, Raptor connector), removing only their package-installation
sections. Remove package-installation and on-disk-secret steps from the
surviving AI Actions, MCP Servers, integrated help, translations
management, and remote PIM support pages, replacing .env instructions
with neutral "provide in your instance's settings" language. Add
saas_review/siteaccess labels to retained pages that describe
SiteAccess-aware settings, update the nav (drop 2 entries, relabel 3),
and fix every anchor/link that pointed at removed sections.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the two install-only pages, folding their account-registration steps
into the corresponding feature pages; keeps the two pages carrying real
configuration content with their install sections removed; strips package
installation and on-disk secret steps from five more pages; adds SiteAccess
review labels to four.

Conflict resolution: editions.md resolved in favour of ticket 05's deletion.
Three pages conflicted because HEAD still carried the install sections that
ticket 13 removed; resolved per hunk in favour of the removal, so auto-merged
edits elsewhere in those files survive.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Remove all four edition-marking mechanisms so no feature reads as gated
behind a licence tier:

- Drop `edition:` frontmatter from all 59 pages that still carried it
  (45 experience, 13 lts-update, 1 headless). Three field-type reference
  pages had it as their only frontmatter key, so their now-empty
  frontmatter block is removed too. No page uses the plural `editions:`.
- Delete docs/snippets/experience_badge.md and
  docs/snippets/lts-update_badge.md and clean up all 13 heading call
  sites. Heading slugs are unchanged, so no inbound anchor links break.
- Remove the edition-badge branch from theme/main.html.
- Remove the .pill--headless/--experience/--lts-update rules and their
  colour variables from scss/pills.scss, scss/_variables.scss and the
  committed docs/css/pills.css, plus the now-dead `div.pills` rule.
  .pill, .pill--inline, .pill--new and the release-note categories
  .pill--new-feature / .pill--first-release are kept: they back the nav
  version pill, the "New in doc" marker and the release-notes badges.
- Reduce the release-notes filter and entry categories to New feature and
  First release, and shrink validate_categories() in main.py to match.
  Restate docs/release_notes.md's title and description without the
  on-premise product name or LTS Update wording.
- Empty the `edition_frontmatter` list in the conversion-invariant
  baseline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes edition marking across all four mechanisms: edition: frontmatter from 59
pages, both badge snippets and their 13 call sites, the theme branch that
rendered badges, and the badge rules and colour variables in the SCSS source and
compiled CSS. Reduces the release-notes category whitelist and restates
release-notes metadata.

Conflict resolution: the two install-only pages resolved in favour of ticket
13's deletion. Three hunks needed composing rather than side-picking, because
ticket 13 had renamed headings and rewritten a description in the same places
ticket 03 removed badges and the edition key: the merged state keeps 13's
"## Configure … connector" headings without the badge include, and 13's new
description without edition: lts-update.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
A reader is no longer told to write a class, register a component, or
deploy code in order to extend the product. The features those
extensions customised are still documented.

Deleted (56 pages):

- the Back Office code-level customization cluster (22 pages): menus,
  tabs, browser/UDW and browser tabs, user settings, thumbnails,
  calendar, search suggestion and sorting, integrated help and product
  tour customization, the content tab switcher, notifications,
  date-and-time formatting, and the Back Office element pages
- the search extensibility tree (7 pages)
- the create-a-custom-X pages across field types, permissions,
  workflow, forms, and the product catalog (11 pages)
- the extend-X pages, including the Online Editor and AI Actions
  extension pages, and the product catalog customization group
  (6 pages)
- both OAuth pages, with no replacement: an OAuth client is not a SaaS
  feature, and the identity-provider role goes on the same reasoning
- the remaining pages carrying the legacy `delete:` frontmatter marker
  (form_and_template, tracking_functions, hybrid_tracking)
- five further single-purpose code-level customizations that match the
  same rule: customize_dashboard, customize_field_type_metadata,
  customize_email_notifications, custom_recommendation_rendering,
  multifile_upload

Retained, per the ticket: the Back Office section landing page, Back
Office configuration, product tour and its configuration page, content
tree, subitems list, the anchor menu page, and all nine admin panel
pages. create_custom_page_block and create_custom_richtext_block are
left to ticket 15, which owns the Page Builder and Form Builder strip.

Also removed 40 images that only the deleted pages referenced, the 56
navigation entries, the eight `cards()` blocks that named a deleted
page (a `cards()` entry pointing at a missing file crashes the build),
79 inbound references from surviving pages, and the now-empty
`stale_delete_marker` baseline list. No page in docs/ carries a
`delete:` key any more.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Ticket 03 already stripped every edition marker from the docs; this removes
the now-dead code that produced the "Editions: X, Y" line in llms.txt output.

- Delete editions_from_frontmatter() and FRONTMATTER_EDITION_DISPLAY
  (llmstxt_preprocess.py): the frontmatter edition reader has no input left.
- Drop the editions parameter and emitted line from inject_page_metadata()
  and update its caller in hooks.py accordingly.
- Delete _process_inline_pills() / _pill_edition() (llmstxt_preprocess.py):
  unreachable now that the edition badge snippets are gone from docs/ and
  custom.js's runtime-injected pill carries no edition class.
- PILL_CLASS_TO_EDITION stays: still used by _process_release_note_tags()
  for the surviving release-note categories.
- Update module/function docstrings that referenced the removed helpers.

Tests: remove the 7 tests asserting on editions_from_frontmatter/the
editions line, and the 3 tests covering the now-deleted inline-pill
merging. Retain and adjust the tests covering description injection, the
llms.txt pointer, and their ordering (drop the editions kwarg/assertions).
Change test_release_note_tags_appended_to_heading's sample pill classes to
surviving categories (new-feature/first-release) since that function is
kept. Rename test_description_and_editions_lines_are_kept to
test_description_and_trailing_content_are_kept: it exercises
strip_llms_txt_pointer's handling of trailing content, not editions.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes 56 pages and 40 images covering the Back Office code-level
customization cluster, the search extensibility pages, the create-a-custom-X and
extend-X pages, and both OAuth pages, and removes every remaining legacy
delete: marker. Fixes 79 inbound references across 38 files, including 21
cards() entries. Back Office feature pages are retained.

Conflict resolution: eleven modify/delete conflicts resolved in favour of the
deletion. Two hunks needed composing: configure_translations_management.md keeps
ticket 13's no-install phrasing with ticket 11's link removal, and the Raptor nav
keeps ticket 13's relabelled entry while dropping ticket 11's emptied
"Track with Raptor" group, both of whose pages this ticket deletes.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Remove the three edition-name variables (product_name_headless,
product_name_exp, product_name_com), the cloud-platform variable
(product_name_cloud), and the two variables with no call sites at all
(product_name_content, product_name_oss) from mkdocs.yml, and rewrite
every call site.

Sentences that drew a distinction between editions become plain
statements about Cohesivo; where the distinction was the whole point of
the sentence, the sentence is gone. Cloud-platform mentions are resolved
per mention: the content-management "install a local instance or set up
an instance on the cloud" clause described infrastructure a tenant
cannot act on and is dropped, while the AI Actions availability line is
restated unconditionally without naming a platform.

The same pass clears residual literal edition prose ("in all Cohesivo
editions", "regardless of its edition", the Experience/Headless
Dashboard Builder note). docs/index.md and the product-guides opener are
left to ticket 19, which owns them.

The site display name is now Cohesivo Documentation.

The deleted_product_variables list in tests/python/invariants-baseline.yaml
is now empty.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the frontmatter edition reader, the inline-pill functions dead since
ticket 03, and the editions line from page-metadata injection, along with the 10
tests that covered them. Retains description injection, the documentation-index
pointer and their ordering.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the three edition-name variables, the cloud-platform variable and the
two unused ones, rewrites all 17 surviving call sites per mention, clears
residual literal edition prose, and sets the site display name to Cohesivo
Documentation.

Conflict resolution: customize_dashboard.md resolved in favour of ticket 11's
deletion. In configure_ai_actions.md ticket 06 had dropped "regardless of its
edition" while ticket 11 had dropped "or build your own ones"; the merged text
takes both removals.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the PHP example and its implement-it-in-code prose from 168 pages
across the criteria, aggregation, sort clause, URL search, activity log, AI
actions, content type and embeddings reference trees, leaving each page's
feature description, fields, semantics and REST example intact. Pages with no
REST counterpart keep no example; none was invented.

Deletes search_api.md, a PHP API page, and folds its conceptual introduction
into the search landing page. Rewrites its 13 inbound references: de-linked
where the sentence still carries the concept, repointed where a surviving
reference page covers it.

Restores the FieldValueCriterion::COMPARISON_* constants to code spans after
ticket 07 removed their links (residue R4).

Removes 177 search/ entries from the invariant baseline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes PHP samples and the implement-it-in-code prose that introduced them
across content management, including the field type reference. Deletes the
content API and content management API pages, whose whole subject was PHP API
usage.

In the field type reference, the "PHP API field type" wrapper is unwrapped and
its PHP-only subsections (Constructor, String representation) removed, while the
Settings, Validation, Input expectations and Hash format tables are retained:
they document field-definition configuration and the field's data shape, not
PHP mechanics.

Removes the GraphQL field type operations section from matrixfield.md, orphaned
when ticket 07 deleted GraphQL (residue R1), and the taxonomy reindex console
commands (residue R3).

Removes 59 content_management/ entries from the invariant baseline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
mnocon and others added 10 commits September 8, 2026 08:50
Removes the PHP example from 168 reference pages, leaving each page's feature
description and REST example intact; deletes search_api.md and folds its
conceptual introduction into the search landing page; restores the
FieldValueCriterion constants to code spans. Removes 177 baseline entries.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes the content API and content management API pages, unwraps the field type
reference's PHP API section while keeping its Settings, Validation, Input
expectations and Hash format tables, and clears residue R1 and R3.

Conflict resolution: four modify/delete conflicts resolved in favour of the
deletion. Ticket 14 had fixed inbound links in those pages so its own branch
would build standalone; ticket 15 deletes them outright.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the "PHP API" section from the recent activity page, keeping its
Configuration, Permission and security, User privacy and REST API sections;
removes the ConfigResolver service-injection section from dynamic configuration
while keeping the SiteAccess scope and namespace semantics the spec preserves;
and drops the container parameter sample from the configuration page.

Clears residue R2 (a GraphQL console reference orphaned by ticket 07) and R17
(the back office described as produced by the ibexa/admin-ui bundle, which a
tenant does not install).

Repoints three anchor links orphaned by the removed PHP API section at the
surviving REST API section.

Removes 20 administration/ entries from the invariant baseline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes nine pages that exist only to document a PHP API or a code-level
extension point: the catalog, price, product, Quable, segment and language API
pages, the SiteAccess injection page, an orphaned snippet, and the Raptor CDP
data customization page, whose subject is writing PHP field processors.

Strips PHP from the pages that survive as feature documentation, removing the
sections that existed only to tell the reader to write a class or open a PHP
shell. The REST binary-attachment example becomes a description of the REST
sequence rather than a PHP client script.

Keeps the conceptual half of SiteAccess-aware configuration — the
namespace/scope/parameter format and its inheritance rules, which the spec
preserves — and cuts the bundle implementation that followed it.

Clears residue R15 (an orphaned Extensibility section) and R18 (an instruction
to restart the application).

Removes 58 entries from the invariant baseline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes nine PHP API and code-level extension pages, strips PHP from the pages
that survive as feature documentation, keeps the conceptual half of
SiteAccess-aware configuration, and clears residue R15 and R18.

Conflict resolution: tickets 16 and 17 pruned overlapping regions of the
invariant baseline. Resolved from ground truth rather than by hand-merging line
lists — with tickets 14 through 17 all merged, docs/ contains zero PHP samples,
so php_code_sample is empty. All four invariant lists are now empty.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Flags, in author-facing frontmatter only, every surviving page whose
SiteAccess content still needs a product decision, so a maintainer can
enumerate the outstanding work with one search:

    grep -rln '^saas_review:' docs --include='*.md'

Schema (as landed by ticket 13):

    saas_review:          list of reason values
        - siteaccess
        - links_removed
    saas_review_note: >-  one free-text note per page

38 pages now carry `saas_review`; 34 are new here and 4 were already
labelled by ticket 13 (three of those gain the `links_removed` reason and
an extended note). Inclusion rule: a page is labelled when it documents a
SiteAccess-scoped setting or the SiteAccess scoping/matching semantics
themselves; 16 of the 54 pages that merely mention the string are left
unlabelled (a cross-link, a concept definition, the `X-Siteaccess`
request header, a component parameter named `siteaccess`, a deprecated
permission limitation, or a statement that something is *not*
SiteAccess-aware).

`links_removed` (27 pages) records, in the same note, which deleted pages
this page used to link to, so a later pass can check the surrounding
prose.

No SiteAccess content is rewritten and no UI is invented, per the spec's
Out of Scope entry. No page's body changes: every hunk is an addition
inside the leading `---` block, and one page
(`measurementfield.md`) gains a frontmatter block it did not have.

The theme extends Material's `base.html` and has no generic frontmatter
loop, so the keys do not render: after a strict build, `saas_review` and
the note text appear nowhere under `site/`, including `llms.txt` and
`llms-full.txt`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The documentation no longer contains PHP code, so the repository stops
carrying a PHP toolchain.

Deleted:
- phpstan.neon, phpstan-baseline.neon, .php-cs-fixer{,-factory,-inline}.php,
  deptrac.yaml, deptrac.baseline.yaml, rector.php
- tools/php-cs-fixer/, tools/code_samples/, tools/extract-inline-php.php,
  tools/sync-inline-php-to-markdown.php, tests/InlineSamples/
- tools/api_refs/.phpdoc/ (103 files), phpdoc.dist.xml, phpdoc.dev.xml
- 242 committed PHP code samples, plus two orphaned YAML samples whose
  !php/const tags pointed at the deleted example classes
- .github/workflows/code_samples.yaml

Edited, not deleted:
- tools/api_refs/api_refs.sh keeps the shared DXP install, the OpenAPI dump
  and the Redocly REST reference build; only phpDocumentor generation and the
  package/namespace edition maps are gone. Output arguments renumbered.
- .github/workflows/api_refs.yaml builds and commits the REST reference only,
  and the dead 4.6 branch (tools/php_api_ref, raml2html) is collapsed.
- .github/workflows/build.yaml drops Setup PHP, the php-cs-fixer install and
  the PHP CS Fixer run; the auto-commit message is now "JS CS Fixes".
- .github/workflows/preview_comment.yaml no longer diffs the generated PHP
  class reference.
- composer.json is trimmed, not removed: it is the manifest of the agent
  documentation package. PHP-tooling dev dependencies and their scripts are
  gone; the ibexa/* bundles stay because the YAML validation suite needs them.

Deviation from the ticket, per user decision: YAML sample validation is kept.
phpunit.xml.dist, tests/Yaml/, tests/Markdown/, tests/ConfigurationProvider.php,
tests/ValidationBaseline.php, tests/bootstrap.php and
tests/generate-yaml-baseline.php survive, so the ~158 YAML samples referenced by
surviving pages stay validated. A new "Validate YAML samples" workflow replaces
the YAML half of the deleted code-samples workflow. This leaves the ticket's
"unit-test configuration files are removed" box unsatisfied on purpose.

Also: the YAML baseline is regenerated (35 -> 34 entries, stale paths dropped),
the PR template loses its redirects and PHP CS Fixer items, dead .gitignore
entries go, and dump_class_paths.php now emits a JSON object so the empty map
stays a mapping.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Labels 38 of 54 surviving pages that mention SiteAccess with a list-valued
saas_review key and a free-text note, extending rather than overwriting the four
pages ticket 13 labelled ahead of it. Frontmatter only: the body of every
touched page is byte-identical.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Deletes 370 files of PHP toolchain: the committed PHP samples, the phpDocumentor
template set, phpstan, php-cs-fixer, deptrac, rector and the inline-sample
tooling. Edits api_refs.sh so its REST reference and OpenAPI generation survive,
trims composer.json, and reworks the CI workflows.

Per the user's decision, YAML sample validation is retained rather than removed
with the rest of the PHP tooling, and a replacement workflow preserves the CI
coverage the deleted code-samples workflow carried.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- uses: actions/checkout@v7

- name: Setup PHP Action
uses: shivammathur/setup-php@v2

# The installed ibexa/* bundles are what makes it possible to build the
# full Symfony configuration tree the YAML samples are validated against.
- uses: ramsey/composer-install@v4
mnocon and others added 12 commits September 8, 2026 09:31
Front page: named "Cohesivo by Ibexa", states the headless SaaS premise,
replaces the dead LTS-Update promo tile (R12) with an on-premise pointer,
drops the "Notable changes in v5.0" accordion whose release-note anchors
no longer exist, and carries the feature overview displaced from the
deleted editions page as four link cards. Every href verified against the
built site.

First steps: rewritten around what a tenant can do after logging in. The
welcome-page removal, Twig template and view config, design engine, and
the YAML SiteAccess and language configuration steps are gone; the
SiteAccess section is reduced to the concept and the page carries a
saas_review label.

Product guides: the landing page no longer opens on product editions, and
its single-child nav section is collapsed (R9).

Naming: site_name and the doc switcher entry become "Cohesivo Developer
Documentation", the logo asset is renamed to cohesivo-logo.png, and the
OpenAPI x-logo injected by api_refs.sh is repointed to it (R23).

Back office translations: the composer and bin/console instructions are
removed (R19).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Removes the three surviving "LTS Update" mentions, whose only explanation was
the editions page deleted by ticket 05, and the "Custom string translations"
section, which instructed the reader to call TranslatorInterface and place
.xliff files in a bundle's Resources/translations folder. Removes that section's
only inbound reference.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Rebuilds the front page around "Cohesivo by Ibexa" with every href verified by
hand, carrying the feature overview displaced from the deleted editions page and
acknowledging the on-premise product; rewrites first steps around what a tenant
can do after logging in; collapses the Product guides nav section; renames the
logo and aligns the site name; and clears the last LTS Update, console-command
and bundle-translation residue.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…lding

All four invariants (edition frontmatter, deleted product-name variables,
PHP code samples, stale delete markers) hold with zero violations across
docs/, verified independently of the test before deletion. Removes the
now-satisfied temporary test, its empty baseline, and the pytest_addoption
plus repo_root/docs_dir fixtures that conftest.py carried solely for it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Re-derives all four conversion invariants independently of the test — 0 edition
frontmatter, 0 deleted product-name variables, 0 PHP code samples, 0 stale
delete: markers across 374 pages — then removes the temporary test, its baseline
and the conftest fixtures ticket 01 added.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The spec says a page containing Twig markup is deleted, but "Sections kept"
retains Page Builder, Form Builder and Site Factory as authoring features.
Where the two collide the KEEP list wins: strip the Twig, keep the page.

- Removed the Twig fences and their introducing prose from the nine pages that
  carried them, plus the Twig-template configuration residue on invitations.md,
  user_registration.md, imageassetfield.md, user_generated_content.md,
  workflow.md and cp_configuration.md.
- Deleted customer_management/create_user_registration_form.md: stripping left
  only the user_registration configuration, which users/user_registration.md
  already documents. Inbound links and the nav entry now point there.
- Deleted all 98 tracked .twig files and the four code samples orphaned by the
  strip; nothing under docs/, tools/ or tests/ references them any more.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Applies the spec rule "a console command means its containing section is
removed; if the page has nothing left, the page is deleted" to every remaining
`bin/console`, `composer` and `yarn` instruction found by a fresh grep of docs/.

Deleted:
- users/update_basic_user_data.md: all five sections were `bin/console`
  recipes, so nothing survived. Its nav entry and the users.md card are gone;
  its only outbound link pointed at the passwords.md section also removed here.
- snippets/page_block_cache_clear.md: the whole snippet was a cache-clearing
  console recipe, so its three include macros go with it.

Stripped: users/passwords.md (Revoking passwords), configure_ai_actions.md
(Initiate integration), mcp_usage.md, mcp_config.md, raptor_cdp_data_export.md,
back_office_configuration.md, languages.md, set_up_translation_siteaccess.md,
configure_translations_management.md, install_quable.md (Synchronize taxonomy),
rest_api_usage.md and subitems_list.md.

No UI replacement is invented for any removed capability; whether these return
as UI actions is an open product decision.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Applies the spec rule "a package-installation step or an on-disk
secrets/environment step is removed". YAML blocks that document a setting's
shape are kept; only the prose that names a file to open is reframed to name
the configuration key instead.

Confirmed sites fixed: mcp_config.md (lexik_jwt_authentication.yaml and
security.yaml), rest_responses.md (.env CORS_ALLOW_ORIGIN and
nelmio_cors.yaml), connector_installation_configuration.md, fastly_io.md
(.env variant of the variation handler), and a further ~15 pages found by a
fresh grep of docs/ for `.env`, `config/packages`, `config/services` and
`config/bundles.php`.

Removed from multisite/site_factory/site_factory.md:
- "Define domains", which was a Docker Compose, nginx vhost and /etc/hosts
  procedure for a dev environment.
- "Disable Site Factory", which edited four config files and removed a
  dedicated database connection and cache pool.
The page's own link to the removed section is gone.

Left alone deliberately: administration/configuration/configuration.md, which
the spec keeps and labels rather than rewriting, and YAML examples whose file
paths are part of a setting's value.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…ipeline

PILL_CLASS_TO_EDITION still mapped pill--lts-update, pill--experience and
pill--headless to "LTS Update", "Experience" and "Headless", and appended them
to headings in LLM-facing output — an edition mechanism the conversion missed,
found by both axes of the code review.

Renames the map to PILL_CLASS_TO_CATEGORY and keeps only pill--new-feature and
pill--first-release, which are live release-note categories that main.py still
emits. Restores the PEP 8 blank-line gaps.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
matrixfield.md ended on a sentence promising an example that had been removed.

search_criteria_and_sort_clauses.md was never stripped and had become the Search
section's only entry-point card while still linking Legacy and Solr criterion
handlers on GitHub, telling the reader to develop a custom Criterion, and
documenting service-container tags. Reduced to the concepts a SaaS reader can
use, including the Content and Location search distinction restated without the
PHP method table, plus the REST custom Field Criterion section.

search.md promised aggregations and embeddings without linking either and
rendered a single card; it now links what it promises and lists the surviving
reference trees.

user_authentication.md is deleted. It documented chaining Symfony user
providers, injecting a repository user through a PHP listener and editing
config/packages/security.yaml — none of which a tenant can do. Both OAuth pages
were already deleted on the same reasoning, and restoring identity-provider
capability is out of scope.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Restates composer.json's description and keywords and the agent package's README
in Cohesivo terms. The composer "name" field is left alone: it is the published
package identity that consumers require, and renaming it would break them.

Flattens the "### REST API" heading on 57 reference pages where it was the only
child of "## Example" — a level left redundant when "### PHP" was cut. Verified
beforehand that no page links to a "#example" or "#rest-api" anchor.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Fixes every finding from the two-axis review: Twig stripped from 9 pages and 98
tracked .twig files removed, console commands and on-disk configuration steps
removed, the last edition mechanism cut from the llms.txt pipeline, the
reader-visible defects the strip left repaired, and naming aligned.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@mnocon
mnocon marked this pull request as ready for review September 8, 2026 11:45
@mnocon
mnocon marked this pull request as draft September 8, 2026 11:47
@github-actions

github-actions Bot commented Sep 8, 2026

Copy link
Copy Markdown

Summary

Status Count
🔍 Total 157422
🔗 Unique 4161
✅ Successful 2743
⏳ Timeouts 0
🔀 Redirected 0
👻 Excluded 154378
❓ Unknown 0
🚫 Errors 301
⛔ Unsupported 0

Errors per input

Errors in site/administration/admin_panel/admin_panel/index.html

Errors in site/administration/admin_panel/corporate_admin_panel/index.html

Errors in site/administration/admin_panel/languages_admin_panel/index.html

Errors in site/administration/admin_panel/roles_admin_panel/index.html

Errors in site/administration/admin_panel/segments_admin_panel/index.html

Errors in site/administration/admin_panel/system_information_admin_panel/index.html

Errors in site/administration/admin_panel/url_management_admin_panel/index.html

Errors in site/administration/admin_panel/users_admin_panel/index.html

Errors in site/administration/admin_panel/workflow_admin_panel/index.html

Errors in site/administration/administration/index.html

Errors in site/administration/back_office/back_office/index.html

Errors in site/administration/back_office/back_office_configuration/index.html

Errors in site/administration/back_office/configure_product_tour/index.html

Errors in site/administration/back_office/content_tree/index.html

Errors in site/administration/back_office/content_type_anchor_menu/index.html

Errors in site/administration/back_office/integrated_help/index.html

Errors in site/administration/back_office/product_tour/index.html

Errors in site/administration/back_office/subitems_list/index.html

Errors in site/administration/configuration/configuration/index.html

Errors in site/administration/configuration/dynamic_configuration/index.html

Errors in site/administration/content_organization/content_types/index.html

Errors in site/administration/content_organization/object_states/index.html

Errors in site/administration/content_organization/sections/index.html

Errors in site/administration/dashboard/configure_default_dashboard/index.html

Errors in site/administration/recent_activity/recent_activity/index.html

Errors in site/ai/ai/index.html

Errors in site/ai/ai_actions/ai_actions/index.html

Errors in site/ai/ai_actions/ai_actions_guide/index.html

Errors in site/ai/ai_actions/configure_ai_actions/index.html

Errors in site/ai/mcp/mcp/index.html

Errors in site/ai/mcp/mcp_config/index.html

Errors in site/ai/mcp/mcp_guide/index.html

Errors in site/ai/mcp/mcp_usage/index.html

Errors in site/api/api/index.html

Errors in site/api/rest_api/rest_api_authentication/index.html

Errors in site/api/rest_api/rest_api_usage/rest_api_usage/index.html

Errors in site/api/rest_api/rest_api_usage/rest_requests/index.html

Errors in site/api/rest_api/rest_api_usage/rest_responses/index.html

Errors in site/api/rest_api/rest_api_usage/testing_rest_api/index.html

Errors in site/content_management/field_types/field_type_reference/addressfield/index.html

Errors in site/content_management/field_types/field_type_reference/authorfield/index.html

Errors in site/content_management/field_types/field_type_reference/binaryfilefield/index.html

Errors in site/content_management/field_types/field_type_reference/checkboxfield/index.html

Errors in site/content_management/field_types/field_type_reference/contentqueryfield/index.html

Errors in site/content_management/field_types/field_type_reference/countryfield/index.html

Errors in site/content_management/field_types/field_type_reference/customergroupfield/index.html

Errors in site/content_management/field_types/field_type_reference/dateandtimefield/index.html

Errors in site/content_management/field_types/field_type_reference/floatfield/index.html

Errors in site/content_management/field_types/field_type_reference/isbnfield/index.html

Errors in site/content_management/field_types/field_type_reference/keywordfield/index.html

Errors in site/content_management/field_types/field_type_reference/maplocationfield/index.html

Errors in site/content_management/field_types/field_type_reference/mediafield/index.html

Errors in site/content_management/field_types/field_type_reference/pagefield/index.html

Errors in site/content_management/field_types/field_type_reference/productspecificationfield/index.html

Errors in site/content_management/field_types/field_type_reference/relationfield/index.html

Errors in site/content_management/field_types/field_type_reference/relationlistfield/index.html

Errors in site/content_management/field_types/field_type_reference/taxonomyentryfield/index.html

Errors in site/content_management/field_types/field_type_reference/userfield/index.html

Errors in site/content_management/field_types/field_types/index.html

Errors in site/getting_started/first_steps/index.html

Errors in site/getting_started/getting_started/index.html

Errors in site/multisite/translations_management/configure_translations_management/index.html

  • [ERROR] file:///home/runner/work/documentation-developer/documentation-developer/repositories/userdoc-6.0/site/content_management/translate_content/index.html#add-new-translation (at 6721:25) | Cannot find fragment

Errors in site/on_premise/index.html

Errors in site/product_catalog/add_remote_pim_support/index.html

Errors in site/product_catalog/attributes/date_and_time/index.html

Errors in site/product_catalog/attributes/symbol_attribute_type/index.html

Errors in site/product_catalog/catalogs/index.html

Errors in site/product_catalog/enable_purchasing_products/index.html

Errors in site/product_catalog/prices/index.html

Errors in site/product_catalog/product_catalog/index.html

Errors in site/product_catalog/product_catalog_configuration/index.html

Errors in site/product_catalog/product_catalog_guide/index.html

Errors in site/product_catalog/products/index.html

Errors in site/product_catalog/quable/configure_quable_connector/index.html

Errors in site/product_catalog/quable/install_quable/index.html

Errors in site/product_catalog/quable/quable/index.html

Errors in site/product_catalog/quable/quable_guide/index.html

Errors in site/product_guides/product_guides/index.html

Errors in site/qualifio/create_campaign/index.html

Errors in site/qualifio/integrate_ibexa_connect/index.html

Errors in site/qualifio/qualifio/index.html

Errors in site/recommendations/raptor_integration/connector_installation_configuration/index.html

Errors in site/recommendations/raptor_integration/raptor_connector/index.html

Errors in site/recommendations/raptor_integration/raptor_connector_guide/index.html

Errors in site/recommendations/raptor_integration/recommendation_blocks/index.html

Errors in site/release_notes/index.html

Errors in site/search/activity_log_search_reference/action_criterion/index.html

Errors in site/search/activity_log_search_reference/activity_log_criteria/index.html

Errors in site/search/activity_log_search_reference/activity_log_sort_clauses/index.html

Errors in site/search/activity_log_search_reference/logged_at_criterion/index.html

Errors in site/search/activity_log_search_reference/object_name_criterion/index.html

Errors in site/search/aggregation_reference/aggregation_reference/index.html

Errors in site/search/aggregation_reference/authorterm_aggregation/index.html

Errors in site/search/aggregation_reference/basepricestats_aggregation/index.html

Errors in site/search/aggregation_reference/checkboxterm_aggregation/index.html

Errors in site/search/aggregation_reference/contenttypegroupterm_aggregation/index.html

Errors in site/search/aggregation_reference/contenttypeterm_aggregation/index.html

Errors in site/search/aggregation_reference/countryterm_aggregation/index.html

Errors in site/search/aggregation_reference/custompricestats_aggregation/index.html

Errors in site/search/aggregation_reference/datemetadatarange_aggregation/index.html

Errors in site/search/aggregation_reference/daterange_aggregation/index.html

Errors in site/search/aggregation_reference/datetimerange_aggregation/index.html

Errors in site/search/aggregation_reference/floatrange_aggregation/index.html

Errors in site/search/aggregation_reference/floatstats_aggregation/index.html

Errors in site/search/aggregation_reference/integerrange_aggregation/index.html

Errors in site/search/aggregation_reference/integerstats_aggregation/index.html

Errors in site/search/aggregation_reference/keywordterm_aggregation/index.html

Errors in site/search/aggregation_reference/languageterm_aggregation/index.html

Errors in site/search/aggregation_reference/locationchildrenterm_aggregation/index.html

Errors in site/search/aggregation_reference/objectstateterm_aggregation/index.html

Errors in site/search/aggregation_reference/product_attribute_aggregations/index.html

Errors in site/search/aggregation_reference/productavailabilityterm_aggregation/index.html

Errors in site/search/aggregation_reference/productpricerange_aggregation/index.html

Errors in site/search/aggregation_reference/productstockrange_aggregation/index.html

Errors in site/search/aggregation_reference/producttypeterm_aggregation/index.html

Errors in site/search/aggregation_reference/rawrange_aggregation/index.html

Errors in site/search/aggregation_reference/rawstats_aggregation/index.html

Errors in site/search/aggregation_reference/rawterm_aggregation/index.html

Errors in site/search/aggregation_reference/sectionterm_aggregation/index.html

Errors in site/search/aggregation_reference/selectionterm_aggregation/index.html

Errors in site/search/aggregation_reference/subtreeterm_aggregation/index.html

Errors in site/search/aggregation_reference/taxonomyentryid_aggregation/index.html

Errors in site/search/aggregation_reference/timerange_aggregation/index.html

Errors in site/search/aggregation_reference/usermetadataterm_aggregation/index.html

Errors in site/search/aggregation_reference/visibilityterm_aggregation/index.html

Errors in site/search/ai_actions_search_reference/action_configuration_criteria/index.html

Errors in site/search/ai_actions_search_reference/action_configuration_sort_clauses/index.html

Errors in site/search/content_type_search_reference/content_type_sort_clauses/index.html

Errors in site/search/criteria_reference/ancestor_criterion/index.html

Errors in site/search/criteria_reference/baseprice_criterion/index.html

Errors in site/search/criteria_reference/catalogname_criterion/index.html

Errors in site/search/criteria_reference/colorattribute_criterion/index.html

Errors in site/search/criteria_reference/contentid_criterion/index.html

Errors in site/search/criteria_reference/contenttypeid_criterion/index.html

Errors in site/search/criteria_reference/contenttypeidentifier_criterion/index.html

Errors in site/search/criteria_reference/createdat_criterion/index.html

Errors in site/search/criteria_reference/currencycode_criterion/index.html

Errors in site/search/criteria_reference/customprice_criterion/index.html

Errors in site/search/criteria_reference/datetimeattributerange_criterion/index.html

Errors in site/search/criteria_reference/field_criterion/index.html

Errors in site/search/criteria_reference/fieldrelation_criterion/index.html

Errors in site/search/criteria_reference/floatattribute_criterion/index.html

Errors in site/search/criteria_reference/image_criterion/index.html

Errors in site/search/criteria_reference/imagedimensions_criterion/index.html

Errors in site/search/criteria_reference/imagemimetype_criterion/index.html

Errors in site/search/criteria_reference/imagewidth_criterion/index.html

Errors in site/search/criteria_reference/integerattribute_criterion/index.html

Errors in site/search/criteria_reference/integerattributerange_criterion/index.html

Errors in site/search/criteria_reference/isbookmarked_criterion/index.html

Errors in site/search/criteria_reference/iscontainer_criterion/index.html

Errors in site/search/criteria_reference/isfieldempty_criterion/index.html

Errors in site/search/criteria_reference/ismainlocation_criterion/index.html

Errors in site/search/criteria_reference/isproductbased_criterion/index.html

Errors in site/search/criteria_reference/isuserbased_criterion/index.html

Errors in site/search/criteria_reference/isuserenabled_criterion/index.html

Errors in site/search/criteria_reference/isvirtual_criterion/index.html

Errors in site/search/criteria_reference/locationid_criterion/index.html

Errors in site/search/criteria_reference/logicaland_criterion/index.html

Errors in site/search/criteria_reference/logicalnot_criterion/index.html

Errors in site/search/criteria_reference/matchall_criterion/index.html

Errors in site/search/criteria_reference/notification_search_criteria/index.html

Errors in site/search/criteria_reference/objectstateidentifier_criterion/index.html

Errors in site/search/criteria_reference/price_currency_criterion/index.html

Errors in site/search/criteria_reference/price_customergroup_criterion/index.html

Errors in site/search/criteria_reference/price_logicaland_criterion/index.html

Errors in site/search/criteria_reference/price_logicalor_criterion/index.html

Errors in site/search/criteria_reference/priority_criterion/index.html

Errors in site/search/criteria_reference/productavailability_criterion/index.html

Errors in site/search/criteria_reference/productcategory_criterion/index.html

Errors in site/search/criteria_reference/productcategorysubtree_criterion/index.html

Errors in site/search/criteria_reference/productcode_criterion/index.html

Errors in site/search/criteria_reference/productstock_criterion/index.html

Errors in site/search/criteria_reference/productstockrange_criterion/index.html

Errors in site/search/criteria_reference/rangemeasurementattributemaximum_criterion/index.html

Errors in site/search/criteria_reference/remoteid_criterion/index.html

Errors in site/search/criteria_reference/search_criteria_reference/index.html

Errors in site/search/criteria_reference/sectionidentifier_criterion/index.html

Errors in site/search/criteria_reference/sibling_criterion/index.html

Errors in site/search/criteria_reference/simplemeasurementattribute_criterion/index.html

Errors in site/search/criteria_reference/symbolattribute_criterion/index.html

Errors in site/search/criteria_reference/taxonomy_subtree/index.html

Errors in site/search/criteria_reference/updated_at_range_criterion/index.html

Errors in site/search/criteria_reference/userid_criterion/index.html

Errors in site/search/criteria_reference/usermetadata_criterion/index.html

Errors in site/search/search/index.html

Errors in site/search/search_criteria_and_sort_clauses/index.html

Errors in site/search/search_in_trash_reference/index.html

Errors in site/search/sort_clause_reference/baseprice_sort_clause/index.html

Errors in site/search/sort_clause_reference/contentid_sort_clause/index.html

Errors in site/search/sort_clause_reference/contentname_sort_clause/index.html

Errors in site/search/sort_clause_reference/contenttranslatedname_sort_clause/index.html

Errors in site/search/sort_clause_reference/contenttypename_sort_clause/index.html

Errors in site/search/sort_clause_reference/createdat_sort_clause/index.html

Errors in site/search/sort_clause_reference/customfield_sort_clause/index.html

Errors in site/search/sort_clause_reference/customprice_sort_clause/index.html

Errors in site/search/sort_clause_reference/datemodified_sort_clause/index.html

Errors in site/search/sort_clause_reference/datepublished_sort_clause/index.html

Errors in site/search/sort_clause_reference/datetrashed_sort_clause/index.html

Errors in site/search/sort_clause_reference/depth_sort_clause/index.html

Errors in site/search/sort_clause_reference/field_sort_clause/index.html

Errors in site/search/sort_clause_reference/id_sort_clause/index.html

Errors in site/search/sort_clause_reference/ismainlocation_sort_clause/index.html

Errors in site/search/sort_clause_reference/maplocationdistance_sort_clause/index.html

Errors in site/search/sort_clause_reference/path_sort_clause/index.html

Errors in site/search/sort_clause_reference/priority_sort_clause/index.html

Errors in site/search/sort_clause_reference/product_sort_clauses/index.html

Errors in site/search/sort_clause_reference/productavailability_sort_clause/index.html

Errors in site/search/sort_clause_reference/productcode_sort_clause/index.html

Errors in site/search/sort_clause_reference/productname_sort_clause/index.html

Errors in site/search/sort_clause_reference/random_sort_clause/index.html

Errors in site/search/sort_clause_reference/score_sort_clause/index.html

Errors in site/search/sort_clause_reference/sectionidentifier_sort_clause/index.html

Errors in site/search/sort_clause_reference/sectionname_sort_clause/index.html

Errors in site/search/sort_clause_reference/sort_clause_reference/index.html

Errors in site/search/sort_clause_reference/userlogin_sort_clause/index.html

Errors in site/search/sort_clause_reference/visibility_sort_clause/index.html

Errors in site/search/url_search_reference/id_url_sort_clause/index.html

Errors in site/search/url_search_reference/logicaland_url_criterion/index.html

Errors in site/search/url_search_reference/logicalnot_url_criterion/index.html

Errors in site/search/url_search_reference/logicalor_url_criterion/index.html

Errors in site/search/url_search_reference/matchall_url_criterion/index.html

Errors in site/search/url_search_reference/matchnone_url_criterion/index.html

Errors in site/search/url_search_reference/pattern_url_criterion/index.html

Errors in site/search/url_search_reference/sectionid_url_criterion/index.html

Errors in site/search/url_search_reference/sectionidentifier_url_criterion/index.html

Errors in site/search/url_search_reference/url_search_criteria/index.html

Errors in site/search/url_search_reference/url_search_sort_clauses/index.html

Errors in site/search/url_search_reference/url_url_sort_clause/index.html

Errors in site/search/url_search_reference/validity_url_criterion/index.html

Errors in site/search/url_search_reference/visibleonly_url_criterion/index.html

Errors in site/search_results/index.html

Errors in site/snippets/aggregation_arguments/index.html

Errors in site/snippets/forms_caution/index.html

Errors in site/snippets/page_block_cache_clear/index.html

Errors in site/snippets/simple_hash_value_caution/index.html

Errors in site/snippets/sort_direction/index.html

Errors in site/users/customer_groups/index.html

Errors in site/users/login_methods/index.html

Errors in site/users/passwords/index.html

Errors in site/users/update_basic_user_data/index.html

Errors in site/users/user_authentication/index.html

Errors in site/users/user_management_guide/index.html

Errors in site/users/user_registration/index.html

Errors in site/users/users/index.html

Full Github Actions output

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.

2 participants