Skip to content

v2.4.2

Choose a tag to compare

@pgalko pgalko released this 18 Oct 12:47
· 53 commits to main since this release

BambooAI 2.4.2

The words beside the numbers, read more carefully. This release refines the context feature of 2.4.0: what the Coder records about each passage, how those records line up with the training data by day, and how the Analyst's replies are read. There are no new features. The executor image moves to v62.

The codes table

Each code now carries four more columns.

  • direction: whether the passage points worse, better or neutral for the person, against their usual state. It is not the tone of the words: a denial ("not tired today") points better, a problem that has eased but is still there points worse.
  • basis: said or inferred.
  • about: the day, or the range of days, the reading describes, when that is not the passage's own day.
  • day: the day the reading describes, as one column to match on: about's first day, else the passage's own day. Match codes to the numbers by day, not by the date the passage was written. The words and the numbers are often days apart.

A code is recorded once for each day it is about. A night's sleep is dated the morning it ends.

The passages table gains two columns: activity_date, the day of the activity a message hangs on when it was written later, and copy_of, naming the earlier passage a text repeats word for word. A copy is coded once, as the passage it repeats.

The coder

  • Tags (one-word labels) and copies are no longer sent to the Coder. They are counted on the map instead.
  • Each batch carries the passages before it for reference, so a short reply is read in its thread.
  • Reading version 4: the first Intervals.icu load of each subject after upgrading re-reads their passages once, about one Coder call for every twenty. Later loads reuse the stored codes as before.

The map in the data description

  • Calendar entries are tallied by their category: a kind whose every entry opens with a category token (a race priority, a sick day, a season start) shows the count of each.
  • A line says which way the codes point, the most pointed codes first, and how many readings were inferred rather than said or are about other days than their passage's.

The rider profile

  • The Settings line names each custom zone set with the stream it is cut on.
  • The profile says which end of the wellness scales is the good one, for each scale the account tracks.

The Analyst

  • The contract says what the CTX calls return: text to print, or rows with as_frame=True. Runs had lost turns treating grep's text as rows.
  • The report turn runs at medium reasoning effort; a second attempt after a lost reply asks for less.
  • On the report turn, a reply shaped like the report but missing its marker lines is taken as the report.
  • Claude Sonnet 5.5 sometimes writes an action as tool-call markup in the text of its reply. Such a reply is now read from the call: the code runs as a cell, and the pane shows it as a cell rather than a lost turn.

Configuration

  • The DeepSeek seats in the configuration template move to deepseek/deepseek-v4.1-flash-1017.

Upgrading

pip install -U bambooai
  • The first bambooai serve rebuilds the executor image (v62).
  • The first Intervals.icu load of each subject with the context on takes longer: the passages are re-read (reading version 4).
  • A codes file from an earlier load gains its day column the first time a run reads it.
  • Code that reads CTX.codes() keeps working: columns are added, none are renamed or removed.

On the hosted service there is nothing to do.