Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Deployment record cannot express bundles (bundle-fetch); chart ignores ingress.sessionAffinity; registryInstanceId never rendered — blocks partnerre-test's record-driven Rolls

Closed
#6,825 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
20/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
azure, csharp, helm, kubernetes, nginx
Domain
backend, devops

Research direction

Start in HelmValues (MeshWeaver.Plugins): IngressValues and Render, plus CatalogValues, which should emit pluginCatalog.instanceId from DeploymentContent.registryInstanceId. Then check deploy/helm/templates/memex-portal/ingress.yaml, which currently emits only ingress.annotations and ignores ingress.sessionAffinity. Done means a rendered record includes the bundles block, the affinity annotations and instanceId, with tests covering each. The bundles schema and the selfUpdate registry fix are design work for maintainers.

Written by the indexing model from the issue text.

Description

bug feature:bundle-bake sev:H

Symptom

Every record-driven Roll of PartnerRe's partnerre-test (Systemorph/PartnerRe.Memex, mesh/Deployments/partnerre-test.json) is refused by hosting-deploy's drop guard (aks-ops run 38732526946: "this upgrade would DROP 72 value(s) …"). Most of the 72 paths are sample values from deploy/aks/values.aks.yaml that the config repository's helm-release lane layers under its overlay; those are being retired on the record (HOSTING_RETIRE_VALUES, Systemorph/PartnerRe.Memex). Four of them carry live behaviour that a Deployment record cannot express today, so the Roll cannot be made to pass without silently losing them:

Live values path What it does on partnerre-test Why the record cannot say it
bundles.registry, bundles.sources, bundles.identity renders the bundle-identity + bundle-fetch init containers that pull the sealed NodeType publications (plugins, reinsurance) from cr.meshweaver.cloud into /data/prebuilt-bundles (PartnerRe.Memex docs/shipped-nodetype-bundles.md: without it every pod compiles NodeTypes itself and types fail to load on the other pod) DeploymentContent has no bundles field and HelmValues.Render (MeshWeaver.Plugins) renders no bundles section
selfUpdate.registry SelfUpdate__Registry = memexaksacr43rzd6faaix36.azurecr.io — the self-updater lists the estate's OWN ACR mirror the Plugins renderer suppresses every ACR host (fix in flight in MeshWeaver.Plugins — HelmValues.SelfUpdateRegistry to follow core's DeploymentPortalConfig.SelfUpdateRegistry)

Two related gaps found while classifying, both worked around on the record for now:

  • The chart never reads ingress.sessionAffinity. HelmValues.IngressValues renders the record's typed ingress.sessionAffinity.nginxAnnotations into ingress.sessionAffinity.*, but deploy/helm/templates/memex-portal/ingress.yaml only emits ingress.annotations (+ the issuer). A record-only render therefore drops cookie affinity (nginx.ingress.kubernetes.io/affinity, affinity-mode, session-cookie-*) from a 2–4 replica Blazor portal. PartnerRe states them in ingress.annotations as a workaround.
  • registryInstanceId never reaches pluginCatalog.instanceId. The record field documents itself as "the value its PluginCatalog__InstanceId carries", but CatalogValues renders no instanceId, so a record-driven deploy loses PluginCatalog__InstanceId (and PluginCatalog__HomeUrl) — the deployment-config:{InstanceId} principal that authorizes named commercial packages. PartnerRe states both in extraPortalConfig as a workaround.

Ask

  1. A typed bundles block on DeploymentContent (registry, sources, optional identity fallback) and its render in HelmValues (MeshWeaver.Plugins), so an estate outside Systemorph's subscription can declare its bundle source on the record.
  2. Either the chart honours ingress.sessionAffinity (merging nginxAnnotations when enabled), or the renderer folds it into ingress.annotations.
  3. HelmValues renders pluginCatalog.instanceId from registryInstanceId when it is stated.

Until (1) lands, partnerre-test's Rolls stay refused on the bundles.* paths by design — retiring them would bring back the 2026-09-28 NodeType defect.

🤖 Generated with Claude Code

Dominant language
C#
Stars
12
Forks
5
Avg merge
5h 57m
Merged PRs (30d)
967

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Systemorph/MeshWeaver

All issues in Systemorph/MeshWeaver

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.