• v1.8.1 8503c6c775

    Homer released this 2026-09-26 21:10:38 +00:00 | 0 commits to main since this release

    Three fixes to how a crowd behaves, found by reading one real round on the live
    instance rather than by testing: two models, one round, a question that asked for
    something to be made.

    • A member no longer answers the question again. Asked to pick a language and
      write an example, the main model wrote Python; the second model gave a genuinely
      useful critique of it — and then answered the original question itself, in a
      different language. Nothing in its instruction said not to. It now says so:
      respond to what is above you; do not answer the person's original request again
      yourself.
      A member that produces a rival answer is not a second opinion, it is
      a second first opinion, and it is what takes a round off the question.

    • The model that opened the round no longer capitulates. Told to write the
      final answer and take what the others got right, it abandoned its own perfectly
      good answer, wrote "I agree that Rust is the superior choice" with no argument
      anywhere for why, and rewrote everything in the newcomer's language. Both
      closing instructions now carry: your own answer is not automatically the worse
      one for having been written first; change your position where somebody gave you
      a reason, and say what the reason was.

      This mattered more than it reads. All three answers were compiled: the original
      Python was fine, the critic's Rust compiled and ran — and the merged answer
      that was actually delivered did not compile at all
      . A crowd that ends by
      agreeing with whoever spoke last can be worse than the model that started it.

    • The bubble that opens a round now says 1 of 3 like every other one. It was
      the single contribution with no chip, because the crowd does not start it — the
      composer does, and a round only begins when it finishes. So a two-model round
      read as an ordinary reply followed by one labelled 2 of 2, with no 1 anywhere.
      It is stamped when the round begins, and that stamp is deliberately invisible to
      everything that decides what happens next: fed to the scheduler it would inherit
      the round's clock, so regenerating the opening an hour later would end the round
      with "out of time" before anybody spoke.

    • Fixed: the crowd chip was never translated. 1 of 3, on the way back,
      closing, no rounds left and the rest were English on a Slovak instance.

    Worth knowing, and not a bug: with two models there is no backward pass at
    all. The way back would contain only the model that opened the round, whose turn
    is the close — so crowd.disagree never fires. You need at least three models
    before a single "do you disagree" bubble can exist.

    Downloads