• Stefy Lanza (nextime / spora )'s avatar
    green the whole suite: 17 failures, none of them a product bug · acf9ab5c
    Stefy Lanza (nextime / spora ) authored
    Every one encoded something that had since changed, or depended on a package
    this checkout does not have. Each was read against the code before being
    touched, and two turned out to be real defects:
    
    - ggml_rpc.available() returned the bare exception, so a model naming RPC
      servers refused with "No module named 'llama_cpp'" -- true, but naming
      neither the capability nor the fix. Every refusal now says both.
    - building a BitsAndBytesConfig without bitsandbytes installed raised
      PackageNotFoundError from importlib.metadata. The IMPORT is guarded; only
      construction consults metadata, so a Vulkan-only or CPU install got a
      traceback naming neither the model nor the setting. Now reported as loudly
      as an unrecognised mode, because the consequence is the same: full precision.
      The 2-bit path already did this for optimum-quanto.
    
    The rest were stale expectations:
    - the broker protocol inverted (the client speaks first: one read, no separate
      ack), gained keepalive pings and an immediate `pending` frame, and renamed
      its stream envelopes to chunk/done. Added coverage for the status gate that
      suppresses `pending`, which nothing tested.
    - /admin/api/status was removed in def78c18 and the front owns status now, so
      its on-the-way-out coercion had nothing left to coerce. Retargeted to the
      invariant that survives: entries are well formed when MADE.
    - main()'s default boot became the front/engine split, so the app instance
      reaches uvicorn in the ENGINE path now.
    
    And four were brittle rather than wrong, each failing for something it was not
    testing: a 4000-character source window that stopped covering the raise when a
    comment was added above it (now the function's own source); a hand-written
    Config stand-in that broke on every new section the product read (now falls
    back to the real defaults, per section); a generic `selectedId` used as a proxy
    for "the pipeline UI is gone" that unrelated code then adopted; and a pool test
    that needed pypdfium2 to exercise what a BUSY pool does.
    Co-Authored-By: 's avatarClaude Opus 5 <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_014T3rZnLhydX9QqUcfBbqLu
    acf9ab5c
test_broker_protocol.py 28.6 KB