Skip to content

Release#742

Merged
scazan merged 18 commits intomainfrom
dev
Mar 10, 2026
Merged

Release#742
scazan merged 18 commits intomainfrom
dev

Conversation

@scazan
Copy link
Collaborator

@scazan scazan commented Mar 10, 2026

scazan and others added 18 commits March 6, 2026 15:06
Adds in a DB migration for a new notified_at column used in profile
invites to track when an invite is sent as well as be able to tell IF an
invite has been sent.
Copies cookies through to the i18n redirect so we don't end up in a loop
of stale refresh tokens.
Queues invites for draft processes so that invites are sent on the
launch of the process (with the exception of users who have ADMIN
access).

Adds in notifications around this:
<img width="605" height="607" alt="Screenshot 2026-03-06 at 17 12 56"
src="https://github.com/user-attachments/assets/4fc8a45e-7fd6-4a1e-9cce-53e3fad90014"
/>

<img width="1073" height="335" alt="Screenshot 2026-03-06 at 17 13 16"
src="https://github.com/user-attachments/assets/6cdfbbbf-eabb-4fa0-a275-3922908a836d"
/>

<img width="610" height="515" alt="Screenshot 2026-03-06 at 17 35 21"
src="https://github.com/user-attachments/assets/bb91c4fb-0646-4309-82ca-57ece123822b"
/>
## Summary
- Rewrite `createTransitionsForProcess` with date-based advancement
filtering
- Rewrite `updateTransitionsForProcess` with parallel operations
- Refactor `transitionMonitor` for batch processing and deferred state
updates
- Move transition creation to publish time (not instance creation)
- Add `ScheduledTransition` type and new exports from `@op/common`

