Skip to content

Releases: KernAIO/module-chat

v0.6.2

Choose a tag to compare

@github-actions github-actions released this 06 Sep 14:31

0.6.2

Patch Changes

  • chore: check the packed tarball can resolve its own imports

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 06 Sep 14:26

0.6.1

Patch Changes

  • chore(renovate): drop dead @kernhq automerge rule

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 11:23

0.6.0

Minor Changes

  • 33c85c8: Fill a workspace created with example content: five channels beside the two chat already makes, a
    conversation in each and a thread in #engineering.

    Two things this module has that the others do not, and both decide how the seeder is written.
    #general and #random exist before anybody has done anything — chat makes them on
    core.workspace.created — so a channel is found or made, never assumed either way: the two events
    arrive on different subjects with no ordering between them. And the "has anybody used this
    workspace?" guard counts messages somebody wrote, because creating a channel posts a system
    message announcing it, and a guard that counted those skipped every seed while reporting success.

v0.5.3

Choose a tag to compare

@github-actions github-actions released this 06 Sep 10:51

0.5.3

Patch Changes

  • build: force one @kernhq/kernel copy with pnpm.overrides

v0.5.2

Choose a tag to compare

@github-actions github-actions released this 06 Sep 10:40

0.5.2

Patch Changes

  • build(deps): raise @kernhq/testing to ^0.1.14

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 05 Sep 19:29

0.5.1

Patch Changes

  • e0593f9: Peer @kernhq/contracts@^0.8.0, which adds archivedAt to WorkspaceSummary. A caret on 0.x does
    not cross a minor, so the previous ^0.7.0 could not reach it.

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 05 Sep 18:18

0.5.0

Minor Changes

  • ca447a2: Incoming webhooks are gone: the chat.webhooks.incoming procedure, the POST /api/chat/webhooks/{token} route and the mod_chat.webhooks table. Nothing could ever create a
    token — the only thing that ever named a chat.webhooks.create procedure was the comment above the
    table, written in the commit that added it — so there was no procedure, no insert and no screen, and
    the endpoint could only ever answer 404 against a permanently empty table. It was a feature nobody
    could turn on, advertised in the module's OpenAPI document (38 paths before, 37 after). Dropping the
    table loses no data on any instance, and 0001_drop_webhooks.sql is guarded with if exists so the
    folder still survives a replay. Incoming webhooks can come back as a real feature — create, list and
    revoke, with a screen to manage the tokens.

Patch Changes

  • c892f45: The conversation header no longer carries a Huddle button. Calls are not built, so the button was
    permanently disabled on the busiest screen in the product — in every channel and every direct
    message, for everybody — and its only explanation was a title on a natively disabled button,
    which nothing can reach: a disabled button is out of the tab order and receives no pointer events,
    so neither a keyboard nor a screen reader nor a hover ever got the reason. It comes back when calls
    do.
  • 02bae7a: The command palette's "New channel" opens the dialog. It runs /chat?new=1, because a command can
    only navigate — and nothing read that parameter, so the command moved you to the chat page and
    stopped there. The sidebar consumes it now and puts the URL back without it, so running the command
    again after closing the dialog opens it again.
  • 9f8a3d7: Peer and develop against @kernhq/kernel ^0.10.0. A caret on 0.x does not cross a minor, so the
    previous ^0.9.1 could no longer reach the published framework — invisible locally, where the
    workspace copy is linked, and a lint failure in CI, which installs from the registry.
  • 1100063: Archiving a private channel no longer announces it to the whole workspace. realtime.change
    publishes on the workspace channel, which every socket subscribes to for every workspace it belongs
    to the moment it authenticates — so archiving or restoring a private, object or group channel told
    everybody in the workspace that the channel exists and what had just happened to it, whether or not
    they may open it. The change now goes to the channel's own members, the same audience a private
    channel's creation already used, and announce.test.ts asserts the frames.
  • b4a1a17: The composer's voice and video buttons say why they cannot record. They were disabled whenever the
    browser has no MediaRecorder — which is also every instance served over plain HTTP, where
    navigator.mediaDevices is absent — and a disabled button explains nothing to a pointer, a keyboard
    or a screen reader. Pressing one now opens the recorder bar on its "this browser cannot record"
    message, which was written and translated but could never be reached.
  • 800cdb2: A row in the unread-chat widget opens its conversation. It linked to /<ws>/chat?channel=<id>
    while the chat page reads ?c=, so every row on the dashboard landed on chat with nothing selected
    and the "pick a conversation" empty state.

v0.4.16

Choose a tag to compare

@github-actions github-actions released this 03 Sep 22:11

0.4.16

Patch Changes

  • chore(deps): take @kernhq/testing ^0.1.12, which has permissionMatrixDiff

v0.4.15

Choose a tag to compare

@github-actions github-actions released this 03 Sep 22:05

0.4.15

Patch Changes

  • c5a5b5d: The migration folder survives being applied twice. 0000_init.sql created every table, index and
    policy without a guard, so a replay — which drizzle performs the moment any file in the folder is
    edited — threw on the first table and stopped the chat service, and the realtime gateway with
    it, from starting. Three tests now guard the module: the folder applied twice to a database created
    from nothing, a cross-tenant probe under a role that cannot bypass row-level security, and the
    permission matrix blessed in full.

v0.4.14

Choose a tag to compare

@github-actions github-actions released this 03 Sep 21:27

0.4.14

Patch Changes

  • 435c8bb: The chat widget's "Rows" setting shows its label again instead of a raw message key; it now reads
    the shared common.setting_rows string like every other widget.