Skip to content
GardenTrack GardenTrack
Start free

What shipped

Newest first. Short entries — what you can now do, and whether it fully works yet. The longer stories about how any of it went live on the blog, and the how-does-this-work pages are in help.

  1. A send button that could not send

    Signed out, the Talk screen told you plainly that asking needs an account — and then gave you a working text box and a live send button. You could write a real question about a real plant, press send, and the only thing that came back was an error. We stated the rule and then handed over the control for breaking it. The server was never the problem: it turns those requests away before anything is asked or spent. The problem was that its refusal had become how people found out they needed an account, after they had already done the work of writing. Send now takes you to sign in instead, and your question goes with you — it is waiting in the box when you get back, for you to send yourself. We deliberately did not switch the box off. Somebody signed out with a garden is a real gardener, not a lapsed account, and disabling the thing they came to use in order to teach them a rule is the move we had already decided against on this exact screen. Typing was never the part that needed an account. Sending was.

  2. A smaller crop is not no crop, and the answer now says which

    Ask whether it is too late to plant something and the app works out whether it can finish before your frost. Until now that had two answers: yes, or no. It needed a third. Sweet potatoes want about 90 days for full-sized tubers, and if you have 61 the honest answer is not "nothing" — the tubers keep growing until the frost kills the vines, and killing the vines is exactly when you dig them. What is in the ground that night is what you get: smaller than a full season would give, and real. The same goes for anything you cut, because baby kale is a crop. What has not changed is the flat no for anything that has to ripen. Green tomatoes do not ripen after the vine dies, an unfilled pod stays empty, and there is no small version of a broccoli head that never formed. The difference is which part of the plant you eat, and we hold that for all 152 crops. Where it is a smaller crop the app says so, says why, and then leaves the choice with you — worth doing if you want any at all, not worth it if you were counting on a proper harvest. That last part is deliberate: it depends on things we do not know, like whether that bed has a better job to do. This one came from a gardener telling us a flat no was too absolute, and he was right.

  3. A thousand squares, and one of them is yours

    The first screen of setup asks where you garden, and explained why in three lines of prose above a large amount of nothing. "Your spot, not your region" is the whole argument for this app and it was a sentence you had to take on trust. It is now a picture. One ZIP code, drawn as the roughly one thousand 800-foot squares that actually fit inside it, with a single one lit. That is the claim made physical: your region contains a thousand of these, they do not share a frost date, and we use yours. The arithmetic in it is real rather than decorative. A ZIP averages about five miles across, which is 26,400 feet; our square is 800. So the grid is drawn 33 across and 33 down, because that is how many fit. Nobody is expected to count them — it lands as texture — but if you did count them the number would be right. It is drawn rather than photographed, and that is deliberate. This screen runs before you have told us anything, so any aerial photograph here would be somebody else's garden presented as yours. We would rather show you the idea honestly than show you a stranger's roof.

  4. Add a plant tonight, and it asks you to plant it tomorrow

    You can now enter a plant before it goes in the ground. Put in the day you plan to do it — tomorrow, next week — and the app says nothing until then, because nothing needs doing yet. On the morning of the day you chose, the job to plant it is sitting on your Today screen. Ticking it off is what turns the plan into a real plant. Two things had to change for that. The date box would not accept a day in the future at all, on the reasonable-sounding grounds that you cannot have planted something you have not planted. And underneath, the app deliberately never asks you to do the thing that created the record — it does not tell you to sow a plant you have obviously already sown. That rule was right for every plant in the app until this one, because a plant dated ahead exists precisely because you have not done it yet. So the job now shows on its own day and goes quiet again afterwards. Written the evening before somebody planted bush beans, which is exactly the moment the old version was no help.

  5. Dark mode goes dark all the way through

    Choose dark and the app used to give you a near-black page with cream cards sitting on top of it. Perfectly readable, and still mostly a bright screen when you are standing in a garden after sunset — which is when somebody who picked dark is most likely to be looking at it. The cards go dark with the page now. Two screens deliberately do not: the setup walkthrough, and the one-job-at-a-time screen you work from. Both are built to be read at arm's length while your hands are busy, and the pale background is what makes them legible outdoors, so they keep it in either theme. The change turned out to be mostly a deletion. Cards had been overriding their own text colors back to the light values, for the good reason that their background could not move; once it could, the override was the only thing keeping them light. What it did expose is a separate thing worth mentioning: a link and a button on the account screen had never been given colors at all, and had been quietly wearing the browser default blue and gray since the app was built. Nobody noticed, because those defaults are close enough to invisible against a cream card. They are ours now.

  6. The hot-weather warning was describing the wrong time of year

    When a hot spell is coming, the app tells you what it will do to your plants. What it does depends entirely on what the plant is busy doing: heat on a tomato that is setting fruit knocks the flowers off and costs you the crop, while the same heat on a tomato seedling in April just slows it down, because there are no flowers to lose yet. We were working that out from the crop rather than from the plant — reading the whole list of stages a tomato will ever go through, and answering as though all of them were happening at once. Of the 152 crops we hold growth stages for, 66 were telling you heat would cost you flowers all year round and 29 were telling you they would bolt all year round. 95 of them give a different answer depending on the stage the plant is actually at. Now the warning reads the stage your plant is at today. And where we do not know what stage it is at, it says the plain true thing — heat is hard on plants, shade in the afternoon helps, and a deep watering in the morning gives it something to work with — rather than picking a mechanism to fill the gap. A wrong reason is worse than no reason, because you act on it.

  7. It notices you are asking, however you phrase it

    The app works out for itself whether a crop can still finish before your frost, and says no when it cannot. But it only did that once it recognized you were asking — and it was checking against a short list of ways of putting it: can I, should I, is it too late, when. Write "am I able to plant these this year", which is a planting question in plain English, and it matched nothing on that list. The whole check stayed silent and you got ordinary encouragement instead of an answer. It now understands intent as well as questions. "I want to plant this", "thinking about putting in some kale", "planning to sow spinach this weekend" and "is there still time to start beans" all count, because somebody saying what they are about to do has not done it yet — and telling them it will not finish is the whole point. One thing it still ignores on purpose: anything already in the ground. "I planted the beans in June, when will they be ready" is about a plant that exists, and answering that with a no would be the app arguing with something you watched happen with your own hands.

  8. Photograph a plant in a pot and the card already knows it is in a pot

    Send a photo to add a plant and the card now comes back with where it is sitting already filled in — a pot, a seed tray, a raised bed, open ground — with a line underneath saying it came from your photo. Change it if we read it wrong. Nothing is written until you press Save, which is the rule for everything the camera works out. The reason this is worth saying plainly is what we found on the way. Somebody photographed potted citrus to add them and the app asked, separately, whether they were in the ground or in a pot — a question the picture had already answered. It turned out the app was mostly seeing the pot the whole time: measured against a real photo of a potted citrus tree, it identified the pot in two rolls out of three before we changed anything. The answer was arriving and nothing was reading it. It now reads it three times in three. One thing it deliberately will not do: if the photo does not show the base of the plant, nothing is pre-selected. Not being able to see something is not the same as knowing it is in the ground, and a guess that looks like an answer is worse than a question.

  9. It remembers the question you asked one message ago

    Ask whether a crop can still finish before your frost and the app works it out and answers plainly. But it was reading only your newest message — so if you asked in one breath, got a question back, and gave the detail in the next, the check went quiet exactly when it mattered. On its own, "I have a sweet potato in my kitchen and it is the one growing off shoots" asks nothing. That is how the answer came back saying there was still time to plant a crop that cannot finish. It now reads the turn before as well, which is how conversations actually go: the plant in one message, the details in the next. Two limits on purpose, because a stale answer stuck to a new question is worse than no answer at all. It looks back exactly one turn, since six messages ago is usually a different subject. And it only carries on while you are talking about the same plant — ask about sweet potatoes, then ask what is eating your kale, and you get an answer about kale. The first version of this did not do that, and answered the pest question with a planting verdict about sweet potatoes. We found it before it shipped by running it rather than reading it.

  10. One Add a plant button, and a camera beside it

    There were five places in the app offering to add a plant and three different-looking buttons doing it — one orange and solid, two plain purple links, two more that were barely buttons at all. They all led to the same screen. Nobody planned that; it is what happens when five screens each get the button they needed on the day they were built. They are one button now, used in all five places, so it looks and behaves the same wherever you meet it. The wording still changes to suit where you are standing — add a plant, add another, add one here — because that part was never the problem. The camera moved with it. Photographing a plant to identify it already worked, but it lived as a small icon inside the search box on one screen, which framed it as a hint for people who could not spell the name. It is a way of adding a plant, so it now sits beside the button as an equal, at all five. It is the same camera doing the same job — one copy of that flow, not a second one built to match. The part worth admitting: the first version of the pair was inverted on screen, with the camera taking the whole row and the words wrapping into a narrow column running off the edge. Every measurement passed. The pair existed, both halves were the right color, both sat on one line, and the tap targets were the right size. It took looking at a screenshot to see it, which is the second time this week that a defect survived every number we had and lost to a pair of eyes.

  11. The free AI allowance is one grant that runs out

    It used to be fifteen photo answers in your first week, then three a month and five questions a month, forever. That is gone. You now get ten photo answers and twenty questions, once — counted from the day you made your account, and they do not come back at the start of the month. We first set that grant much higher and cut it the same evening, before anyone had spent one, so if you read this page earlier in the day it said thirty and a hundred and twenty. The reason for the change is the shape rather than the number. A few a month teaches you to ration and wait, and a gardener with a sick plant in week two does not ask — an assistant you have learned not to consult is not an assistant. A grant behaves the opposite way: spend it freely, hit the wall while you still care, and decide. Ten is enough to get a real feel for whether the answers are worth anything, which is what the free plan is for. When it runs out we say so plainly and we do not pretend there is something to buy, because there is not yet. And everything that costs us nothing stays free permanently — your plants, your dates, your journal, your reminders and the whole plant database. The grant is only for the answers that go to an AI.

  12. One spring mulching told the app to water less, forever

    Tell GardenTrack you mulched a bed and it changed how it talked to you about watering: check every few days rather than every two or three, and when you do check, pull the mulch aside and feel underneath. That is correct advice for a mulched bed — mulch really does cut evaporation, and the surface really is dry by design. The problem was that it never stopped. The app asked whether a bed had ever been mulched, not when, so a bed you mulched in April was still getting mulched-bed advice the next summer, long after the straw had broken down. By then it was telling you to pull aside mulch that was not there, over bare soil — and, more seriously, telling you a bed could go two or three times longer between waterings when it could not. Confident, specific, and wrong in the direction that costs you a plant. The cause was smaller than the symptom: the date was being handed to the function that makes this decision the whole time, and that function described what it accepted in a way that left the date out, so it arrived and was dropped. Mulch now lasts about four months in the app, which is roughly how long a top-dressing lasts in a garden. After that the advice goes back to open ground: feel two inches down, check every two or three days. Mulch again and log it and the mulched-bed advice returns. Two things we deliberately did not do: mulch events logged before we started recording dates are still believed rather than thrown away, because silently un-mulching real beds to fix a staleness bug is the wrong direction; and the expiry only affects advice, not your record — the journal still says you mulched that bed in April, because you did.

  13. Photograph the seed packet and the variety fills itself in

    Take a picture of a seed packet in the chat and say "I want to plant this". It reads the packet, tells you what the crop is and roughly how long it takes, and hands you a card with the crop AND the variety already filled in — not just "bush bean" but "Golden Wax". One tap and it is in your garden with its kind recorded, which is the part that sharpens every date afterwards. The variety is the difference between a rough guess and a real harvest window, and it is normally the field people skip because typing it means going into the plant and finding it. Now it comes off the packet in your hand. What it is reading is the printing, so a clear photo of the front with the name legible is what it wants; a packet at an angle in dim light is a harder job. And one thing it honestly cannot do: a plant already in the ground has its variety written nowhere on it. A seedling in a bed is not a packet, and no amount of looking will find a name that is not there — for those, tell it the name instead and it will save that.

  14. Photograph the thing you cannot name

    Adding a plant started with a box asking what it is, which is a fine question if you know. There is now a camera beside that box. Photograph the plant and it opens a conversation with your picture already in it, asking what it is — no typing a name you were never sure of. It answers the way everything else here does: what it thinks, what it read to get there, and if it genuinely cannot tell, which two it is choosing between and what would settle it — a leaf laid flat, the underside, a fruit cut through the middle. What it will not do is add the plant by itself, and it is built so that it cannot. The camera opens a conversation and has no way of its own to write anything to your garden. The answer comes back as the same card you already get when you tell the app about a plant in words — crop, bed, date — and nothing lands until you tap it. That rail is the whole reason this took a decision rather than an afternoon. A wrong diagnosis gets checked against the plant standing in front of you and corrected in a minute. A wrong identification becomes the record, and every date, task and frost warning after it is worked out for a plant you do not own. Nothing about that looks broken from the outside; it is just quietly wrong all season. One photo, one plant, for now. Point it at a bed with four things growing in it and expect it to talk about the most obvious one. Four plantings from one picture is a different screen and a different set of questions, and it is worth doing properly rather than quickly.

  15. Four pages we owed you: privacy, support, terms, and how to leave

    Until today there was no page on this site that told you how to get help, and the privacy page was written in July when GardenTrack was a website with a waitlist form. It said the only personal thing we collect is your email address. That stopped being true the day the app shipped, and a privacy page that understates what a company holds is the wrong kind of wrong. So: the privacy page now names every single thing we keep — your garden, your photos, your email, the coordinates of your plot, your conversations with the app, and a count of the questions you ask it — and every company that touches any of it, which is four. It was written by reading the database, not by remembering what we built. Support is one page with two real routes and no invented response time. Terms says the free thing is free, that your garden is yours, and spends its longest section on the limits of gardening advice from software — the short version being that you should never eat anything on the strength of our identification. And there is a page about leaving, because "how do I get my garden out" deserves an answer before you need it. Two of the things on that page are email requests rather than buttons: closing your account, and getting a copy of your data. We have not built either button, so the page says so in those words rather than implying one exists. The honest version of a thing you cannot do yet is more useful than a polished version of a thing that is not there.

  16. Seeds still in the packet were being told they were sprouting

    Add a plant for tomorrow and your garden list said "Sprouting in 8d" — a growth stage, with a countdown, for beans sitting in an envelope on the kitchen counter. The half of the app that decides what you have to do already knew better and stayed quiet, correctly, because there is nothing to do the night before. But the line describing the plant was worked out separately, by counting forward from the planting date, and nothing in that sum ever asked whether the date had arrived. So the jobs were right and the sentence above them was wrong. The row now reads "Planting tomorrow", and the plant's own page says the same instead of describing a stage. On the day itself both go back to normal: the growth clock starts, the job to plant it turns up, and the row tells you what stage it is at. Written the same evening somebody was holding the bean seeds.

  17. The beta is opening, so the site stopped saying 2027

    Until this morning a stranger landing on gardentrack.app was told three times above the fold that this was a spring 2027 product with a waitlist — the badge, the button, and the fine print under it. That stopped being true: the app is built enough to hand to people, and invites are going out. So the site says what is actually happening. You join the beta rather than a waitlist, and when it is your turn we email you an invite. There is no date anywhere in the new copy, and that is deliberate. A countdown in a hero is true the day you write it and false two weeks later, and nothing on a website tells you when its own promises have gone stale — which is exactly how the old date survived long enough to need a sweep of sixty-three files. Two things were fixed on the way through that had nothing to do with timing. The free-features list promised "export", and there is no export — not in the app, not in the API. Under a 2027 framing that read as a plan; the moment the page says the beta is open, every item in that list reads as something you can do today. Our own page about leaving already said plainly that getting a copy of your garden is an email request, and the two now agree. And a sentence about frost alerts had been flattened into claiming a feature that is still roadmap. Both were caught by reading the pages as a reader gets them rather than trusting the find-and-replace.

  18. The prompt for people who skipped setup only showed up for people who did not

    Skip the setup questions when you first open the app and Today was nine lines of almost nothing: no dates, no jobs, and no offer to pin your garden. The card whose entire purpose is to catch somebody who skipped — "Pin your garden", "Add your first plant" — sits further down that screen, below a shortcut that fires when you have no plants yet. So it appeared once you already had a plant, which is to say once you no longer needed catching. It survived because everybody who had ever tested the app already had a garden pinned. Today now offers to pin your garden while it is still empty, and says plainly that every date is a typical zone 6b guess until you do. It is one line rather than a checklist, because on an empty screen there is exactly one useful thing to do and a four-item scorecard would just be furniture. It disappears the moment you pin. This also makes an existing help answer true: it already promised the app "will keep saying" your dates are a guess if you skip, and there was nowhere on that screen that said it, because there were no dates on it at all.

  19. The empty screens now say what they are for

    Open the app on a brand-new account and four of the first screens you see are mostly blank. That is honest — you have not planted anything yet — but blank reads as unbuilt, and two of them left you with nowhere to go. Your week said nine words: "Nothing is asking for you." No explanation of what the screen is, and nothing to press, on a tab in the main navigation that a new gardener can reach in their first minute. Garden mode managed two negatives in a row — "Nothing logged. Nothing needed doing." — without ever saying what garden mode is. An empty screen has to answer three things: what this screen is for, why it is empty for you, and what would fill it. The third one has to be a button, not a sentence: our catch-up screen said "add a plant and it will start filling in" and gave you nothing to tap. All three now answer all three. We deliberately did not pad the short ones to match the long ones — the garden screen says its piece in nineteen words and that is good writing, not a gap. And there is no progress bar, no percentage and no "0 of 5 done" anywhere near them. "Nothing is asking for you" is a good morning, not a failing score.

  20. The free allowance is now ten photos and twenty questions

    We set the free grant at thirty photo answers and a hundred and twenty questions this afternoon and cut it to ten and twenty the same evening, before a single one had been spent. The shape has not changed: it is still one allowance counted from the day you make your account, and it still does not come back at the start of the month. Only the size moved. The reason is what the free tier is for. It is there so you can find out whether an answer about your own garden is worth anything to you, and ten photographs is enough to learn that. A larger number was not buying more of an answer to that question, it was just a longer runway before anyone had to decide. The warning that tells you the end is coming moved with it, which is the part that would have broken quietly: it used to speak at five photos and twenty questions left, and against the new grant that would have warned you at halfway on photos and on your very first visit for questions. It now waits until three photos or five questions remain — late enough not to nag, early enough to still do something with what is left. Everything that costs us nothing stays free, with no cap: your plants, your dates, your journal, your reminders and the whole plant database.

  21. The list now says which plant

    A garden with a tomato, a kale and a pepper produced two jobs on the morning list that were word for word identical — feel the soil around the roots, water it if it is dry — differing only in which bed they named. The list told you the job and the place and left out the one thing you needed in order to act on it. Each row now carries its plant, and its variety if you have told us one. We had the names the whole time. The screen you land on when you tap a job has always shown them; the list itself simply never printed the field. That is the sixth thing this week that was built correctly and connected to nothing, and it is the most expensive one — the whole promise here is that the app remembers your garden so you do not have to, and the first screen of the morning was asking you to remember which bed held what. Three other things from the same review. The card on the home screen offering to back up your garden was painted in a color meant for dark backgrounds, on a light card — which made its heading exactly the same color as the page behind it. Not faint: invisible. The Garden tab called itself "My garden" while the screen beneath it said "Your garden is empty", so it now says Your garden like every other heading in the app. And on the add-a-plant list, the one crop carrying a "7 days left" note put its Look button in a different place from every other row — first in the list, which is the worst place for it.

  22. The variety search shipped, and still could not find a wax bean

    Yesterday we added variety names to the plant database search, because someone went looking for wax beans, found nothing, and got there by opening bush beans and scrolling. It shipped. It went live. And typing "wax beans" still returned nothing at all. The search compared the whole phrase you typed against each name as one lump, which works only when your words happen to sit side by side in that name — and the variety is Golden Wax BUSH Bean. So "wax" found it and "wax bean" did not. Add the plural everybody actually types, against a database where every variety name is singular, and the exact phrase that was reported failed twice over. It now matches every word of your query independently and does not care about plurals or the order you type them in, so wax beans, purple cherokee and sugar snap peas all land. Two more things were wrong in the same place and neither was visible without clicking. Every variety we offered you was a dead link — the address we linked to was the one the database uses internally, not the one the page actually lives at, so all of them 404ed. And 1,849 of our 3,174 varieties have no page at all yet; those are now named as plain text rather than offered as a link to nowhere. Finally, searching "tomato" used to put Purple Coneflower at the top, because it has a variety called Tomato Soup. A real match, and never the one you meant. The crop you actually named comes first now.

  23. Three rough edges on the Talk screen

    All three came from walking the app from a blank install, and all three are things you would notice by looking. When a message failed to send, the explanation was written for a person right up until the end, where it handed you "TypeError: Failed to fetch" — the name of a JavaScript class. It now says what actually happened: the connection dropped partway. We deliberately keep carrying the browser's own words for anything we have no sentence for yet, because that is the detail that makes a bug report worth sending, but a class name is not a reason. Second, the Talk screen had two microphone buttons a thumb apart doing entirely different jobs — one dictates your question, one tells us about the app. The typing bar's mic is the microphone; the floating button was taken off the Talk screen entirely the next day, and stays a microphone everywhere else where nothing competes with it. Third, the chat printed your question twice: once as the heading and once as your own message underneath it. A conversation is still named after its first line where that name earns its place — in the list of past conversations — but the heading inside now just names the screen.

  24. We told a paying account it was on the free plan

    Profile had a row reading "Plan: Free". It said that to everybody, because the word was not coming from anywhere — the app is never told which plan an account is on, so the row was filled in with a guess that happened to be right most of the time. It was wrong for the people it mattered to most, and this morning we made it worse by putting the free allowance underneath it, so a paying account was being told about a ceiling it had specifically paid not to have. The row is gone until the app actually knows, and there is no fallback: when we have not been told, we say nothing. A default there is a claim about your money that nobody checked. The same change fixes a second thing. The allowance line only ever said what you were given, never what you had left, for anyone who used the app before we built it — the number only gets recorded when an answer comes back, so an account with history had nothing stored and got the introductory sentence forever. It now stays quiet unless it has a real figure. That means Profile says less than it did this morning for some accounts, which is the point: it was saying more than it knew.

  25. The wrong countdown to frost is fixed, and the cause was ours

    Ask whether it is too late to plant something and the answer sometimes told you how many days you had until frost — and got it wrong, saying 69 where the real figure was 61. We had measured that thirty times, tried three ways of telling the AI not to do it, and concluded it simply could not be trusted with the subtraction. It turns out we were handing it a sentence that began "Only 61 days remain before the first frost", and then, two lines further down, instructing it never to state a number of days remaining. We were showing it the sentence and banning the sentence at the same time. The giveaway was sitting in our own code: a second kind of answer, written later, happened to carry no day count at all — and it was the one that mostly did not produce a countdown. So the answer now names the frost date instead, "the first frost comes Oct 13", which is exact, matches your Today screen, and requires no arithmetic from anybody. Measured on the same question: a wrong countdown in 15 rolls out of 15 before, and 0 out of 15 after. It can still slip one into an answer about a crop you dig up, roughly one time in four, and that half is still open.

  26. The app now tells you what you have left

    A free account comes with 10 photos and 20 questions to ask about your garden. Until today nothing in the app said so — not the sign-up screens, not the Talk screen those numbers limit, not Profile, which has a section for how cold your winter gets and one for when you would rather not be disturbed and none for this. The only way to discover there was a ceiling was to hit it. That is worse than it sounds, because the allowance is one-time rather than monthly: somebody who spends the photos in their first week on one puzzling plant has spent the season, and was never told they were spending anything. Profile now carries a plain line under your plan saying what you hold and that it does not refill. The Talk screen says nothing at all until you are near the end, and then puts one sentence just above where you type — the moment before you use one. Deliberately not a progress bar: a bar that empties on a free account reads as a countdown to a paywall, and watching a number fall is not something this app asks anyone to do. Everything else has no limit. Adding plants, logging what you did, hardening off and every date the app works out are yours without a counter anywhere near them.

  27. A photo you took back was sent anyway

    Attach a photo to a question, change your mind, press the ✕ on the thumbnail — and it came off the screen while staying on your phone, still queued. The next time you had signal it went up to your account. You had taken it back and we sent it. The cause is the same thing that makes the app quick: a photo is written to your phone the instant you attach it, so closing the app halfway through a question never loses the picture. That is right and it stays. What was missing is that removing it only removed the thumbnail. It now removes the picture too, in the same tap. One thing it will not delete is a photo that has already become a journal entry on a plant — that belongs to your record rather than to the question box, and the plant's own page is where it goes. Found by attaching a photo, removing it, and then counting what was actually left on the device rather than trusting the screen.

  28. Add to my garden now goes somewhere

    You could add a plant to your garden from any variety page, and then there was nowhere to see it. The counter went up, the plant lit up, and that was the end of the road — tapping the counter scrolled you back to the button you had just pressed. Three things fix it. There is now a page listing everything you picked, at gardentrack.app/my-garden, with the day you added each one, a link back to it, and an ✕ to change your mind. At the bottom of that page is a button that opens the app carrying those plants. And the app, once it has them, asks where you garden, works out your frost dates, shows you your own picks instead of an empty search box, and asks the one thing the website could not know: where they live. You never type a plant twice, and the variety comes with it — pick Cherokee Purple and you get Cherokee Purple, not "a tomato". The reason it needs a button rather than happening by itself is worth saying plainly: the website and the app are at two different addresses, and browsers stop one address reading another one's storage. That is the rule that keeps any website from reading your bank's page. So the plants ride across inside the link instead, in the part after the # that never reaches a server — which also means copying that link to your phone brings the same plants with it. If your garden is already going, there is no walkthrough; they are just added, and nothing you already had is touched.

  29. Profile told people with no account that everything had backed up

    The line under "waiting to back up" was worked out from one thing: how many changes are queued to go up. With an empty queue it said everything on this phone has backed up. But an empty queue is not a backup — it only means nothing is waiting, and on a phone with no account nothing is ever waiting, because there is nowhere for it to go. So the people who had least protection got the most reassuring sentence. Three blocks higher on the same screen the app said "it lives only on this phone", which was the accurate one. Two sentences, one screen, flatly opposed. It now reads: nothing is waiting, nothing has backed up either — that needs an account. Nobody's garden was at more risk than the honest sentence already described. What was broken was which of the two you happened to read.

  30. Answers stop printing their own punctuation

    Replies were arriving with literal stars around words and dashes down the left margin. The chat prints an answer exactly as written — there is no formatting layer, deliberately, since adding one means sending a sizeable chunk of extra code to every phone to turn stars into bold. So the AI reached for formatting and you got the punctuation instead of the effect. We told it to stop, rather than teaching the screen to read it, and that turned out to fix the bigger complaint too: bold headings over three-line sections were turning two-sentence answers into a page you had to read all of to find the part that mattered. Answers now come back the way someone would say them out loud, and then stop.