**Part 2 of 3** in the transition scheduling logic stack:
1. `encoder-type-consolidation` (#660) — Encoder/UI type consolidation
2. **This PR** — Core scheduling logic
3. `transition-scheduling-tests` — Test suite

## Test plan
- [ ] `pnpm typecheck` passes
- [ ] `pnpm format:check` passes
- [ ] Transitions are only created when instance is published (not on
DRAFT creation)
- [ ] Date-based phase advancement correctly filters eligible phases
- [ ] Batch processing handles concurrent transitions
Adds in a Sheet component to be used for mobile menus primarily.

https://apps-workshop-git-add-sheet-oneproject.vercel.app/?path=/docs/sheet--docs

<img width="395" height="669" alt="Screenshot 2026-03-08 at 22 28 57"
src="https://github.com/user-attachments/assets/13d22f81-0d58-4911-80c7-586b718b48ab"
/>

We'll use this moving forward and replace our sidepanel since this new
one is more flexible and based on Intent UI.
To whomever may be reviewing this PR,

**[Blacksmith](https://www.blacksmith.sh/) is the fastest way to run
your GitHub Actions.**

## What does this PR change?

This PR has been automatically generated by a team member in your GitHub
organization using Blacksmith's [Migration
Wizard](https://docs.blacksmith.sh/introduction/quickstart), or MigWiz
for short. This PR changes the following:

1. Your selected workflows will now run on Blacksmith's 2x faster
hardware (e.g., `runs-on: blacksmith-2vcpu-ubuntu-2204`). Learn more
about the [different instances available to choose
from](https://docs.blacksmith.sh/blacksmith-runners/overview#runner-tags).
2. Your jobs running on Blacksmith will now have all official GitHub and
popular third-party cache actions automatically interact with our 4x
faster, colocated cache. Learn more about [Blacksmith's actions
cache](https://docs.blacksmith.sh/blacksmith-caching/dependencies-actions).
3. Your GitHub Actions will now actually be observable. Learn more about
Blacksmith's
[logging](https://docs.blacksmith.sh/blacksmith-observability/logs) and
other
[observability](https://docs.blacksmith.sh/blacksmith-observability/dashboard)
features.
4. Your Docker builds will now automatically share their Docker layer
cache, resulting in up to 40x faster builds. Learn more about
[Blacksmith's Docker layer
caching](https://docs.blacksmith.sh/blacksmith-caching/docker-builds).

## FAQ

- Is this free? The first 3,000 minutes per month are free.
- Who uses Blacksmith? Clerk, Ashby, VEED, and 600+ others.
- What's the catch? There is none. Merge this thing already.

---------

Co-authored-by: blacksmith-sh[bot] <157653362+blacksmith-sh[bot]@users.noreply.github.com>
Co-authored-by: Valentino Hudhra <v.hudhra@gmail.com>
## Summary
Updates the process builder toggle components to match the Figma design
specifications.

## Changes
- **ToggleRow component**: Replaced tooltip with description text
displayed below the label
- **Visibility toggle**: Changed from "Keep this process private" to
"Open for learning" with inverted logic to better communicate the
default public state
- **Typography**: Updated text sizes to match Figma (title: text-base,
description: text-sm)
- **Spacing**: Improved layout spacing between toggles (space-y-4)
- **Translations**: Added new translation keys for all supported
languages (en, es, pt, fr, bn)

## Design Reference
Figma:
https://www.figma.com/design/u4YWqQeNlAosEjs1lrsGqf/%F0%9F%99%8B-Decision-Making?node-id=7006-13531

## Testing
- [x] Dev server compiles without errors
- [x] Translation keys added to all language files
- [x] Component matches Figma design specifications
There is a bug where the scroll position jumps in some instances when
the user is interacting with a proposal that contains dropdowns. This
addresses it by setting the proposal editor container height to the
height of the viewport and allowing that to scroll.

This video shows before (on the staging server) and after (preview
build)


https://github.com/user-attachments/assets/755e86dc-bf4e-4668-ad13-4a825d5b1a61
- Changes process builder validation so that the steward is not
required.
- Sets default steward value when the process is created (save value as
process owner)
- Loads steward value when loading a process instance

<img width="621" height="462" alt="Screenshot shows disabled field with
text in the description explaining that only process owners can set the
process steward"
src="https://github.com/user-attachments/assets/e64d2248-29a7-4ecc-9d2f-b114e0c87694"
/>
Fixes an e2e test that was failing after adding in notified_at

---------

Co-authored-by: Valentino Hudhra <v.hudhra@gmail.com>
- Add `minValue`/`maxValue` props to `NumberField` with built-in on-blur
validation and error display
- Wire budget field to use `maxValue={maxAmount}` and `minValue={0}` for
immediate feedback

Caveats:
- Not dealing with i18n in this PR because we haven't settled on a
strategy yet.
## Summary
- Skip template validation when updating proposals in draft status
- Fix stale data bug: validate `data.proposalData` instead of
`existingProposal.proposalData`
- Update tests accordingly
## Summary
- Switch `FileDropZone` `acceptedFileTypes` from file extensions to MIME
types so drag-and-drop filtering works correctly (browser drag events
only expose MIME types).
- Update `ProposalAttachments` to pass MIME types instead of extensions.
- Add Storybook story for accepted file types variant.
Updates various info displays on processes based on what is indicated in
the input subtitles.

Maps the About this Process, the title for the phase, and the headline
of the phase.
<img width="1619" height="544" alt="Screenshot 2026-03-09 at 21 06 14"
src="https://github.com/user-attachments/assets/0d09b0de-d7e0-437b-96e4-6b74d51cae94"
/>

<img width="1612" height="669" alt="Screenshot 2026-03-09 at 21 06 32"
src="https://github.com/user-attachments/assets/a79f8428-7101-4854-b7c8-27a5b5f16174"
/>

Also removes some legacy handling code.
This fixes the link to the decision process when clicking on an avatar
which previously defaulted to /profiles/slug
…bility (#730)

## Summary
- Draft proposals now only visible to users with proposal-level access
(creator + invited collaborators)
- Admins no longer see other users' draft proposals
- Submitted proposals remain visible to all instance-level access
holders
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants