Sellers plan what they will sell. Dealers plan what they will buy. One calendar, one Sequoia, and the market meets itself before a vehicle is ever listed. ๐ฒ
Planning v2 puts a buy plan beside the sell plan, reads the market for both sides, and keeps every limit private. Off by default, switched on per organization.
A seller has a lot of midsize SUVs that will be ready in the second week of November.
A dealer, a few hours away, needs a handful of exactly those by the end of the month.
Today those two facts meet when the listing goes live, if the dealer happens to be looking that day. The seller has no idea anyone wanted the lot. The dealer has no idea it was coming. Cypress sees both sides of every deal and, until now, could not see either side's plan. ๐
3.4.0 closes the loop. ๐
๐ The loop closes
Cypress 3.0 gave sellers a plan: goals, lots, six sale windows, and a hand-off to Sell. 3.4.0 gives dealers the other half and puts both on one tool:
- Sellers plan what they will sell, by lot and by window.
- Dealers plan what they will buy, by make and model, by week, at a target price and a maximum.
- Both plans sit on one calendar, the same quarter bar and the same weeks, so "W47" means the same thing to the seller who plans the lot and the dealer who needs it. ๐
- Sequoia reads the market for both sides, says why, and waits for a person to decide. It suggests; it never acts.
- Each side sees what the other side's plans say is coming, as counts and ranges, anonymously, early enough to act on it: "4 dealers plan to buy 11 like your W47 lot this month: pull forward?" to the seller, "about 14 midsize SUVs from 3 sellers in the next 6 weeks" to the dealer.
- Cypress staff broker the fit from a desk of their own, with both sides' limits in front of them. Neither side ever sees the other's. ๐ค
The Cypress product team's rule for the market board: there is no posting and nothing to switch on. Being part of the Cypress ecosystem is what feeds it, anonymously: never names, prices or VINs.
It was also walked, round after round, by the person who owns it, in a seeded demo world. Every round turned up something a test could not see: a header that said "2 bought" over a Progress tab that listed many more, a Market tab that was empty because no row could ever qualify, a sold car drawn in black. This release carries what those walks changed. ๐ถ
๐ฒ The Sell plan: decide what leaves, and when
Shipped in 3.0, and its plan logic is unchanged. 3.4.0 gives it the rail, the market, a schedule you can read at a glance, and a baseline of its own.
- ๐ฏ Quarter goals in the fleet's own units: Units, Cash by date, Fleet shape and Renewal pacing, each a card with its meter, what is in motion and the gap, and the three months underneath.
- ๐งญ A mandate that ranks the lots: Preserve fleet value, Balanced renewal, Migrate to EV or Maximize cash release. The header's Plan my quarter with Sequoia sits beside Ask Sequoia, the same two buttons as on the Buy plan.
- ๐ช Seven steps that read from the data: Mandate, Goals, Bench, Schedule, Approve, Hand to Sell, Execution. What needs you leads the Plan tab: "Hand 2 vehicles to Sell by Sep 3", and Sequoia's demand cards beside it.
- โ Approve the quarter. It approves the goals and lot targets on screen, and the week-by-week schedule moves freely underneath. The bar reads Approved Oct 3 ยท 4 changes since.
๐ The schedule, readable at a glance
The owner's walk asked a plain question: "as we can not see all the weeks, maybe we miss something." So the schedule now says it.
- Every lot carries its own status. A thin bar and one line under the lot's name: "3 sold ยท 2 in market ยท 1 handed ยท 1 scheduled ยท 2 to plan", non-zero states only, where the money is first. A lot with every vehicle sold reads All sold and moves below an All sold divider, in a lighter fill, because it is achieved. โ
- One palette, everywhere. Scheduled is the plan's primary, handed to Sell is sky, in market is amber, sold is solid emerald with a check (no longer black), missed is red with a warning mark. Planned demand has a hue of its own, violet, so a dealer's plan is never read as one of the seller's states. The cells, the legend, the bars, the chips and the stage chips all read the same table, and every pair reaches WCAG AA. ๐จ
- One window header. Six two-week sale windows, each laid out the same way: its label and state, its dates, hand to Sell by Oct 14 (and "โ past due" in amber when the date has passed with vehicles waiting), its counts as chips, and two buttons that always line up: Analyze and Hand to Sell.
- Actions that are always there. They no longer appear on hover. When one cannot apply it is drawn off and says why ("Nothing scheduled in this window yet"), and Hand to Sell reads Handed when nothing is left to hand over. ๐
- Analyze opens the cohort analysis: composition, crowding, capacity, cash and prep readiness.
- Hand to Sell previews the exact set, then hands it over: the one market effect in planning. A vehicle enters Sell with the plan value it was scheduled at, frozen, so what the plan expected can be compared with what the market paid. One still unsold at the window's close is carried into the next, and the miss is counted.
๐ช Sale windows, with the market in them
- The window panel opens on "Market for this lot": the dealer demand the cell's tooltip already says ("Wanted by dealers, next 13 weeks") and how much other sellers plan to bring in the window: Light, Normal or Heavy.
- Taking vehicles out of a window is one menu that asks first: Back to the bench (still for sale this quarter), Park untilโฆ (not this quarter; back on the bench on the first day of the quarter you pick) or Back to operation (it leaves the sale plan and keeps working in your fleet). The confirmation counts only the vehicles that really move.
- Moves can be undone from the toast. Undo reads the plan again first and leaves alone anything that changed since: "3 changed since and were left as they are." โฉ๏ธ
๐ Review
- The scorecard scores only the quarter's own windows. A window counts in the quarter that holds its eighth day, so Q3's Review no longer lists weeks of Q4. It marks Quarter starts Oct 1 and Quarter ends Dec 31.
- A closed window writes a review of what the plan expected against what happened. It opens with a chevron and Show details, and a closed window's name on the scorecard opens and scrolls to its review. You record a verdict, and the next plan starts from it.
๐ฏ The Buy plan: a dealer's quarter, planned
The first buy plan we built gave dealers goals, targets and matches, and it never shipped. Next to the Sell plan it felt like a form: states typed as comma-separated text, make and model as free text, no sense of the market, nobody saying "this one, now". ๐
The Buy plan that ships has the Sell plan's shape and its own tools.
Goals and budget
- ๐งญ A mandate for the quarter: Restock what sells fast, Keep my usual mix, Most units for the budget or Buy ahead of supply. It steers what Sequoia drafts and what it ranks first.
- ๐ Both goal cards are always there. Units and Budget show on every quarter. A goal you have not set says so ("No budget set") and offers a button, instead of quietly disappearing.
- ๐ต "Spent" means one thing, on every surface: money on vehicles you have already bought, in the header, the Budget card, Review and the Buyer Hub card. Vehicles in closing are counted apart.
- ๐ช Steps that read from the data: Mandate, Goal & budget, Targets, Market check, Buying, Review, and What needs you first.
Targets and tracks
- โ๏ธ A target editor that knows the market. Make, Model and Trim autocomplete with counts on Cypress; Body, Fuel and Condition are dropdowns of what exists; one picker for regions and states. A target is a make and model or a vehicle class, how many, by which week, a target price and a maximum, and a track.
- ๐ฒ A price from market value, with its basis and trend: a target 5% under and a maximum 5% over, with โ10 / โ5 / 0 / +5 steps and what it does to the quarter's budget. With no basis, Sequoia suggests nothing and says so.
- ๐ A live preview beside the form: what fits now (exact and near), planned supply as a range ("a few", "5โ9", "10โ19", "20+") and how soon the target should fill. Errors sit under the field, never in a toast.
- ๐ค๏ธ Three tracks, each with its own color and three plain lines (how near a match must be, where the offer sits, how you are told): Aggressive (green: matches from 80%, offers up to the maximum, instant alerts), Balanced (violet, the default: from 90%, near market value, a daily summary, instant for a high-priority target) and Conservative (blue: exact matches, at the target, a daily summary).
Matches
- ๐ญ Cypress matches every hour against live listings, never the dealer's own vehicles, and groups several from one seller.
- ๐๏ธ A near match says what it misses: "Trim LE, not XLE". Make, model, class and the target's markets are never relaxed, and a vehicle more than 30% over the mileage limit is no match at any score.
- ๐ Notices follow the track. Instant alerts (an Aggressive target, or a Balanced one marked high priority) reach your admins and fleet managers as a Cypress notification and an email within the hour. The daily summary (every morning, when there is something new) lists the rest, Conservative included.
โ๏ธ Buy it now, or wait?
The Buy analysis answers it on the Marketplace vehicle page and in the target panel, in four plain blocks:
- Market position: the ask, the market value, what Cypress expects, your target and maximum, and what Sequoia would offer.
- Price to your need-by: the market value along the Cypress trend to the week you need the vehicle, and what waiting likely does.
- Buy now or wait: the other vehicles that fit, what sellers plan before you need it, how long this one has been listed, and one read from Sequoia.
- Fit and budget: the match and what it misses, what you usually pay for the make ("For a Toyota, you usually pay $22,000โ$26,000"), and the quarter's budget after this ask.
๐ท๏ธ Sequoia never offers above the asking price. A target's price is set for the target, not for one listing, so on a listing that asks less it would have sat above the ask. It never does now. The card says "Buy at the ask: $23,650 is under what Sequoia would pay", and Sequoia still never sends an offer on its own. The analysis is built only from what the dealer is already allowed to see: the public ask, Cypress market values and sales, the dealer's own plan and purchases, and the forecast's ranges.
Progress and Review
- โ Progress fills itself. A Cypress purchase counts toward the target it fits when its closing starts, and as bought when it completes; a cancellation stops counting. Bought somewhere else? Record a purchase made elsewhere.
- ๐ A target reads what became of it: Filled when nothing is left to buy, Ended ยท 3 short when its quarter is over with units missing.
- ๐ Review reads like Cypress analytics. Planned vs actual shows the goal, the budget and each target as bars with a standing chip ("Met", "+2 over", "$25,000 left", "$12,000 over budget", the last one drawn as a warning). Week by week puts the plan beside what is in closing and what was bought: this week's own purchases next to the running totals, each week opening to the purchases in it (vehicle, price, target, when the closing started), and the chart reading out any week on hover. It marks where the quarter starts and ends.
๐ One live plan, with a baseline
Both plans are live, and neither shows a version number any more: the Sell chip reads Live ยท updated 12 min ago and the Buy plan wears the same one.
When the goal and the targets look right, Approve quarter keeps a baseline: the goal, the budget, the mandate and the quarter's targets as they stood. On the Buy plan it holds the dealer's own fields only, with no match, no purchase and no seller. ๐
- The bar tells you where you stand: Approved Oct 3 ยท 4 changes since, word for word the same line on both sides, with Re-approve while something has changed.
- The approval is bound to what was on screen. If the plan moved since, Cypress says "The plan changed. Refresh and approve again." and reads it again. A quarter that is over, or has no goal, budget or target, cannot be approved.
- Review opens with the comparison. Planned vs actual sets the baseline's goal against what was bought, its budget against what was spent, and each target against what it filled (a target removed after approval says so). Changes since approval lists what moved in plain words: "RAV4 XLE: quantity 4 โ 6", "Added Chevy Malibu", "Budget $600,000 โ $650,000".
- The wizard can approve for you: its last step has a box, Approve this as Q4 2026's baseline, ticked when the quarter has none.
A live plan and a baseline when you approve: that is the base Scenarios will build on. ๐งฑ
โจ Sequoia, on both sides
Sequoia reads the market once an hour and stores what it found, so a page never computes the market while you wait. It is the same Sequoia on both plans, in the same look.
- ๐ช The rail is on every tab and every quarter, beside the plan (above it on a narrow screen). It folds to a handle ("Sequoia ยท 3 suggestions", amber when something needs you, a dot when something is new), remembers your choice per side, folds by itself while Cedar is docked, and a keyboard user can skip past it. Filters: All, Opportunities, Supply (on the Buy plan) or Demand (on the Sell plan), and Trends.
- ๐งฉ Every card shows its working. What it is; why, which opens to the numbers behind it; how confident Sequoia is; and what to do, with three actions you can tell apart: Ask Cedar on the left, a Later menu (Remind me next week, Not this quarter), and the action itself on the right.
- ๐ค Cedar knows which card you asked about. The card goes with the question, once, and Cedar reads its numbers and your own lot or target. It has no reason left to ask for the mileage, condition and ZIP of a vehicle you already own.
- ๐ The Decisions tab is the trail, in Sequoia's own look: what needs you first, then every suggestion and every outcome by day, each with its confidence, its reasons and the guardrail that made Sequoia ask. Badges read Suggested ยท Needs you ยท Done ยท Skipped ยท You decided. It follows the quarter on the bar, or lists them all with All quarters. On a quarter that is over it is the record only, with nothing left to decide.
- โจ Plan my quarter with Sequoia. On the Buy plan, one button drafts the quarter in four steps. Mandate; Goal & budget, from the last two quarters of purchases; Draft targets, three to eight, each with how many, by when, a target and a maximum, a track and why, which you keep, edit, remove or add to with the same form the Targets tab uses (yours say Added by you); then Markets & notices. Nothing is saved until Create plan. A dealer with no purchase history gets a draft from market signals alone, and the wizard says so. On the Sell plan the same button opens the quarter plan: mandate, goals and constraints.
๐ก๏ธ What Sequoia may and may not do
In this release Sequoia only suggests. The Decisions tab says so on its mode line, "Suggest ยท agentic mode arrives with Cedar", and lists the guardrails, folded into one row until you open it.
- It may, without asking: watch a vehicle, notify you, and draft a target, an offer amount or a lot move.
- It always asks first:
- any offer;
- a price above your target;
- spending more than 10% of the quarter's budget;
- any change to goals or the mandate;
- any change to the sell schedule.
Those items are marked Needs you, with the rule that applied. When Cedar's agentic mode arrives, it acts through this same trail and these same thresholds, and the byline already says who acted.
๐บ๏ธ The Market tab, and a forecast of the weeks ahead
A Market tab sits between Decisions and Review, on the Sell plan and the Buy plan. It shows today's market, and says so at the top of the tab ("Today's market"). From the top:
- โจ What this means for your plan. Sequoia's own market-driven items, up to four, with their actions: on the Buy plan hot specs, supply coming and price trends; on the Sell plan demand now, hot demand, competing supply and a trend that says sell sooner. Board rows below tie back to your plan with a chip ("You hold 8", "Your target: RAV4 XLE") and one line from Sequoia when it has something to say about that model. When it has nothing: "Nothing in the market calls for a change to your plan right now."
- ๐ฅ Hot on Cypress ยท selling fastest now. Up to eight models from the Cypress sales Sequoia's rail already reads, at least five sales behind each, with a sentence like "Sells in about 12 days on Cypress". Never a seller, a price or a count of sales.
- ๐ What dealers want ยท plans, saves and offers on Cypress. The models companies outside your own want. The chip reads Wanted on Cypress. It shows which models and never how many, and never which of the signals put a model there. A model your own company holds has no row: Planning already shows you that demand on your lots.
- ๐ What sellers plan to bring ยท this quarter. The models other sellers plan to bring before the quarter ends. With at least three sellers behind a model the row shows a range (under 10, 10โ19, 20+ vehicles); with fewer it shows a quiet Planned chip and no number.
Each row carries its live listings ("7 live") and which way Cypress's market value is moving, in words, with no price. And each row acts: Add a target like this, See live listings, or on the Sell plan Open my matching vehicles.
Nothing to post, nothing to switch on. The plans, searches, saves and offers of the companies on Cypress feed the board anonymously, and the tab says so. Demo organizations see a demo-only market, and every state ends with "From plans on Cypress. Plans change; nothing here is a commitment."
๐ญ Next weeks
Below Sequoia's cards, both rails gain a Next weeks forecast. It is not a Sequoia suggestion; it reads the plans that dealers and sellers keep.
- A dealer sees how many listings fit the plan today and, for each open target, what sellers plan to bring to market over the Next 2 weeks, the Next 6 weeks and This quarter, as ranges ("5โ9"). A line reads it: "More is planned before you need it." or "Little is live or planned before you need it: buy what fits now."
- A seller sees, per lot, the vehicles dealers want ("Wanted by dealers, next 13 weeks ยท 10โ19", "During W43โ44 ยท a few") and, per window, a level of what other sellers plan to bring: Light, Normal or Heavy.
A range appears only when at least two companies stand behind it; otherwise the rail says "No plans to read yet" or "Not enough plans to read". A seller also reads "Your plans count, anonymously, in the forecast dealers see: never your name, prices or VINs." Cedar reads the same forecast, the same board and the same warning never to promise supply or demand.
This is what closing the loop looks like on the page. ๐ฏ
๐งฉ Planning inside remarketing
When planning is on for an organization, it shows up where people already work. When it is off, there is no strip, no badge, no card and no extra request behind them, only a quiet link.
- ๐ฒ Seller Hub: a plan card with the goal meter, the current sale window, the vehicles that missed a window and Sequoia's demand card, and a Sell plan link for every seller. A demand card's link lands on the lot it names.
- ๐ The Fleet panel and Leads: the anonymous Planned demand callout, in violet, bound to the seller's own lots: "3 dealers plan to buy 9 like this in the next 4 weeks". Never a name or a price, never fewer than two dealer companies.
- ๐ช Marketplace: a Your Q4 plan strip with what is bought against the goal and how many listings fit an open target, with Show only these. A Sequoia badge marks every listing that fits a target ("92% ยท Midsize SUVs") in the grid, the list and the gallery. The vehicle page says "Fits your target Midsize SUVs (92%) ยท 4 still needed by W48", shows what Sequoia would offer (or "Buy at the ask"), and carries the Buy analysis. Without a plan: a quiet Plan your buying link.
- ๐ Buyer Hub: a plan card with the units and budget meters ("3 of 20 bought ยท 1 in closing"), the targets due soon and Sequoia's top card. Deals still say which target they count toward.
- ๐ Notifications: instant match alerts and the daily summary for dealers, and for each dealer's Cypress account manager a daily line of new matches. No new notification workflow was needed.
๐ข The Cypress desk (staff only)
Dealers and sellers never see the Cypress desk.
Cypress holds both sides of every deal, so Cypress staff get a tab for it on both pages: the Cypress desk, last in the bar, in a teal staff look with a Cypress only badge, so it can never be mistaken for a customer tab. It used to be called the Board, and on the Buy side it could show a row and not much else.
- The Buy desk lists every dealer's open targets with what fits on Cypress today and how well the best match fits. A row's dealer and target open the dealer's plan on that target, under that dealer's view; its live matches open the Marketplace on the target; its best fit opens the vehicle. Offer for dealer says why when it is off: "Not delegated: the dealer hasn't let Cypress make offers." with a Delegation settings link.
- The Sell desk is its twin: every seller's lots in the quarter's coming windows, with the dealers whose open targets want them. Three actions: Open seller's plan, Adjust pricing (acting for the seller, when they have let Cypress act for them) and Matching dealers, which opens the Buy desk on those targets.
- Both follow the organization in view. Acting for one dealer or seller, each desk shows that organization alone. In the portfolio, it shows everyone. Matching dealers opens the Buy desk across every dealer whose target wants the lot, not under one dealer's view.
- Both follow the quarter bar, and keep their filters in the address, so a view can be shared: how well it fits, when it is needed (including Overdue) or which windows, Delegated only, and a name search.
- Staff only, by construction: the desk routes answer 403 to anyone who is not Cypress platform staff, and an automated check fails the build if any file outside the staff modules reads a seller's floor.
๐ The quarter, everywhere
One bar, above the tabs, on both sides, the same on every tab, so nothing jumps when you move around. ๐
- The quarter and its dates: "Q4 2026 ยท Oct 1 โ Dec 31, 2026", with arrows, the mandate, the approval line and the quarter's actions, the primary one last on the right.
- The tabs follow it. On the Sell plan, Plan, Schedule, Decisions and Review; on the Buy plan, Plan, Targets, Progress, Decisions and Review. Decisions, Targets and Progress have an All quarters switch (the bar then reads "Q4 2026 ยท showing all quarters"). Vehicles and Market show today, and say so in the tab.
- One quarter, one count. Every number on the Buy plan reads the quarter on the bar. A purchase or target saved into another quarter says where it went: "Saved to Q3 2026. Switch to that quarter, or turn on All quarters, to see it."
- A closed quarter is history. Its last day has passed, so it wears a Closed badge with a lock beside its dates and a Go to Q4 2026 button. Nothing in it changes: every action that would change it (add, edit or remove a target, change the goal, move vehicles, hand a window to Sell, reset the plan) is drawn off with its reason, "Q3 2026 is closed. Switch to Q4 2026 to add a target.", and the server refuses the same write with a 409. What stays open is what is a fact recorded late: a purchase made elsewhere. Reading stays open too: Analyze, Review, Decisions as a record. The rail beside it still reads today's market, and says so: "Showing today's market โ you're viewing Q3 2026." ๐
- Review marks the edges of the quarter, on both sides.
๐ค Automations that keep to the plan
Flows were Planning-aware since 3.0. An audit found the gaps, and 3.4.0 closes them.
- ๐ท๏ธ Flows never touch a vehicle's plan label. Planning keeps a
plan-track label true so Sell's pricing rules can read it; no flow can apply or remove it now, nor another organization's label. The picker does not list it, publish refuses it, the run refuses it, and Cedar is not shown it. - ๐ฏ Plan events are opt-in. This changes existing flows. A flow runs on "missed its window" or "handed to Sell" only if its watch list names that event, like the
PLAN.*webhooks. A flow watching any field no longer runs on plan events; if one was built to, name the event. The editor says so where you pick the list. - ๐งช A dry run and publish that tell the truth. On planning stock, the dry run now says "blocked" for the steps the real run refuses (status, prices, valuation), and publish refuses them, and an offer sheet emailed outside Cypress, on a flow that works in Operation or Planning.
- ๐ญ Demo is a separate world. A global flow never runs for a demo organization or tells Cypress managers about its vehicles; the demo's own flows still run.
- ๐งน "Due diligence started" is gone from the palette. Nothing ever fired it, so a flow built on it never ran. Watch Status and branch on Due Diligence instead.
- ๐ Flows know the sales channel. A new Set sales channels action sets where a vehicle is sold (Cypress Marketplace, Storefront, Direct Links) by the same rule as the Integrations API, and flows can now react to the channel an offer came through: a Came through list on the offer triggers, an Offer came through condition,
{{offer.channel}}in notifications and emails, and a Vehicle reachable on condition. Recipe in the manual: a Storefront offer, then tell the fleet manager. - โ "Offer accepted" runs for every accepted deal. This changes existing flows. It used to run only when a seller accepted by hand. It now also runs when the auction rules accept an offer as it arrives, for a Buy Now, when a buyer accepts the seller's counter, and when an approved price change accepts an offer that now qualifies. Once per offer, with the amount and the channel it came through, and never the buyer.
- ๐ฃ๏ธ Plain words and a Cedar that knows Planning. Two events read "Benched as a candidate" and "Hand-to-Sell date arrived", the Hub shows labels instead of keys, and Cedar's builder takes a Works in. The manual gains Flows and Planning, with a recipe: window missed, then tell the fleet manager. ๐
๐ The API learns to buy, and keeps to the quarter (Integrations API 1.4.0)
A dealer's purchasing system can now keep the buy plan in step with what it already knows, over the same rules the Buy plan page uses. And a fleet system that drives the sell plan follows the rule the screen does, and the contract says so. ๐๐
-
A dealer's purchasing system reads and keeps the buy plan. The quarter (its goal, budget and mandate, its approval, its progress and a digest the approval binds to), the targets, a target's live matches, and the purchases, including one made somewhere else. It is the app's own code behind both doors, so they cannot disagree. ๐
-
Matches are a listing's public face, nothing more. The vehicle, a Marketplace link, the year, make, model, trim, mileage, state and the public ask, with the score and what a near match misses. Never a seller's name, never a floor or a limit, never a VIN, and never the Cypress desk's fit: a key is a dealer, and the staff view has no door on the API. ๐ซ
-
A purchase is a fact. A late sync from a purchasing system is recorded even for a quarter that is over; a target for a closed quarter, or the closed quarter's goal, answers
409 QUARTER_CLOSEDlike everything else. There is no idempotency key, so the docs say it plainly: read first, then record. ๐ -
Its own switch and its own scopes.
buy-planning:readandbuy-planning:write, and a403 BUY_PLANNING_NOT_ENABLEDwhen the organization's Buy planning is off, independent of Planning. Discovery says it (products.buyPlanning), the Integrations page offers the scopes only when Buy planning is on, and the labels now read by side: Sell planning, Buy planning. The scope strings did not change, so no existing key does. ๐ -
The buy plan tells your system, so it never has to poll. Three new webhooks go to the dealer's own endpoints:
BUY.TARGET.MATCHEDwhen a live listing fits an open target for the first time,BUY.TARGET.FILLEDwhen a target has nothing left to buy, andBUY.TARGET.ENDEDwhen a target's quarter closed with units still short. ๐ช They carry the very objects the reads return, so a system that polls and one that listens see the same thing: the target, and a match that is the listing's public face and nothing more. They go whatever a target's alert settings say, because those are for people and these are for systems. ๐ฃ -
Opt-in, on the same terms as the planning events. An endpoint that lists no events never gets them, only Cypress names speak them, subscribing takes
buy-planning:read, and nothing is sent once the organization's Buy planning is off. The Integrations page offers them only where they would be accepted. ๐ -
Told once. Each event reaches an endpoint one time, however often its cause is noticed: a match the first time it is stored and never again, a fill on the purchase that fills it and not on the next pass that counts the same purchase, and an ended target on the daily run, which looks back two days so a missed morning loses nothing and a second pass sends nothing twice. A delivery now remembers the event it came from, in a column that was already there. โ๏ธ
-
A new page and a kit folder. Planning API (Buy planning) in the developer docs, with a six-step quick guide and a Webhooks section, the Webhooks page, and 6-buy-planning in the Bruno and Postman kit, which ends by subscribing to the three events. ๐
-
A closed quarter answers
409 QUARTER_CLOSED, with nothing written. A move into one of its windows, a move to operation out of one, a track change for a vehicle still being planned, a park, and the hand-off (the preview too, which used to cut a digest nobody could confirm). It is not a retry: the quarter does not reopen. -
The refusal names the vehicles. A request that held one vehicle in a closed window is refused whole, and says which:
details.vehicleIds, and the quarter. The sync job sends the rest again. -
Each window says whether it is closed.
quarterandclosedon every window of the plan. A window of a closed quarter that nobody has swept still reads Planned or Active, sostatealone no longer tells. ๐๏ธ -
A car in Sell keeps its track. A vehicle already handed to Sell can still change track after its quarter is over, in the app and over the API: a car still selling has a pricing posture that must not freeze. Only vehicles still being planned are frozen. Blockers, and pulling a handed-off vehicle back to planning, stay open too: they are facts, or the vehicle's future.
-
Plain words. Plan version numbers are gone from Sequoia's
reasoningand the plan'snote, as they are from every screen. The Errors page, a new Closed quarters section of the Planning API, the OpenAPI document and the Bruno and Postman kit say all of it. -
OFFERS.ACCEPTEDfor every accepted offer. A buyer accepting the seller's counter, and a price change that accepts an offer that now qualifies, used to accept the offer and send nothing. They now send it, once per offer, and no field was added. An endpoint that lists the event, or lists none, receives those from the deploy on.
๐ Privacy by design
Planning only works if nobody has to wonder what leaks. So, plainly:
- ๐ข Counted by company, everywhere. A dealer with several stores counts once: on a seller's per-lot demand, the schedule's tooltip, Seller Hub, Leads, Sequoia's cards, the forecast and the Market tab. Three stores of one company never pass as three dealers, and a person never counts as a company.
- ๐งฎ Floors, not exact numbers. A seller's demand count needs at least two dealer companies. The forecast shows a range only with at least two companies behind it. A supply range on the Market tab needs at least three sellers; with fewer, it says "Planned" and nothing else. Price guidance's range from Cypress sales of a spec needs five sales from at least two seller companies, so it is never one seller's own prices; "Hot on Cypress" needs five sales.
- ๐ซ Never names, prices or VINs across sides. A dealer never receives a seller's floor, limits, name or id, and a seller never receives a dealer's name, price or maximum. Neither side ever sees the other's limits.
- ๐ข "Never how many." What dealers want is presence only: no quantity, no range, no count of companies, and no word of which signal put a model there.
- ๐ Private-link activity never feeds the board. An offer or a save on a vehicle that is not shown on the Marketplace (a private link, a storefront) is a private act on private stock, and it counts for nothing. Of the rest, only active buying companies count.
- ๐ญ Demo is its own world. Demo organizations feed and read only the demo market, and a demo listing reaches only demo dealers: their matches, their badges and their alerts. A Marketplace saved search fires only on vehicles of its own world, so a demo vehicle never alerts a real person.
- ๐งช The forecast and the Market tab were attacked on purpose. They went through repeated adversarial review passes, each tasked with isolating one company's plan from the numbers on screen: by subtracting one range from another, by reading the board before holding a model, by watching a number cross a threshold. Every route found was closed, and each is now an automated check that fails the build, walking thousands of possible combinations of plans. Closing them changed the product: "What dealers want" shows presence and never a quantity, and the forecast's spans all start today.
- ๐ก๏ธ A guard test fails the build if any file outside the staff modules reads a seller's floor, if any buy-side file reads a seller's plan value, or if any Sequoia decision, the forecast, the Buy analysis or the Market tab carries the other side's name, organization or price.
๐ Availability
Everything in this release is off by default.
- Per-organization switches, turned on by Cypress staff. Cypress turns each product on from the organization's page, under Products: Planning for the Sell plan, Buy planning for the Buy plan. Switching one off hides it and deletes nothing.
- Ask your account manager. An organization without a switch sees a locked page that explains the product and a Request Planning or Request Buy planning button that tells Cypress once.
- A seller needs Planning on and a fleet: the moment a fleet has vehicles, a base plan exists and every vehicle is in it.
- A dealer needs Buy planning on. No purchase history is required: Sequoia drafts from the market.
- Sequoia's rail, the Decisions tab and the Market tab come with each side's own switch. What a side sees of the other is only as rich as the plans on the other side: where nobody plans, the rail says so.
- Every seller sees the demand count for their own vehicles, as before, whether or not Planning is on. Until an organization's switch is on, nobody sees a strip, a badge, a card or a rail.
๐ฐ A Newsroom
Cypress now has a place to say what it ships. The Newsroom at /newsroom has two shelves: press releases, open to anyone, and architecture discussions for signed-in members of an organization on Cypress. This release is the first post. ๐๏ธ
๐งฐ Fixed along the way
- ๐จ The Sell schedule's sold state is not black any more, a lot's progress is visible without scrolling through the weeks, the window buttons no longer wrap, and the NOW window is not cut off when the grid opens.
- ๐๏ธ Review shows only the quarter's own windows. Q3's Review no longer lists W41โW52, and a window visibly opens its review.
- ๐ A sold car's panel no longer contradicts itself. It says Sold in with the window it sold in and gives no hold advice. The trend chart's labels no longer collide, and a one-week window reads "W41", not "W41-41".
- ๐ท๏ธ One badge, one button. "Instant purchase available" shows once on the Marketplace vehicle page, and Make an Offer is never a white button.
- ๐ค Makes read as names in the Buy analysis, the target panel and the Market tab: Kia, Jeep Wrangler, not KIA and JEEP WRANGLER.
- ๐ค Cedar stops showing "Tool error" for a call to a name that is not a tool, keeps its working memory to itself, and says its answer once. A Sequoia demand card now names its lot, so Ask Cedar can say which vehicles fit.
- ๐ A final review of the whole release, before production, and what it fixed. Three independent reviews (privacy, server logic, screens) went through everything in 3.4.0:
- ๐ A price you read from sales always has two sellers behind it. One fallback of the price guide could still echo a single fleet's prices; it now reads the model's class instead, and so do the "sold at N% of ask" line and Sequoia's drafted prices.
- ๐๏ธ Plan my quarter cannot put a target into a quarter that is over, where it could no longer be edited.
- ๐ค Every accepted offer starts its closing, including one accepted when a price change is approved, and an approval accepts one offer per vehicle.
- ๐ Webhooks do not lose an event when a run is cut off, and a double click sends it once.
- ๐งญ "What dealers want" counts what people did, not the vehicles a saved search saves on its own.
- ๐ข The Cypress desks fit a laptop: every action and its reason stay on screen, and demo companies wear a badge.
- โจ๏ธ Every button shows keyboard focus, and the active tab is announced.
- ๐ Staff-only tools check for Cypress staff on every request, with a test that keeps it so.
๐ญ What's next
- ๐งช Scenarios. A live plan, and a baseline when you approve: with both in place, what-if is a comparison, not a new system. Scenarios will build on those baselines.
- ๐ค Cedar's agentic mode. Sequoia suggests today. When Cedar can act, it acts through the same trail, inside the same guardrails, and the limits on either side still never reach the other.
๐งญ Why this release matters
A marketplace works when both sides know what they are trying to do. Sellers got a plan in 3.0: what leaves, and when. Dealers shopped listing by listing, and Cypress, which holds both sides of every deal, could not see what a dealer was trying to build.
3.4.0 closes the loop:
- A dealer's plan is a seller's demand.
- A seller's plan is a dealer's supply.
- Sequoia reads both, says why, and waits for a person to decide.
- The Market tab puts the whole picture on the page, anonymously: which models are wanted and what is coming, never how many wanted and never who.
Every suggestion is written down with its reasons and the rule that applied. ๐ฏ
๐ The manuals: Sell planning, Buy planning, Planning together
A release this size needs a manual people can follow with the screen open. So the Planning manual was rebuilt alongside the product. ๐
-
๐งญ Three parts, one manual. Sell planning is for fleets, Buy planning for dealers, and Planning together for what joins them. Each part has its own overview, its own sidebar entry and its own icon. Every old Planning address still works and forwards to its new page.
-
๐ Buy planning at the depth of Sell. The Buy side used to be one long page. It is now six step-by-step guides:
- Plan your quarter with Sequoia;
- Set the quarter's goal and budget;
- Add and edit a target;
- Read matches and the Buy analysis;
- Record a purchase made elsewhere;
- Approve and review the quarter.
Next to them are a reference page, The Buy plan, tab by tab, and the Buy process drawn end to end: goal and budget, targets and tracks, matches, an offer or Buy at the ask, closing, the purchase filling its target, Progress, and Review against the approved baseline.
-
๐ค Planning together. It draws the closed loop: the seller's plan and the dealer's plan on one calendar, meeting in the Market tab, the forecast and Sequoia. It also holds the chapters both sides share:
- Sequoia's market rail and decisions;
- the Market board;
- a new The quarter bar and closed quarters;
- Planning inside remarketing, every place the plans show up outside Planning, side by side.
-
๐ข The Cypress desk gets its own chapter. It is for Cypress staff and covers:
- what the desk is for;
- both desks and every column, in the screen's own words;
- the four fit tiers, by name and meaning;
- each action, and the exact reason it can be off;
- delegation and the filters;
- how each desk follows the organization in view.
It ends with a worked example, from the portfolio to one seller and one dealer.
-
๐บ๏ธ Five new diagrams: the Buy process, a target's life (open, matched, committed, filled or ended), the Sell process, the closed loop and the Cypress desk. Each is drawn inline, with the mechanism labelled on the arrows ("hand to Sell", "matches", "fills", "planned demand", "planned supply").
-
๐ฃ Step by step, with what you should see. Every guide, Sell and Buy alike, is one action per step, followed by what the screen should show.
-
๐๏ธ Five worked examples with fictional companies: a selling quarter, a buying quarter, a closed quarter's history, the closed loop on both sides, and the Cypress desk.
-
๐ Keys, scopes and channels, from the manuals. The Platform manual says how an admin makes an API key, with the planning scopes by side (Sell planning, Buy planning), each offered only while its product is on. Sell planning and Buy planning each end with a short "Connect your system" section. Sales channels gains "Channels in automations", and Offers "Offers in automations".
-
๐ Developer docs held to the contract. The Webhooks catalog spells every event in full, the API reference's "Changes in 1.4.0" is one list in one order, and a test fails the build when an error code, an event or a key scope has no place on its page.
-
๐ธ Screenshots on every guide. 101 new screenshots, taken by the docs' own capture pipeline: a customer's screen signed in as that example company, so the image is exactly what the company sees, and the Cypress desk as Cypress staff. Every step that changes the screen shows the screen.