NotiOps v1.0.15
NotiOps v1.0.15
This release is mostly one bug. On the ./setup.sh path a deployment could
finish reporting success while Web Chat answered every question by echoing it
back — Got it — you said: "…" (Echo — AGENT_RUNTIME_ARN not set). The agent had
never actually deployed, and nothing in the output said so. If you are on
setup.sh, take this release. Whether you are affected depends on the day
you ran the installer, which is exactly why it is worth fixing properly rather
than documenting. Four one-click-path and Admin defects are fixed too, all of
the same silent kind: the feature was simply empty or missing, with no error
anywhere.
⚠️ Sample/reference code, not a production-ready product. Review it with your
own security, legal, and compliance teams before deploying into an AWS account.
Fixes
-
setup.shcould finish green while Web Chat only echoed. Two independent
causes with the same end state, and the same reason it was invisible: the agent
deploys before the web tier, a failure there printed one⚠line, and the
rest of the install carried on and succeeded. With no agent runtime ARN the BFF
falls back to echoing.uvwas never checked for. The AgentCore CLI shells out touvto
package the agent's Python dependencies — without it that step cannot
succeed.uvis now a preflight prerequisite in bothsetup.shand
scripts/deploy_agent.sh, with install instructions, and it is documented as
a prerequisite in the README.- The AgentCore CLI version was not pinned.
npm install -g @aws/agentcore
installed that day's latest. A newer CLI's deploy step rewrites the
repository's own CDK harness pin (@aws/agentcore-cdk) to a version whose
API no longer matches the checked-in CDK stack, so the TypeScript build fails
in about ten seconds, no CloudFormation stack is created, and there is no
runtime ARN. It also does not heal on a retry, because the rewritten
package.jsonpersists — and downgrading the CLI alone is not enough for the
same reason. The version is now pinned to a validated release, and both drift
states (wrong CLI version, rewritten harness pin) stop the deployment and
print exactly what to run, instead of degrading to echo.agentcore deploy
failures now also print the CLI's own step log, where the real compiler error
lives.
Already have an echoing deployment? One command repairs it — it diagnoses
read-only first, shows you the plan, and only then changes anything:bash scripts/fix_web_chat_echo.sh --region <your-region>
It restores the harness pin, installs the validated CLI, redeploys the agent,
injects the runtime ARN into the BFF, and verifies the result. Live settings
(multi-account mode, allowed origins) are read back from your deployment first,
so the repair cannot quietly downgrade them. Add--diagnoseto look without
touching anything. -
One-click: Admin → Models showed an empty table. The
setup.shpath seeds
the model catalogue after deploying; the one-click path never did, so the Admin
model page listed nothing — not even the default model — while chat itself
worked, because the frontend carries a built-in fallback list. The stack now
seeds the catalogue, with a conditional write: anything you have already changed
in Admin is never overwritten, and updating an existing stack backfills the seed. -
One-click: updating an existing multi-account stack applied no fixes to the
multi-account setup. Every property of that custom resource was static, so
CloudFormation saw no change and never invoked the handler — meaning handler
fixes shipped in a new template reached new stacks only. -
The factory default model could not be saved in Admin → Models. Saving
probes the default model with a real request, and the probe asked for only 8
output tokens — below Grok 4.6's minimum. The resulting validation error was
classified as "this model is broken" and the save was rejected. The probe now
asks for 64, and "the request asked for too few output tokens" is no longer
blamed on the model. -
Dashboard AI insights were silently empty in two cost views and one support
view. Those three requests passedtemperature: 0, which Claude Sonnet 5 no
longer accepts, so every call failed — and the error was swallowed into a
generic "no insight" state. The parameter is gone and the request shape is now
covered by tests.
Features
-
GLM 5 (
zai.glm-5) is selectable in Web Chat, alongside Claude Sonnet 5 /
Opus 5 / Haiku 4.5, Amazon Nova Pro, DeepSeek V3.2, the GPT-5.6 family, and
Grok 4.6. Enable it in Bedrock → Model access if you want it.Note it has no cross-Region inference profile, so it only exists in the
Regions it has shipped to — measured available inus-east-1,us-west-2and
ap-northeast-1, and absent inap-southeast-1,eu-west-1and
eu-central-1. DeepSeek V3.2 has the same property. That is why the default
model stays Grok 4.6 (global.xai.grok-4.6): a default has to work in
whichever Region you deploy into, and a Region-limited default fails on the
first message with nothing but anAccessDeniedExceptionto go on.
Upgrading
setup.sh:
# uv is now a prerequisite — install it first if you do not have it
curl -LsSf https://astral.sh/uv/install.sh | sh # or: brew install uv / pipx install uv
git pull # or re-clone at tag v1.0.15
./setup.sh # re-run; existing resources are updated in placeIf your current deployment only echoes, run scripts/fix_web_chat_echo.sh (see
above) rather than re-running the whole installer — it is faster and it verifies
the outcome.
One-click (CloudFormation): download notiops-webchat.template.json from the
assets below and update your stack with it — Replace existing template, then
Use existing value for every parameter. Upgrading does not resend the
invitation email, change the admin credentials, revert Admin settings, or clear
chat history.
Your data is not touched: the conversation and configuration tables are Retain,
and re-seeding is idempotent.
Do not mix assets across releases — the template and the three .zip files are
cryptographically bound (each checksum is baked into the template and the release
tag is part of every object key), and the stack verifies every checksum before
use.
Asset checksums (sha256)
dca5b802fd5deb17496fa750593f45176820c120bedeeec3b91f7d2adda2d073 bff.zip
542651bc7efa71614b8999436bd5b2b16660f56cad4b28e86983b096c88a0bc4 chat-dist.zip
f8f6ba0be5b9ff97e3bac20862e1c4a0263c0d5bf47d529c30ae0b4b3eb9205d agent-code.zip
Download
notiops-webchat.template.jsononly. The three.zipassets are
pulled into a bucket in your account by the stack itself; you never need to
download them by hand. The template is above CloudFormation's 51,200-byte
--template-bodylimit — from the CLI, upload it to S3 first and pass
--template-url.
See README for full setup, one-click deployment
for the console walkthrough, and the documentation for architecture
and operations.