[{"data":1,"prerenderedAt":319},["ShallowReactive",2],{"navigation":3,"\u002Fblog\u002Fannouncing-bosca-3-3-0":180,"\u002Fblog\u002Fannouncing-bosca-3-3-0-surround":308},[4,8,20,24,59,65,69,73,77,100,104,108,112,116,120,124,128,160,164,168,172,176],{"title":5,"path":6,"stem":7},"","\u002Fdocs","1.docs\u002Findex",{"title":9,"path":10,"stem":11,"children":12,"icon":19},"Getting Started","\u002Fdocs\u002Fgetting-started","1.docs\u002F01.getting-started\u002F1.index",[13,15],{"title":14,"path":10,"stem":11},"Bosca",{"title":16,"path":17,"stem":18},"Quickstart","\u002Fdocs\u002Fgetting-started\u002Fquickstart","1.docs\u002F01.getting-started\u002F2.quickstart",false,{"title":21,"path":22,"stem":23},"Kit","\u002Fdocs\u002Fkit","1.docs\u002F01.kit",{"title":25,"path":26,"stem":27,"children":28},"Content","\u002Fdocs\u002Fcontent","1.docs\u002F02.content\u002F1.index",[29,31,53],{"title":30,"path":26,"stem":27},"Content Strategy",{"title":32,"path":33,"stem":34,"children":35},"Metadata","\u002Fdocs\u002Fcontent\u002Fmetadata","1.docs\u002F02.content\u002F1.metadata\u002F1.index",[36,37,41,45,49],{"title":32,"path":33,"stem":34},{"title":38,"path":39,"stem":40},"Supplementary","\u002Fdocs\u002Fcontent\u002Fmetadata\u002Fsupplementary","1.docs\u002F02.content\u002F1.metadata\u002F2.supplementary",{"title":42,"path":43,"stem":44},"Documents","\u002Fdocs\u002Fcontent\u002Fmetadata\u002Fdocuments","1.docs\u002F02.content\u002F1.metadata\u002F3.documents",{"title":46,"path":47,"stem":48},"Guides","\u002Fdocs\u002Fcontent\u002Fmetadata\u002Fguides","1.docs\u002F02.content\u002F1.metadata\u002F4.guides",{"title":50,"path":51,"stem":52},"Bible","\u002Fdocs\u002Fcontent\u002Fmetadata\u002Fbible","1.docs\u002F02.content\u002F1.metadata\u002F5.bible",{"title":54,"path":55,"stem":56,"children":57},"Collections","\u002Fdocs\u002Fcontent\u002Fcollections","1.docs\u002F02.content\u002F2.collections\u002F1.index",[58],{"title":54,"path":55,"stem":56},{"title":60,"path":61,"stem":62,"children":63},"Workflows","\u002Fdocs\u002Fworkflows","1.docs\u002F03.workflows\u002F1.index",[64],{"title":60,"path":61,"stem":62},{"title":66,"path":67,"stem":68},"Search","\u002Fdocs\u002Fsearch","1.docs\u002F04.search",{"title":70,"path":71,"stem":72},"Profiles","\u002Fdocs\u002Fprofiles","1.docs\u002F05.profiles",{"title":74,"path":75,"stem":76},"Organizations","\u002Fdocs\u002Forganizations","1.docs\u002F06.organizations",{"title":78,"path":79,"stem":80,"children":81,"icon":99},"Engineering","\u002Fdocs\u002Fengineering","1.docs\u002F07.engineering\u002F1.index",[82,83,87,91,95],{"title":78,"path":79,"stem":80},{"title":84,"path":85,"stem":86},"Infrastructure","\u002Fdocs\u002Fengineering\u002Finfrastructure","1.docs\u002F07.engineering\u002F2.infrastructure",{"title":88,"path":89,"stem":90},"Backend Services","\u002Fdocs\u002Fengineering\u002Fservices","1.docs\u002F07.engineering\u002F3.services",{"title":92,"path":93,"stem":94},"Deployment","\u002Fdocs\u002Fengineering\u002Fdeployment","1.docs\u002F07.engineering\u002F4.deployment",{"title":96,"path":97,"stem":98},"Framework Modules","\u002Fdocs\u002Fengineering\u002Fframework","1.docs\u002F07.engineering\u002F5.framework","i-heroicons-wrench-screwdriver",{"title":101,"path":102,"stem":103},"Identity Management","\u002Fdocs\u002Fidentity","1.docs\u002F07.identity",{"title":105,"path":106,"stem":107},"Localization","\u002Fdocs\u002Flocalization","1.docs\u002F08.localization",{"title":109,"path":110,"stem":111},"Analytics","\u002Fdocs\u002Fanalytics","1.docs\u002F09.analytics",{"title":113,"path":114,"stem":115},"AI & Agents","\u002Fdocs\u002Fai","1.docs\u002F10.ai",{"title":117,"path":118,"stem":119},"Messaging & Email","\u002Fdocs\u002Fmessages","1.docs\u002F11.messages",{"title":121,"path":122,"stem":123},"Scheduler","\u002Fdocs\u002Fscheduler","1.docs\u002F12.scheduler",{"title":125,"path":126,"stem":127},"Backup & Restore","\u002Fdocs\u002Fbackup","1.docs\u002F13.backup",{"title":129,"path":130,"stem":131,"children":132},"Architecture","\u002Fdocs\u002Farchitecture","1.docs\u002F14.architecture\u002F1.index",[133,134,137,141,145,149,153,157],{"title":129,"path":130,"stem":131},{"title":92,"path":135,"stem":136},"\u002Fdocs\u002Farchitecture\u002Fdeployment","1.docs\u002F14.architecture\u002F2.deployment",{"title":138,"path":139,"stem":140},"Security","\u002Fdocs\u002Farchitecture\u002Fsecurity","1.docs\u002F14.architecture\u002F3.security",{"title":142,"path":143,"stem":144},"Telemetry","\u002Fdocs\u002Farchitecture\u002Ftelemetry","1.docs\u002F14.architecture\u002F4.telemetry",{"title":146,"path":147,"stem":148},"Administration","\u002Fdocs\u002Farchitecture\u002Fadministration","1.docs\u002F14.architecture\u002F5.administration",{"title":150,"path":151,"stem":152},"GraphQL Schema","\u002Fdocs\u002Farchitecture\u002Fgraphql","1.docs\u002F14.architecture\u002F6.graphql",{"title":154,"path":155,"stem":156},"Storage","\u002Fdocs\u002Farchitecture\u002Fstorage","1.docs\u002F14.architecture\u002F7.storage",{"title":105,"path":158,"stem":159},"\u002Fdocs\u002Farchitecture\u002Flocalization","1.docs\u002F14.architecture\u002F8.localization",{"title":161,"path":162,"stem":163},"Scripting","\u002Fdocs\u002Fscripting","1.docs\u002F15.scripting",{"title":165,"path":166,"stem":167},"Configuration","\u002Fdocs\u002Fconfiguration","1.docs\u002F16.configuration",{"title":169,"path":170,"stem":171},"Forms","\u002Fdocs\u002Fforms","1.docs\u002F17.forms",{"title":173,"path":174,"stem":175},"Segmentation & Campaigns","\u002Fdocs\u002Fsegmentation","1.docs\u002F18.segmentation",{"title":177,"path":178,"stem":179},"Devices & Push","\u002Fdocs\u002Fdevices","1.docs\u002F19.devices",{"id":181,"title":182,"authors":183,"badge":189,"body":191,"date":297,"description":298,"extension":299,"image":300,"meta":302,"navigation":303,"path":304,"seo":305,"stem":306,"__hash__":307},"posts\u002F3.blog\u002Fannouncing-bosca-3-3-0.md","Bosca 3.3.0: Better Collection Management & Workflow Improvements",[184],{"name":185,"to":186,"avatar":187},"Bosca Team","https:\u002F\u002Fgithub.com\u002Fsowers-io",{"src":188},"\u002Fsowers-logo.png",{"label":190},"Release",{"type":192,"value":193,"toc":291},"minimark",[194,203,208,211,214,217,225,229,261,265,282],[195,196,197,198,202],"p",{},"We are excited to announce the release of ",[199,200,201],"strong",{},"Bosca 3.3.0","! This update brings meaningful improvements to how you manage collections and enhanced workflow reliability.",[204,205,207],"h2",{"id":206},"improved-collection-management","Improved Collection Management",[195,209,210],{},"Collections are an important part of any system that wants to organize data. And with this release we've improved the ability to manage them.",[195,212,213],{},"Collections in Bosca previously allowed for language variants, but expected them to be launched with the collection. Now, you can manage the lifecycle of the variant in different timelines. Each language variant has its own workflow state, transition history, and job tracking — giving you full control over when and how each variant progresses through its lifecycle.",[195,215,216],{},"As before, you can put a single metadata item into a collection and allow the metadata variants to be synced with the collection (ex: Add an English blog post and have the Spanish version automatically get added to the collection).  But\nnow, you can ensure items that are added aren't displayed until you publish the collection variant.",[195,218,219,220,224],{},"We've also added a ",[221,222,223],"code",{},"ready"," status and visibility controls to collection language variants, making it easier to track which variants are prepared for publishing and which are still in progress.",[204,226,228],{"id":227},"workflow-reliability-improvements","Workflow & Reliability Improvements",[230,231,232,243],"ul",{},[233,234,235,238,239,242],"li",{},[199,236,237],{},"Distributed Job Locking",": The ",[221,240,241],{},"JobRunner"," now includes a distributed locking mechanism for better reliability in clustered environments, ensuring jobs don't collide across nodes.",[233,244,245,248,249,252,253,256,257,260],{},[199,246,247],{},"Shared Workflow Logic",": ",[221,250,251],{},"Collection"," and ",[221,254,255],{},"CollectionLanguageVariant"," now share common workflow logic via the ",[221,258,259],{},"ICollection"," interface, making behavior more consistent and predictable.",[204,262,264],{"id":263},"other-improvements","Other Improvements",[230,266,267,276],{},[233,268,269,271,272,275],{},[199,270,146],{},": Improved ",[221,273,274],{},"AdvertisedDateTimeInput"," component behavior.",[233,277,278,281],{},[199,279,280],{},"Installer",": Removed uniqueness constraint on template attribute tool names for greater flexibility.",[195,283,284,285,290],{},"Check out more in our ",[286,287,289],"a",{"href":288},"\u002Fchangelog","Changelog",".",{"title":5,"searchDepth":292,"depth":292,"links":293},2,[294,295,296],{"id":206,"depth":292,"text":207},{"id":227,"depth":292,"text":228},{"id":263,"depth":292,"text":264},"2026-02-18","We've released Bosca 3.3.0 with improved collection language variant lifecycle management, distributed job locking, and more.","md",{"src":301},"\u002Fchangelog\u002F3.3.0.png",{},true,"\u002Fblog\u002Fannouncing-bosca-3-3-0",{"title":182,"description":298},"3.blog\u002Fannouncing-bosca-3-3-0","oQ533fMuO4Qq0NoYCjhv7-XpFnWRBSy937-2q8xwBvk",[309,314],{"title":310,"path":311,"stem":312,"description":313,"children":-1},"Bosca 3.14.0: Server-Side Scripting & MCP Integration","\u002Fblog\u002Fannouncing-bosca-3-14-0","3.blog\u002Fannouncing-bosca-3-14-0","Bosca 3.14.0 introduces a full Kotlin Script engine, event-driven triggers, an AI-powered Script Agent, and MCP server support for AI agents.",{"title":315,"path":316,"stem":317,"description":318,"children":-1},"Announcing Bosca 4.0","\u002Fblog\u002Fannouncing-bosca-4","3.blog\u002Fannouncing-bosca-4","Bosca 4.0 transitions to a direct Netty server with GraalVM native image support, a new middleware pipeline, streaming backpressure, and additional security features — the next stage in the Bosca Platform.",1775411864367]