test: preserve bounded Kilo offline incompatibility proof (#52) #100

Merged
kilo merged 1 commit from issue-52-kilo-offline-proof into develop 2026-10-26 13:42:24 +00:00
Member

Scope

Refs #52. Owner explicitly resumed the loop for a minimum offline feasibility proof using Kilo CLI 7.8.18 at exact source 0bc1c373a9d9c5abd2a1a941f2bcebb321f467f1, first non-exclusive candidate. This PR preserves an early negative, not product integration, a permanent harness selection or a runtime dependency. Keep #52 open.

Evidence

  • Actual pinned Kilo Server/Session/Provider/compatible SDK runs, disposable synthetic configuration, loopback fake response source; actual Router parser at 4162f6fa9f774beaf6e92d86b7ebc92f306da4bd separately validates captured final input.
  • Pin, complete valid execution_requirements, explicit no-profile nulls, low effort and output limit survive the native main path. Ordinary user text plus Kilo's appended environment context becomes multipart content. Producer parser rejects exactly unsupported_parameter, param=messages; a parser-only string-message control succeeds, without forwarding/claiming a prompt translation.
  • Nine native cases reproduce bounded absent/missing/init/config/guard/pure-mode refusal, permissive capture, and deliberately unsafe publish-then-throw dispatch. The latter proves optional plugin errors do not roll back provider mutations.
  • All auxiliary paths, durable Attempt send claims/ambiguous recovery, STOP/settlement/descendants and stronger isolation remain UNPROVED after early main-path failure. No flattening/context suppression, new proxy/fork/agent loop, producer change, live inference, owner credentials, paid call or production operation.

Changes

Developer-only opt-in proof runner and fixtures; existing feasibility/reuse evidence and complete MIT attribution for adapted test setup. No src/, architecture port or uv.lock change. Runner verifies full tracked source export against exact public Git objects and records runtime/lock/archive/fixture digests. TRUSTED_DEVELOPMENT only; global-fetch instrumentation is not a network/hostile-worker sandbox.

Validation

  • Native proof: 8 pass / 41 assertions plus fresh-process KILO_PURE case 1 pass / 3 assertions; independent actual producer context/control/refusal checks pass. Outcome intentionally NOT_ESTABLISHED.
  • make check: passed, 1457 pytest passed, 85 native/environment skips, 106 subtests; format/lint/type/import/secrets/diff gates pass.
  • make package-check: passed reproducible sdist/wheel and installed smoke.
  • make audit: no known vulnerabilities.

Base e1aca78b0e56afffb245005e25ecb7b155a8367a; head c717613d0d03e1fb5ce9a9e4f3a4c3b47cc6da56. Full #52 remains incomplete; its tested combination's gate is issue-local. Fresh canonical assessment identifies independently executable offline #55 and native #62 work, not QUEUE_EMPTY.

## Scope Refs #52. Owner explicitly resumed the loop for a minimum offline feasibility proof using Kilo CLI 7.8.18 at exact source `0bc1c373a9d9c5abd2a1a941f2bcebb321f467f1`, first non-exclusive candidate. This PR preserves an early negative, not product integration, a permanent harness selection or a runtime dependency. Keep #52 open. ## Evidence - Actual pinned Kilo Server/Session/Provider/compatible SDK runs, disposable synthetic configuration, loopback fake response source; actual Router parser at `4162f6fa9f774beaf6e92d86b7ebc92f306da4bd` separately validates captured final input. - Pin, complete valid `execution_requirements`, explicit no-profile nulls, low effort and output limit survive the native main path. Ordinary user text plus Kilo's appended environment context becomes multipart content. Producer parser rejects exactly `unsupported_parameter`, `param=messages`; a parser-only string-message control succeeds, without forwarding/claiming a prompt translation. - Nine native cases reproduce bounded absent/missing/init/config/guard/pure-mode refusal, permissive capture, and deliberately unsafe publish-then-throw dispatch. The latter proves optional plugin errors do not roll back provider mutations. - All auxiliary paths, durable Attempt send claims/ambiguous recovery, STOP/settlement/descendants and stronger isolation remain UNPROVED after early main-path failure. No flattening/context suppression, new proxy/fork/agent loop, producer change, live inference, owner credentials, paid call or production operation. ## Changes Developer-only opt-in proof runner and fixtures; existing feasibility/reuse evidence and complete MIT attribution for adapted test setup. No `src/`, architecture port or `uv.lock` change. Runner verifies full tracked source export against exact public Git objects and records runtime/lock/archive/fixture digests. TRUSTED_DEVELOPMENT only; global-fetch instrumentation is not a network/hostile-worker sandbox. ## Validation - Native proof: 8 pass / 41 assertions plus fresh-process KILO_PURE case 1 pass / 3 assertions; independent actual producer context/control/refusal checks pass. Outcome intentionally `NOT_ESTABLISHED`. - `make check`: passed, 1457 pytest passed, 85 native/environment skips, 106 subtests; format/lint/type/import/secrets/diff gates pass. - `make package-check`: passed reproducible sdist/wheel and installed smoke. - `make audit`: no known vulnerabilities. Base `e1aca78b0e56afffb245005e25ecb7b155a8367a`; head `c717613d0d03e1fb5ce9a9e4f3a4c3b47cc6da56`. Full #52 remains incomplete; its tested combination's gate is issue-local. Fresh canonical assessment identifies independently executable offline #55 and native #62 work, not QUEUE_EMPTY.
test: preserve bounded Kilo route incompatibility proof
All checks were successful
ci / check (pull_request) Successful in 2m26s
c717613d0d
kilo merged commit f4d86ea0a8 into develop 2026-10-26 13:42:24 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Creatidy/creatidy-kernel!100
No description provided.