Skip to content

NotiOps v1.0.16

Choose a tag to compare

@xiuleiyy xiuleiyy released this 28 Aug 04:24
· 3 commits to main since this release

NotiOps v1.0.16

This release is about who answers. A new general chat now opens with a
conversation-object picker: keep talking to NotiOps, or hand the whole
conversation to your own AWS DevOps Agent, which answers directly — the BFF
talks to its control plane, so no Bedrock model is involved, nothing is billed to
the deployment's model capacity, and NotiOps reports 0 tokens for those turns.
The other half of the release is a parity fix: on the one-click (CloudFormation)
path the Notifications inbox was always empty — the producer side simply did
not exist there. Both deployment paths upgrade in place.

⚠️ Sample/reference code, not a production-ready product. Review it with your
own security, legal, and compliance teams before deploying into an AWS account.

Features

  • DevOps Chat — pick who answers a general chat. Starting a chat outside any
    topic now shows a two-segment control: NotiOps (default) or your DevOps
    Agent
    . Choosing the second one makes every turn in that conversation go
    straight to your own agent:

    • No model, no token cost on our side. The turn does not go through Bedrock
      or the NotiOps agent runtime; the BFF calls the DevOps Agent control plane
      (CreateChat / SendMessage) and streams the reply back. Usage counts
      against your DevOps Agent, and NotiOps reports 0 tokens for the turn. This
      also means the path works on a deployment where no Bedrock model has been
      enabled yet
      .
    • It reads like the agent's own page. Text is forwarded delta by delta, not
      buffered into blocks, and a transient progress line covers the first seconds
      before the answer starts. Multi-turn context is kept per conversation.
    • The choice is skippable and then fixed. Not choosing anything and just
      typing means NotiOps, exactly as before. After the first message the object
      is locked for that conversation (a tag in the header says which one), because
      the two sides have different answerers and different tool sets — switching
      mid-conversation would silently change what the history means.
    • The toolbar slims down to what actually applies: no web search, no model
      selector, and one per-turn checkbox — Deep investigation. Unchecked you
      get streaming Q&A; checked, the same turn runs your agent's full multi-signal
      root-cause investigation and returns a report (minutes, not seconds). The
      / skill menu works here too: the Skill body is inlined into the message
      that is sent, so nothing needs to be published first.
    • Read-only posture is preserved. If your agent is waiting for a human
      approval, NotiOps says so and points you at the DevOps Agent console; it
      never answers a pending approval on your behalf — that API is neither called
      nor granted.
    • Prerequisite: the account has to be onboarded to a DevOps Agent Agent
      Space. If it is not, the segment is greyed out and says why.

    The new permissions live in the construct shared by both deployment paths, so
    one-click and setup.sh get this identically.

  • Notifications now work on the one-click path. The inbox page used to be
    permanently empty there: the read side was shared between the two paths, but
    the producer (EventBridge rules → Lambda → the inbox table) only existed in the
    setup.sh stack — with no error, no log line, and nothing in the stack outputs
    to hint at it. The 10 signal sources (AWS Health, CloudWatch alarms, Cost
    Anomaly, Trusted Advisor, GuardDuty on by default; Backup, EC2 Spot
    interruption, Auto Scaling launch failure, RDS, Config off by default) are now
    a single shared module that both stacks import, and a new artifact,
    web-notif.zip, ships with the release (the one-click stack downloads it the way
    it already downloads the other three).

    Turning an individual source off differs by path, on purpose: setup.sh takes
    -c webNotif<Id>=off at synth time, while on the one-click path you disable
    that EventBridge rule in the console — the template does not manage rule
    enablement, so your change survives a template upgrade.

  • The / menu lists every Skill, not a truncated set: a count in the header,
    scrolling, filtering by id or name, arrow keys plus Enter, and a note on each
    of the three DevOps Agent paths saying that your agent — not NotiOps — is what
    executes the Skill.

  • The BFF Lambda runs on Node.js 24 (was 20).

Fixes

  • Already-deployed environments never received newly added models. Both
    catalogue seeders wrote with attribute_not_exists(PK) — write once, never
    again. The first deployment stored the catalogue as it was that day, and every
    model added later was invisible to that environment: no error, no log, just one
    fewer entry in Admin → Models and in the model selector. GLM 5 went missing
    exactly this way. Seeding is now additive: it tops up entries the catalogue has
    and the table lacks, and does not touch your enabled set or your default model
    — a top-up must never quietly switch a new model on for you. Both paths are
    fixed, and the one-click stager was granted the reads/updates it needs to do it.

  • The default chat model is Claude Sonnet 5 again for new deployments and new
    conversations. Grok 4.6 is still in the catalogue and still selectable; it is
    just no longer the default.

  • Three display bugs in the new DevOps Chat path, all of the "no error, wrong
    pixels" kind: the answer could be printed twice (the terminal event carries the
    accumulated text, which was appended to what had already streamed), the bubble
    could stay empty when the agent asked a clarifying question instead of
    answering, and tool arguments could flash through the investigation panel as
    raw JSON.

  • Clicking "Investigate" on a notification did not tick the direct
    deep-investigation box
    , so that turn silently went through the model-rewriting
    path instead.

  • Coming back to a topic left your previous question sitting in the composer.

  • Appearance fixes: the selected conversation-object segment in both light and
    dark themes, the header tag (it used to be a bright patch in dark mode), the /
    menu now aligning with the composer and sharing its background, the account chip
    in a reply's footer losing its stray border, and the footer collapsing into a
    single line. The disclaimer under a DevOps Agent answer now names the DevOps
    Agent rather than NotiOps.

Docs

  • User guide (EN) has a new
    section on picking a conversation object — what each side is good at, what it
    costs, and the fact that the choice locks — plus the difference between the two
    ways to launch a deep investigation, who executes a Skill on each path, and a
    corrected model list and / menu description.
  • Technical design
    (EN) documents the three paths that hand a turn
    to your DevOps Agent side by side, why the control plane is used instead of the
    agent's MCP/A2A tool surface, and the streaming contract.
  • One-click deployment
    (EN) now lists all four capabilities that
    the Agent Space parameter unlocks, and notes that two of them are the fastest
    way to get value out of a deployment with no Bedrock models enabled yet.
  • New Web console screenshots in the README.

Upgrading

setup.sh:

git pull            # or re-clone at tag v1.0.16
./setup.sh          # re-run; existing resources are updated in place

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. This upgrade adds the notification
EventBridge rules and their Lambda to your stack; it 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 — the model catalogue top-up adds missing entries
only.

If you want DevOps Chat or either deep-investigation path, set
EnableDeepInvestigation to yes — the four DevOps Agent capabilities all
share the one Agent Space that parameter creates. Left at no, those controls
stay greyed out and the rest of the product is unaffected.

Do not mix assets across releases — the template and the four .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)

8d429001fec50f6565916b6d2913ca39d8e85df7712a016f897024540dbdf01d  bff.zip
4dac3050aa37ba831267461092d39e12bf771dde7a7fe4853d2aff6d4087f047  chat-dist.zip
562440c873bbf88e558ffbf6ef4d8e3ad80204f4404b78a1d996da7167f5ef89  web-notif.zip
7092306f5fa59c9b3eb008b1369f48e6a06593aa17f10530b21f44851a80de9e  agent-code.zip

Download notiops-webchat.template.json only. The four .zip assets 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-body limit — 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.