PI · Release notes

What shipped in PI.

Platform release notes for JustineAI™ PI — changes to the product itself, not to this website. In market. For changes to the site, see the site changelog; for the other in-market edition, see the WC release notes.

Security, access-control, and confidential-data handling changes are not itemised publicly. Justine works on privileged matter files and medical records, and for that kind of system a public list of which control changed and when is an attack map rather than a release note. Customers receive the full detail through their engagement, and our security posture and disclosure process are documented in the Trust Center.

  1. September 2026

    A negotiation figure that could be shown at a hundred times its value

    Two parts of the platform wrote offers and demands to the same place in different units — one in dollars, one in cents — with nothing on the row to say which. A $60,000 defence offer could present as a $6,000,000 one. The sharper half was the edit form, which divided by a hundred whatever it was given: opening a correct offer and pressing Update would have written a hundredth of it back over the real figure. Every amount now carries its own unit, so a row can be read without knowing which part of the product created it.

  2. September 2026

    The contingency fee nobody had agreed to

    A case created from an intake was given a 33.33% contingency rate, labelled “standard”. No one had entered it and no agreement had established it — and it then appeared as the attorney-fee line of the client’s settlement disbursement and pre-filled the engagement letter. A fee is a term of a signed contract, not a default. The rate is now absent until the executed agreement’s figure is entered, and the disbursement calculation returns nothing rather than substituting one. Where a demand-sent amount is derived rather than taken from a letter on file, the record now says which it was.

  3. September 2026

    A deadline could be saved without the date it was due

    The Add Deadline dialog sent eight fields and the endpoint read a different vocabulary; the two overlapped on the title alone. Everything else — including the due date — was discarded, and the attorney got a success message. A dateless deadline is worse than a missing one: it is skipped by every urgency bucket on the dashboard while still counting in the total, and the reminder job steps straight past it, so no reminder is ever sent. The completion notes on the same dialog were being posted to an endpoint that declared no body to receive them, which quietly lost the contemporaneous note of how a deadline was satisfied. Both now persist what was typed.

  4. September 2026

    Report filters that were not filtering

    Report generation read the report type and the title, and dropped the filters, the date range and the sort. A CSV headed “Financial Summary — Q3, Attorney: Smith” contained every matter, for every attorney, for all time, under that heading. Filters, ranges and ordering are now applied to the query. A filter the report cannot honour is refused by name rather than silently ignored — if the answer will not match the heading, the heading does not get printed.

  5. September 2026

    The audit export is now complete, and says so when it is not

    The audit export is the artifact a firm hands to a regulator or an opposing party, and it had three faults at once: it stopped at an undeclared five hundred rows, the response it was built from reported that there was no more data regardless of whether there was, and it omitted the sequence and hash columns — so a tamper-evident record was exported in a form where the evidence of tampering could not be checked. The cap is now fifty thousand and it is stated, the chain columns travel with the rows, and if a cap is reached the file itself carries a row saying so. The file is downloaded directly, so a notice that is not inside the file is a notice the recipient never sees.

  6. September 2026

    A security summary that reported zeros it had never measured

    The firm security panel showed four counts as zero, in green. They were not measurements; nothing was being counted. For a firm under a business-associate agreement, a zero beside “sign-ins by platform staff acting as one of your users” is an affirmative statement about its own data, and we were making it without looking. Three of the four now read as not measured, each with a sentence saying why it cannot be measured today, and a distinct state exists for “unknown” so that not-measured is never painted as clean.

  7. September 2026

    The document editor’s first tab no longer fails on open

    Chat about a draft is the tab an attorney lands on when opening a document, and the endpoint behind it had never been declared on the server — so the editor’s first action was an error. The same was true of Revise, which backs both the revision menu and the red-team panel’s “fix this vulnerability”, and of the two firm-member dialogs, which were complete screens that failed on confirm. All four now exist. A related pass removed two actions that reported success while doing nothing: document delete, which was reaching a route that raises “not implemented”, and the member-role edit, which reported “member updated” while the role stayed as it was.

  8. September 2026

    Six buttons that scrolled instead of working

    Generate Demand Letter scrolled to the documents section. Refresh Valuation scrolled to a section that does not exist on that page. Three upload buttons scrolled to a card and left the attorney to begin the upload again. Each now performs the action on its label — and where the signed-in user lacks the permission for it, the button is disabled and states the reason, rather than being offered and quietly declining.

  9. September 2026

    A generated letter no longer carries an attorney who does not exist

    Under “Respectfully submitted”, the document viewer and then the exported PDF printed a plausible attorney name and a signature block. No attorney was recorded on a matter anywhere in the product at the time, so this was the ordinary case rather than an edge case, and the PDF is the copy that reaches a carrier. Every stand-in is now bracketed and visibly unfilled. In the same period the demand-letter prompt stopped being asked to compose the firm’s own letterhead and identity, which it had been inventing; it now uses the letterhead and signature the firm entered in settings.

  10. September 2026

    Engagement letters, and the template category that was not in the list

    Generating an engagement letter reported that no template existed — for every firm, on every matter — because the category the lookup searched by was in neither the dropdown nor the underlying set of values. The render endpoint separately answered with a fresh document identifier, empty content and no file, which the workspace read as success and announced as a generated letter. A blank fee agreement a firm believes it has produced is the worst available outcome of the three. The category now exists, the renderer produces a real PDF stored the same way an upload is, and the firm-admin template list offers settlement statements, engagement and fee agreements, and preservation letters.

  11. September 2026

    A full case file described as too thin to work with

    A matter with eleven documents, a twenty-entry treatment chronology, sixteen encounters and forty-four thousand dollars of coded bills was told the record was too thin to build a case theory and to go and add documents. The synthesis pass had failed and the failure was returned as an empty result, byte-for-byte identical to a genuinely bare matter. A false diagnosis that sends an attorney to do work which would have changed nothing is worse than an error message. A failed run now says the run failed and that the file is intact, and only a genuinely thin record is told to add to it.

  12. September 2026

    The reasoning trace stopped showing numbers it had just said it was guessing

    The War Room streamed the reasoner’s deliberation to the attorney, and that deliberation included settlement figures it had in the same breath described as not being in the record — while the settlement panel underneath showed zeros. The only settlement numbers on the screen were ones the system had announced it had invented. That trace no longer reaches the surface. Separately, the medical coder had a single sixty-second budget for an entire matter regardless of how many bills it held, so two matters with the same ten documents could produce a full itemisation or an empty grid; the budget now scales with the work, and the damages matrix says why it is empty instead of telling an attorney to upload bills they have already uploaded.

  13. September 2026

    Net to client explains why a demand is not a settlement

    The net-to-client panel invited a settlement or demand amount, and entering a demand did nothing at all. The server refuses to derive a net from a demand on purpose — an opening ask is not money received, and treating it as though it were would drive the attorney fee, the client’s net and the trust disbursement from a figure nobody has agreed to. The refusal was right and silent. The panel now states the rule where the attorney reads it.

  14. September 2026

    A published Bates capability, withdrawn

    This list carried an entry saying documents could be allocated Bates labels and the label stamped onto the page. The stamping routine exists and no production path calls it, so no stamped PDF is ever produced. The entry is removed rather than reworded, and it is recorded here so nobody restores it from the old list. Exhibits still export as PDF and Word on the firm’s own letterhead, rendered server-side.

  15. September 2026

    Who can see a matter, decided in the workspace — with the consequence shown first

    Per-case access has a real grant screen now: who can see this matter, granted and revoked where the work happens rather than by a support ticket. The firm-wide visibility switch that turns case-scoped access on is the more careful piece. Before an administrator flips it, the screen computes and shows the firm’s live assignment coverage — how many matters would become invisible to whom, against the firm’s own data. A control that silently hides a third of the book from the person who needs it is worse than no control, so the number goes on screen before the switch moves, not after.

  16. September 2026

    Push notifications reach the attorney, and the toggle will not lie to you

    Deadline and activity alerts can now reach an attorney who is not in the tab. The part worth describing is the switch: it fetches the server’s push key BEFORE it asks the browser for permission, so it cannot flip on for a channel that could never deliver. A notification setting that says “on” over a dead channel is the quietest way to miss a deadline.

  17. September 2026

    The statute-of-limitations table says which entries are verified

    The limitations table covers 51 jurisdictions — the 50 states and the District of Columbia — and every entry carries a flag saying whether an attorney has verified it. Four have, and all four are California. That is published as it stands: coverage is not verification, and a table that presents 51 unreviewed entries with the same confidence as the four that were reviewed is a table that will eventually cost someone a filing.

  18. Late August 2026

    An approval inbox, and a record of what Justine would not do

    Work that reaches outside the firm no longer happens quietly or at all: it is queued for an attorney on a new Approvals screen, where each item can be approved or rejected with a reason. The same screen carries the other half — what Justine considered and declined to do, on this matter and across the firm — because a system that only shows you its successes is not something you can supervise.

  19. Late August 2026

    A cut-off answer no longer reports itself as a finished one

    If Justine’s reasoning stream was interrupted — a dropped connection, or a deployment restarting the service underneath it — the surface could show the run as complete, leaving a half-written answer looking like a whole one. Eighteen streaming surfaces and the server itself were corrected: an interrupted run now says it was interrupted and invites you to ask again, and the partial work is kept rather than blanked. This is the change on this list most likely to have quietly cost someone an answer they thought they had read in full.

  20. August 2026

    Help is part of the app

    The manual is now a searchable surface inside the workspace, with a first-run guided tour and a getting-started checklist, reachable from the main navigation. It renders inside the app shell — you keep the sidebar and the case you were in, rather than being dropped into a separate mini-app.

  21. August 2026

    Date-only dates no longer read a day early

    A date of birth or a date of incident is a calendar date, not a moment in time, and rendering it against a UTC clock could show it a day early for a Pacific-time firm. Those fields are now rendered as the calendar date they were recorded as. Any deadline computed from an incident date was computed from the recorded value, not the displayed one.

  22. August 2026

    Unverified research is labelled unverified

    A similar-case lead that has not been through citation verification no longer presents alongside verified authority as though it had been. Justine surfaces the lead and says what state it is in; the attorney decides whether to rely on it.

  23. August 2026

    E-filing says what it does

    Justine prepares the filing packet. It does not transmit to the court, and the copy on that surface no longer implies otherwise. Direct court submission remains on the roadmap and is labelled as such.

  24. July 2026

    Five surfaces that used to return only an answer now show the reasoning

    Intake, assessment, valuation, the War Room and demand drafting stream Justine’s reasoning as it runs, with the tool calls visible. An attorney attesting to an output can read how it was reached instead of accepting a result.

  25. July 2026

    Nothing is filled in on your behalf

    An unvalued case read as being worth $0, an absent medical-special read as $0, and a case with no assigned attorney or next deadline read as though it had both. Those fields now read as not yet known. On quick analysis, a missing date of loss is asked for rather than inferred — that date sets the statute of limitations.

  26. July 2026

    Demand drafting survives a dropped connection

    A demand letter streams with live status, resumes if the connection drops mid-draft, and no longer renders the word “undefined” into the text when a section arrives empty.

  27. July 2026

    A case fills in while it processes

    Opening a case starts the server-owned coding and assessment pipeline and the case detail populates as each stage completes — no manual refresh, and a case whose pipeline has not started yet is still watched rather than reported as finished.

  28. July 2026

    Attorney review is recorded on the document

    Marking a demand as sent now records the attorney’s review attestation against it, so the file carries who attested and when.

  29. July 2026

    Client texting reports what is actually known

    An outbound client message is reported as accepted by the carrier, which is what we know, rather than as delivered, which we do not. The composer no longer claims delivery, and the record states which number the message was sent from.

JustineAI is decision support bound by the ABA Rules. The attorney reviews, attests and signs every output; rating and settlement figures are projections the attorney verifies.

Back to JustineAI™ PI