fix: re-enable publish-indexes job with contentBoost field workaround#362
Merged
Conversation
Agent-Logs-Url: https://github.com/SLNE-Development/community-server-docs/sessions/b4b01f39-7035-492e-947e-4f00bd335010 Co-authored-by: twisti-dev <76837088+twisti-dev@users.noreply.github.com>
Agent-Logs-Url: https://github.com/SLNE-Development/community-server-docs/sessions/b4b01f39-7035-492e-947e-4f00bd335010 Co-authored-by: twisti-dev <76837088+twisti-dev@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix publish indexes job failure due to new contentBoost field
fix: re-enable publish-indexes job with contentBoost field workaround
Apr 15, 2026
twisti-dev
approved these changes
Apr 15, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
Re-enables the previously disabled publish-indexes GitHub Actions job and adds a preprocessing workaround to keep Algolia publishing working with newer Writerside-generated index JSON that includes the unsupported contentBoost field.
Changes:
- Re-enabled the
publish-indexesjob in the deployment workflow. - Added a step to strip
contentBoostfrom generated Algolia index JSON files before running the Algolia publisher.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| needs: [ build, test, deploy ] | ||
| runs-on: ubuntu-latest | ||
| container: | ||
| image: registry.jetbrains.team/p/writerside/builder/algolia-publisher:latest |
Comment on lines
+123
to
+127
| - name: Remove contentBoost field from index files | ||
| run: | | ||
| cd algolia-indexes | ||
| shopt -s nullglob | ||
| for f in *.json; do |
Comment on lines
+125
to
+130
| cd algolia-indexes | ||
| shopt -s nullglob | ||
| for f in *.json; do | ||
| sed -i -E 's/"contentBoost":[0-9]+,//g; s/,"contentBoost":[0-9]+//g' "$f" | ||
| done | ||
|
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Writerside builder
2026.04.8711adds a"contentBoost"field to Algolia index JSON records thatalgolia-publisher(last updated March 2024) doesn't recognize, causing a JacksonUnrecognizedPropertyExceptionand breaking thepublish-indexesjob. The job was previously disabled as a stopgap.Changes
publish-indexesjob (was fully commented out)contentBoostfrom all JSON files before the publisher reads themTwo
sedpasses cover both positions the field can appear in (mid-object with trailing comma, or last field with leading comma).shopt -s nullglobprevents a no-op iteration if the directory contains no JSON files.Temporary workaround pending JetBrains updating
algolia-publisher— tracked at WRS-7233.Original prompt
Problem
The
publish-indexesjob in.github/workflows/deploy.ymlfails because the Writerside builder version2026.04.8711generates Algolia index JSON files containing a new"contentBoost"field. Thealgolia-publisher:2.0.32-3Docker image does not recognize this field, causing acom.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.Full error:
Required Change
In
.github/workflows/deploy.yml, in thepublish-indexesjob, add a new step between the "Unzip Algolia artifact" step and the "Update Algolia Index" step that removes thecontentBoostfield from all JSON files in thealgolia-indexes/directory.The new step should be:
This is a temporary workaround until JetBrains updates the
algolia-publisherDocker image to support thecontentBoostfield. Do NOT change theDOCKER_VERSIONor any other existing configuration. Only add this one new step in the correct position.The following is the prior conversation context from the user's chat exploration (may be truncated):
User: Beim workflow bei publish indexes kommt es zu diesem problem: wie behebe ich es?
Run if [ -z "***" ]; then
Apr 09, 2026 10:47:59 PM com.jetbrains.webhelp.publication.agent.WebPublicationAgent main
INFO: WEPA version 2.0.0
Apr 09, 2026 10:47:59 PM com.jetbrains.webhelp.publication.agent.WebPublicationAgent main
INFO: Running with args: update-index --application-name C86V8LU863 --index-name docs_cast_crafter_community_server --product CCS --version 1.21.11 --index-directory algolia-indexes/
Will update index docs_cast_crafter_community_server product CCS version 1.21.11
Exception in thread "main" com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "contentBoost" (class com.jetbrains.webhelp.publication.agent.commands.algolia.AlgoliaIndexRecord), not marked as ignorable (15 known properties: "root", "depth", "pageTitle", "parent", "url", "breadcrumbs", "headings", "metaDescription", "version", "content", "objectID", "pageViews", "product", "type", "mainTitle"])
at [Source: (File); line: 1, column: 961] (through reference chain: com.jetbrains.webhelp.publication.agent.commands.algolia.AlgoliaIndexRecord["contentBoost"])
at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:61)
at com.fasterxml.jackson.databind.DeserializationContext.handleUnknownProperty(DeserializationContext.java:1132)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:2202)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1705)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperties(BeanDeserializerBase.java:1655)
at com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:540)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1405)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:352)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:185)
at com.fasterxml.jackson.databind.deser.DefaultDeserializationContext.readRootValue(DefaultDeserializationContext.java:323)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4730)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3542)
at com.jetbrains.webhelp.publication.agent.commands.algolia.UpdateIndex.execute(UpdateIndex.kt:42)
at kotlinx.cli.ArgParser.parse(ArgParser.kt:657)
at kotlinx.cli.ArgParser.parse(ArgParser.kt:530)
at com.jetbrains.webhelp.publication.agent.WebPublicationAgent.main(WebPublicationAgent.kt:38)
Assistant: Hier ist die Analyse und die Lösung für dein Problem:
Was ist passiert?
Die
publish-indexes-Job in deinemdeploy.ymlWorkflow schlägt fehl, weil eine Versionsinkompatiblität zwischen dem Writerside-Builder (der die Algolia-Indexdateien erzeugt) und dem Algolia-Publisher (der sie hochlädt) besteht.Konkret:
2026.04.8711(Zeile 14 indeploy.yml), die beim Build JSON-Indexdateien mit dem neuen Feld"contentBoost"erzeugt.This pull request was created from Copilot chat.