loki-mode 11.65.5 → 11.65.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/SKILL.md +2 -2
- package/VERSION +1 -1
- package/autonomy/run.sh +12 -24
- package/dashboard/__init__.py +1 -1
- package/dashboard/server.py +2 -2
- package/docs/CLI-REFERENCE.md +1 -1
- package/docs/INSTALLATION.md +1 -1
- package/docs/v10/FAILURE-CLASSES.md +8 -0
- package/loki-ts/dist/loki.js +756 -760
- package/mcp/__init__.py +1 -1
- package/package.json +2 -2
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
- package/skills/model-selection.md +1 -1
- package/web-app/dist/assets/{AdminPage-DmP0wEIa.js → AdminPage-BR2oo8oF.js} +1 -1
- package/web-app/dist/assets/{Avatar-m4Oq-ejt.js → Avatar-B7S-WmGm.js} +1 -1
- package/web-app/dist/assets/{Badge-Dq7SJAkn.js → Badge-C8KIMe7J.js} +1 -1
- package/web-app/dist/assets/{Button-FvH-vh-6.js → Button-CU23Gq_d.js} +1 -1
- package/web-app/dist/assets/{CockpitPage-CFAAJSf4.js → CockpitPage-CtaUl_8x.js} +1 -1
- package/web-app/dist/assets/{ComparePage-DH402GnL.js → ComparePage-DulIq8Pp.js} +1 -1
- package/web-app/dist/assets/{ErrorBoundary-yoQav0FH.js → ErrorBoundary-Ca9bISpx.js} +1 -1
- package/web-app/dist/assets/{EvidenceReceiptPanel-DWD6ULf7.js → EvidenceReceiptPanel-RKHuadzu.js} +1 -1
- package/web-app/dist/assets/{GitHubIssuesPanel-Bul42iQH.js → GitHubIssuesPanel-Clqc7qd5.js} +1 -1
- package/web-app/dist/assets/{GitHubPRsPanel-Dnlki6Da.js → GitHubPRsPanel-DncKl207.js} +1 -1
- package/web-app/dist/assets/{HomePage-U7GgvMqr.js → HomePage-4fZqKDVI.js} +2 -2
- package/web-app/dist/assets/{LoginPage-CDWBPj0v.js → LoginPage-xsfVqzKw.js} +1 -1
- package/web-app/dist/assets/{MagicPage-o2KsLOAT.js → MagicPage-DBg-lc0r.js} +1 -1
- package/web-app/dist/assets/{MetricsPage-BZQSWx3R.js → MetricsPage-BPSBoRpo.js} +1 -1
- package/web-app/dist/assets/{NotFoundPage-BQ5QyEEc.js → NotFoundPage-9mPQaUKW.js} +1 -1
- package/web-app/dist/assets/{ProjectPage-CoRXh9Ht.js → ProjectPage-BubpfslC.js} +3 -3
- package/web-app/dist/assets/{ProjectsPage-DQRtDLv_.js → ProjectsPage-D_9boYgm.js} +1 -1
- package/web-app/dist/assets/{SettingsPage-v6URQg7d.js → SettingsPage-CZVCwQWR.js} +1 -1
- package/web-app/dist/assets/{ShowcasePage-DZyI3Q0f.js → ShowcasePage-Bv53ooUS.js} +1 -1
- package/web-app/dist/assets/{SystemSettingsPage-D7gBYaUR.js → SystemSettingsPage-BGmbeUnH.js} +1 -1
- package/web-app/dist/assets/{TeamsPage-CfNUUb0h.js → TeamsPage-D-6Mk_XH.js} +1 -1
- package/web-app/dist/assets/{TemplatesPage-DkbkgnZ0.js → TemplatesPage-XWQ7o4Qs.js} +1 -1
- package/web-app/dist/assets/{TerminalOutput-R_3Egww1.js → TerminalOutput-Cn_-Nu_s.js} +1 -1
- package/web-app/dist/assets/{activity-w6uvTXnZ.js → activity-BKy8AeRX.js} +1 -1
- package/web-app/dist/assets/{bell-93YrV2qd.js → bell-DMmejLqr.js} +1 -1
- package/web-app/dist/assets/{bot-BXsBK6Vv.js → bot-BZji7MY5.js} +1 -1
- package/web-app/dist/assets/{check-n7ax-p0H.js → check-C59wPVTO.js} +1 -1
- package/web-app/dist/assets/{chevron-left-BqdQ0HZG.js → chevron-left-D-sr7v8x.js} +1 -1
- package/web-app/dist/assets/{circle-alert-zMdi_FUd.js → circle-alert-CcFV2V_y.js} +1 -1
- package/web-app/dist/assets/{clock-BZHiDIDy.js → clock-BBODLmoc.js} +1 -1
- package/web-app/dist/assets/{cloud-CObnFDyU.js → cloud-BV20wcMx.js} +1 -1
- package/web-app/dist/assets/{code-xml-ko0cz2Dz.js → code-xml-31vAK_M-.js} +1 -1
- package/web-app/dist/assets/{database-CLEBy6_8.js → database-gw5hkTxO.js} +1 -1
- package/web-app/dist/assets/{dollar-sign-DQ4aCtXG.js → dollar-sign-BTuQDoSJ.js} +1 -1
- package/web-app/dist/assets/{file-code-corner-B-XTxNf_.js → file-code-corner-jnqbZyx2.js} +1 -1
- package/web-app/dist/assets/{file-plus-B10-CfS3.js → file-plus-Br73zQPJ.js} +1 -1
- package/web-app/dist/assets/{globe-Cz82x0Pp.js → globe-D4Xo34wz.js} +1 -1
- package/web-app/dist/assets/{hammer-BQuO8nql.js → hammer-l1Bhh5E7.js} +1 -1
- package/web-app/dist/assets/{index-4v0y5b5F.js → index-Lge9tflt.js} +3 -3
- package/web-app/dist/assets/{layers-Dx5oU3zQ.js → layers-u75y8AMB.js} +1 -1
- package/web-app/dist/assets/{loader-circle-BI2jLZCM.js → loader-circle-D5z5-Rnk.js} +1 -1
- package/web-app/dist/assets/{lock-Zp45tQDH.js → lock-BLDB8krK.js} +1 -1
- package/web-app/dist/assets/{package-BtSwu1n1.js → package-hBfq3Sq5.js} +1 -1
- package/web-app/dist/assets/{plus-C-89CGfG.js → plus-BkRuA5UX.js} +1 -1
- package/web-app/dist/assets/{refresh-cw-YB8Zp1pE.js → refresh-cw-B1tDgw7d.js} +1 -1
- package/web-app/dist/assets/{rotate-ccw-DV8GqNb-.js → rotate-ccw-D6nyjUWf.js} +1 -1
- package/web-app/dist/assets/{scroll-text-CP7rAIVS.js → scroll-text-6wVJsZ5v.js} +1 -1
- package/web-app/dist/assets/{server-DlRxt7s_.js → server-CTsRTewM.js} +1 -1
- package/web-app/dist/assets/{shield-alert-TEkqf_KK.js → shield-alert-VFq3IBcq.js} +1 -1
- package/web-app/dist/assets/{thumbs-up-EHOMBEKh.js → thumbs-up-B0xyaV46.js} +1 -1
- package/web-app/dist/assets/{trash-2-WE68xEDw.js → trash-2-BVakBOLq.js} +1 -1
- package/web-app/dist/assets/{trending-down-CP0xzd49.js → trending-down-aNe_rT17.js} +1 -1
- package/web-app/dist/assets/{trending-up-BKAb-Aqo.js → trending-up-WdUiEy_4.js} +1 -1
- package/web-app/dist/assets/{upload-BNRrOs8V.js → upload-B6ZDtnjb.js} +1 -1
- package/web-app/dist/assets/{usePolling-hnR5xrQl.js → usePolling-D0qAhsnE.js} +1 -1
- package/web-app/dist/assets/{user-CJwsWLpC.js → user-Bk2jAXVf.js} +1 -1
- package/web-app/dist/index.html +1 -1
package/SKILL.md
CHANGED
|
@@ -3,7 +3,7 @@ name: loki-mode
|
|
|
3
3
|
description: Runs an autonomous software factory that knows what it is supposed to deliver and proves it did, with a signed receipt. Use when the user says Loki Mode or asks to build, fix or verify software autonomously.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Loki Mode v11.65.
|
|
6
|
+
# Loki Mode v11.65.6
|
|
7
7
|
|
|
8
8
|
**Current entry points (Loki 10 engine):** `loki "<task>"`, `loki owner/repo#N` and `loki quick "<task>"` run the Loki 10 engine and end with a signed receipt (`loki verify`). `loki backlog owner/repo --all` runs many issues in parallel. Guide: `docs/v10/GUIDE.md`. The skill instructions below, and `loki start`, describe the previous bash loop. PRD-file starts (`loki start ./prd.md`) and the opencode provider still run on it until FC38-SWEEP ports them; the legacy-engine command and the LOKI_ENGINE switch remain removed. Prefer `loki owner/repo#N` for issues.
|
|
9
9
|
|
|
@@ -476,4 +476,4 @@ Implemented, planned and deprecated items, with the version each landed in: `ski
|
|
|
476
476
|
|
|
477
477
|
---
|
|
478
478
|
|
|
479
|
-
**v11.65.
|
|
479
|
+
**v11.65.6 | [Autonomi](https://www.autonomi.dev/) flagship product | core skill**
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
11.65.
|
|
1
|
+
11.65.6
|
package/autonomy/run.sh
CHANGED
|
@@ -16508,24 +16508,15 @@ _dispatch_reviewer() {
|
|
|
16508
16508
|
fi
|
|
16509
16509
|
case "${PROVIDER_NAME:-claude}" in
|
|
16510
16510
|
claude)
|
|
16511
|
-
#
|
|
16512
|
-
#
|
|
16513
|
-
#
|
|
16514
|
-
#
|
|
16515
|
-
#
|
|
16516
|
-
# reviewer
|
|
16517
|
-
#
|
|
16518
|
-
#
|
|
16519
|
-
#
|
|
16520
|
-
# routing security review to Fable: Fable's safety classifiers
|
|
16521
|
-
# refuse cybersecurity content, and in non-interactive (-p)
|
|
16522
|
-
# mode a flagged request ends the turn with stop_reason
|
|
16523
|
-
# "refusal" instead of a transparent Opus re-run. A refused
|
|
16524
|
-
# security reviewer would return no VERDICT and break the
|
|
16525
|
-
# unanimous-council gate. Defensive-cyber capability lives in
|
|
16526
|
-
# Mythos 5 (Project Glasswing), not Fable. If a future change
|
|
16527
|
-
# adds --model here, the security-sentinel reviewer must be
|
|
16528
|
-
# pinned to opus, never fable.
|
|
16511
|
+
# REVIEWER MODEL PIN: by DEFAULT reviewers pass NO --model, so they
|
|
16512
|
+
# run on the account default model; a mid-flight model override or
|
|
16513
|
+
# LOKI_FABLE_ARCHITECT only rewrites the iteration's tier_param, not
|
|
16514
|
+
# this dispatch. The ONLY way to pin the reviewer model is the
|
|
16515
|
+
# explicit opt-in LOKI_ADVISOR_MODEL below (haiku|sonnet|opus).
|
|
16516
|
+
# A reviewer turn that ends with no VERDICT is never a PASS: the
|
|
16517
|
+
# unanimous-council gate counts it as no verdict. On the raw-SDK
|
|
16518
|
+
# judge path a refusal ends in a named outcome (refused:<category>)
|
|
16519
|
+
# in the gate record (sdk_invoker.ts judgeOutcomeNote).
|
|
16529
16520
|
# EMBED 2 + 3 (v7.33.0). This is a trust-gate council subcall.
|
|
16530
16521
|
# $prompt_text is fully self-contained (the diff, changed files,
|
|
16531
16522
|
# checks, and strict VERDICT/FINDINGS output format), output is
|
|
@@ -16550,18 +16541,15 @@ _dispatch_reviewer() {
|
|
|
16550
16541
|
# account default). When the operator/user sets LOKI_ADVISOR_MODEL to
|
|
16551
16542
|
# an allowlisted alias, pin the trust-gate reviewer to it for a
|
|
16552
16543
|
# stronger/consistent judge - the founder's "advisor will be opus if
|
|
16553
|
-
# needed or user opted".
|
|
16554
|
-
#
|
|
16555
|
-
# a -p turn with stop_reason "refusal", which would return no VERDICT
|
|
16556
|
-
# and break the unanimous-council gate. So only haiku|sonnet|opus are
|
|
16557
|
-
# honored; fable (or any other value) is ignored with no --model.
|
|
16544
|
+
# needed or user opted". Only the tier aliases haiku|sonnet|opus are
|
|
16545
|
+
# honored; any other value is ignored with no --model.
|
|
16558
16546
|
if [ -n "${LOKI_ADVISOR_MODEL:-}" ]; then
|
|
16559
16547
|
local _adv _adv_norm
|
|
16560
16548
|
_adv="${LOKI_ADVISOR_MODEL}"
|
|
16561
16549
|
_adv_norm="$(printf '%s' "$_adv" | tr '[:upper:]' '[:lower:]' | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
|
|
16562
16550
|
case "$_adv_norm" in
|
|
16563
16551
|
haiku|sonnet|opus) _rv_argv+=("--model" "$_adv_norm") ;;
|
|
16564
|
-
*) : ;; #
|
|
16552
|
+
*) : ;; # any other value: no --model (account default)
|
|
16565
16553
|
esac
|
|
16566
16554
|
fi
|
|
16567
16555
|
if loki_is_supervised_simple_web; then
|
package/dashboard/__init__.py
CHANGED
package/dashboard/server.py
CHANGED
|
@@ -3956,8 +3956,8 @@ class StartBuildRequest(BaseModel):
|
|
|
3956
3956
|
# deliberate session-scope reset, run.sh:15623), which is why start-time uses
|
|
3957
3957
|
# env, not the override file.
|
|
3958
3958
|
model: Optional[str] = None
|
|
3959
|
-
# Advisor / reviewer model (opt-in Opus judge). haiku|sonnet|opus;
|
|
3960
|
-
#
|
|
3959
|
+
# Advisor / reviewer model (opt-in Opus judge). haiku|sonnet|opus; any other
|
|
3960
|
+
# value is rejected. Exported as LOKI_ADVISOR_MODEL into the run env; run.sh reads it at
|
|
3961
3961
|
# the reviewer-dispatch site (run.sh:10199) to pin the code-review judge while
|
|
3962
3962
|
# execution stays on the chosen/default execution model. Absent/invalid -> no
|
|
3963
3963
|
# advisor pin (reviewers use the account default).
|
package/docs/CLI-REFERENCE.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# CLI reference
|
|
2
2
|
|
|
3
|
-
Generated from `loki-ts/src/cli/registry.ts` by `scripts/generate-stale-zero.sh` for v11.65.
|
|
3
|
+
Generated from `loki-ts/src/cli/registry.ts` by `scripts/generate-stale-zero.sh` for v11.65.6. Do not edit by hand.
|
|
4
4
|
Hidden and legacy-only commands are omitted; see `docs/v10/CLI-MODERN.md` for the full inventory.
|
|
5
5
|
|
|
6
6
|
| Command | Description |
|
package/docs/INSTALLATION.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Loki Mode, by [Autonomi](https://www.autonomi.dev/), turns a spec or an issue into a verified pull request with a receipt you can check. This page covers installing it, a first run, and the options around it.
|
|
4
4
|
|
|
5
|
-
**Version:** v11.65.
|
|
5
|
+
**Version:** v11.65.6
|
|
6
6
|
|
|
7
7
|
**Engine note:** `loki start` is the primary command. `loki start`, `loki "<task>"`, `loki owner/repo#N` and `loki quick` all run the Loki 10 engine, whatever the flag order or input form (PRD file, issue ref, task or one-word brief). The previous loop runs only on `--engine legacy`, `LOKI_ENGINE=legacy`, or for one call when a flag Loki 10 cannot honor is present. See the [user guide](v10/GUIDE.md) and the [5-minute quickstart](QUICKSTART.md).
|
|
8
8
|
|
|
@@ -1866,3 +1866,11 @@ L0 review rule (ENGINE-LAWS.md L0): a fix that adds an `if` or a regex about the
|
|
|
1866
1866
|
- Siblings swept (measured with `git grep -lE "Bun\.spawn|spawnSync|execFileSync|execSync|child_process" -- loki-ts/tests` minus `git grep -l "setLoadAwareTimeout|setDefaultTimeout" -- loki-ts/tests`): 164 files spawn a subprocess, 154 of them set no timeout (engine10 81, runner 15, util 14, commands 11, features 10, e10ext 7, project_model 4, integration 3, council 3, providers 2, others 4). Only the two measured failing files are bounded here. The other 154 are out of scope for this change because none has been timed and bounding all of them blind would hide real slowness; each file that fails the same way gets the same one-line call. Per-test durations were not recorded.
|
|
1867
1867
|
- Mechanism: setLoadAwareTimeout(30_000) at file level in both measured files, scaled by machine load and overridable with LOKI_TEST_TIMEOUT_SCALE and LOKI_TEST_TIMEOUT_MS.
|
|
1868
1868
|
- Fixture: the two named tests; red at the 5000ms default under load, green after (bun test of both files: 36 pass, 0 fail). Mutant on the sibling: setLoadAwareTimeout(1) in mcp_config.test.ts turns the file red with hook timeouts (3.55ms, 3.16ms); restored.
|
|
1869
|
+
|
|
1870
|
+
## FC-MODEL-OVERRIDE-TEST-TOO-SLOW tests/test-model-override.sh took 445s at load 20-29 and exceeded the 300s shard budget, so a reviewer could not run it to completion
|
|
1871
|
+
- User-visible vs raw: raw (a guard nobody can finish running is a guard nobody trusts; no user message).
|
|
1872
|
+
- Law: a guard script finishes inside the shard budget at the documented load, or it is split; a slow guard is not a skipped guard.
|
|
1873
|
+
- Cause (measured, per-line $SECONDS stamps): two parity matrices took 181s and 249s of the 445s. Each of their 224 cells started a fresh python3 that imported dashboard.server (0.75s per import at load 28), so 448 imports cost about 340s.
|
|
1874
|
+
- Siblings swept: the resolver matrix (section 7) and the session-pin matrix (section 9) both used the per-cell python leg. The estimator leg (`loki plan`) and the bash legs are different processes by design and stay per cell. Other python3 -c calls in the file run once.
|
|
1875
|
+
- Mechanism: one `py_batch` helper resolves every cell in a single interpreter. Each cell runs against a fresh copy of the ambient environment plus its own exports, the same input the per-cell `env "$@" python3` gave. Cell counts stay at 224 and 224.
|
|
1876
|
+
- Fixture: after the change the file finishes in 103s with 71 passed, 0 failed (before: 445s, 71 passed). Mutant: dashboard/server.py `_clamp_to_max_tier` opus arm returning the alias unchanged makes the resolver matrix report PARITY MISMATCH on the fable cells; restored and re-run green.
|