Two weeks after releasing v1.0.0, we are shipping encrypted1on1 v1.2.0. This release focuses on daily usability and architectural integrity: solving the problem of evolving 1:1 question templates without distorting past meeting notes, giving participants control to edit their own contributions, and polishing core UX interactions.

The problem of historical fidelity in form templates

In any 1:1 meeting tool, the question templates you use inevitably evolve. For instance, in encrypted1on1, we wanted to expand the employee check-in’s “feelings” assessment from 6 coarse emotions to 12 nuanced states (adding options like calm, grateful, stressed, proud, bored, and lonely).

In standard applications, teams simply update the questions array. But in a 1:1 platform that preserves meeting history, that creates a subtle and dangerous distortion: if you change the template globally, past meetings conducted months ago are silently rendered against the new definition. An option an employee left unchecked because it did not exist at the time suddenly looks indistinguishable from an option they saw and consciously rejected.

To protect historical fidelity, v1.2.0 introduces anketa form versioning. Each meeting form is stamped with formVersion at creation time. Historical forms stay permanently locked to schema v1, while new meetings automatically use schema v2 with the expanded feelings checklist.

Self-edit and deletion for meeting outcomes and comments

A productive 1:1 meeting is dynamic: people brainstorm, refine action items on the fly, and sometimes post notes with accidental typos. Previously, once an item was committed to the shared outcomes list or discussion thread, it could not be revised.

In v1.2.0, users can now edit and delete their own items in “Meeting Outcomes” and their own comments in the anketa. Crucially, this is protected by strict author-scoped security policies: participants have full freedom to refine their own words, but no user can modify or erase statements made by their counterpart.

Rescheduling upcoming meetings & display names

This release also addresses everyday scheduling realities and visual clarity:

  • Reschedule upcoming meetings: In earlier versions, rescheduling was only exposed once a meeting was marked overdue. Now, when calendars conflict or deadlines shift, upcoming meetings can be rescheduled directly from the anketa page.
  • Human display names: Raw email addresses and internal UUIDs across headers, counterpart cards, and meeting summaries have been replaced with friendly display names.
  • Dark mode contrast & automated WCAG CI: Badge colors were retuned for optimal dark-mode readability, backed by an automated WCAG contrast check in our CI pipeline to prevent visual regressions.
  • Build transparency: Self-hosters can now display the running version and git commit hash in the footer via the SHOW_VERSION configuration flag.

Deploying v1.2.0

The v1.2.0 release is backwards-compatible and includes automatic database migrations for both SQLite and MySQL deployments. You can pull the container image now:

docker pull ghcr.io/aleksejs1/encrypted1on1:1.2.0

You can also explore all the new form options and UX refinements live without signing up at demo.private1on1.eu.

Read the full changelog and technical discussion in the repository on GitHub.