loki-mode 11.60.9 → 11.60.11
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/dashboard/__init__.py +1 -1
- package/docs/CLI-REFERENCE.md +1 -1
- package/docs/INSTALLATION.md +1 -1
- package/docs/v10/FAILURE-CLASSES.md +17 -0
- package/loki-ts/dist/loki.js +1238 -1238
- package/mcp/__init__.py +1 -1
- package/package.json +2 -2
- package/packages/control-plane/dist/server.js +9 -2
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
- package/web-app/dist/assets/{AdminPage-CaF2CE8P.js → AdminPage-DcTFJwch.js} +1 -1
- package/web-app/dist/assets/{Avatar-BPVWZnIv.js → Avatar-Ck9r3eWE.js} +1 -1
- package/web-app/dist/assets/{Badge-qp3XIxjv.js → Badge-DTkl4EYH.js} +1 -1
- package/web-app/dist/assets/{Button-CyX8oknF.js → Button-B_HR3EER.js} +1 -1
- package/web-app/dist/assets/{CockpitPage-BIiH1YxL.js → CockpitPage-D9o09NTH.js} +1 -1
- package/web-app/dist/assets/{ComparePage-CdEwgTO-.js → ComparePage-L_M7Srav.js} +1 -1
- package/web-app/dist/assets/{ErrorBoundary-DmTfiGlS.js → ErrorBoundary-BVTYiMQk.js} +1 -1
- package/web-app/dist/assets/{EvidenceReceiptPanel-D2Q_1gf0.js → EvidenceReceiptPanel-C6Weq6r8.js} +1 -1
- package/web-app/dist/assets/{GitHubIssuesPanel-BAe_quud.js → GitHubIssuesPanel-BJtCbLl8.js} +1 -1
- package/web-app/dist/assets/{GitHubPRsPanel-Dc-l2Ftj.js → GitHubPRsPanel-k2Hcth5M.js} +1 -1
- package/web-app/dist/assets/{HomePage-DwcJqdEw.js → HomePage-gqSJU1RF.js} +2 -2
- package/web-app/dist/assets/{LoginPage-Cxj3d5tw.js → LoginPage-BYQZIGGo.js} +1 -1
- package/web-app/dist/assets/{MagicPage-DFgsp6w1.js → MagicPage-BnCAczTZ.js} +1 -1
- package/web-app/dist/assets/{MetricsPage-lotEBeyI.js → MetricsPage-D0vMGKNM.js} +1 -1
- package/web-app/dist/assets/{NotFoundPage-xKsvMTRb.js → NotFoundPage-D-g1C51b.js} +1 -1
- package/web-app/dist/assets/{ProjectPage-BfmxnhzJ.js → ProjectPage-CRwawExu.js} +3 -3
- package/web-app/dist/assets/{ProjectsPage-BDekTugq.js → ProjectsPage-qiL4-lOM.js} +1 -1
- package/web-app/dist/assets/{SettingsPage-9mappmmu.js → SettingsPage-DP1CDDpJ.js} +1 -1
- package/web-app/dist/assets/{ShowcasePage-DtvwMYkS.js → ShowcasePage-K_-b3FI2.js} +1 -1
- package/web-app/dist/assets/{SystemSettingsPage-C-1OzRO9.js → SystemSettingsPage-Cn-OLaPw.js} +1 -1
- package/web-app/dist/assets/{TeamsPage-orcpAROb.js → TeamsPage-G8HTyNMp.js} +1 -1
- package/web-app/dist/assets/{TemplatesPage-COHo4qB1.js → TemplatesPage-BxljRSL6.js} +1 -1
- package/web-app/dist/assets/{TerminalOutput-37odR61E.js → TerminalOutput-CFGxk2MV.js} +1 -1
- package/web-app/dist/assets/{activity-CULSyxCA.js → activity-d_YefAhk.js} +1 -1
- package/web-app/dist/assets/{bell-DsKUq9Ag.js → bell-BEm-DrzN.js} +1 -1
- package/web-app/dist/assets/{bot-C7WqgkwD.js → bot-CK_YGI_y.js} +1 -1
- package/web-app/dist/assets/{check-BLqByq3h.js → check-B1drGcs7.js} +1 -1
- package/web-app/dist/assets/{chevron-left-CDsMm2ls.js → chevron-left-Jq-zLnOB.js} +1 -1
- package/web-app/dist/assets/{circle-alert-DAEezM1F.js → circle-alert-DmAIGCyd.js} +1 -1
- package/web-app/dist/assets/{clock-1I9v1wio.js → clock-DjV-Obmr.js} +1 -1
- package/web-app/dist/assets/{cloud-KfVxi4IP.js → cloud-C0McEg4N.js} +1 -1
- package/web-app/dist/assets/{code-xml-BofwJfRZ.js → code-xml-mw2cF5MU.js} +1 -1
- package/web-app/dist/assets/{database-D05E4MF_.js → database-gO4oUgLI.js} +1 -1
- package/web-app/dist/assets/{dollar-sign-BHTM0ljX.js → dollar-sign-Bqm18-12.js} +1 -1
- package/web-app/dist/assets/{file-code-corner-DMnVM5wI.js → file-code-corner-oLsVxL4J.js} +1 -1
- package/web-app/dist/assets/{file-plus-vJnwggYe.js → file-plus-Cey9dIcw.js} +1 -1
- package/web-app/dist/assets/{globe-D_ezdpCM.js → globe-wD41dSZS.js} +1 -1
- package/web-app/dist/assets/{hammer-DxXmcStG.js → hammer-aYbG5rjm.js} +1 -1
- package/web-app/dist/assets/{index-CEs1VOJ6.js → index-DIhGcsHl.js} +3 -3
- package/web-app/dist/assets/{layers-D7y2hl6u.js → layers-Bmnk4x4l.js} +1 -1
- package/web-app/dist/assets/{loader-circle-DZX6HcWJ.js → loader-circle-O1LZOJXH.js} +1 -1
- package/web-app/dist/assets/{lock-CX-2loDj.js → lock-Bla4ZLgJ.js} +1 -1
- package/web-app/dist/assets/{package-CVA2uq_j.js → package-BSH6-U5h.js} +1 -1
- package/web-app/dist/assets/{plus-C_m7It1V.js → plus-B072T7r2.js} +1 -1
- package/web-app/dist/assets/{refresh-cw-DvCF-ZFg.js → refresh-cw-DfGJwPqI.js} +1 -1
- package/web-app/dist/assets/{rotate-ccw-Cc99_gj0.js → rotate-ccw-D6A_Rf3j.js} +1 -1
- package/web-app/dist/assets/{scroll-text-B2CUpEHH.js → scroll-text-DwDqHZQd.js} +1 -1
- package/web-app/dist/assets/{server-CPD0FHjo.js → server-BxgUPqqH.js} +1 -1
- package/web-app/dist/assets/{shield-alert-C1oPRulG.js → shield-alert-CKz4UBRr.js} +1 -1
- package/web-app/dist/assets/{thumbs-up-Xj8BQKvV.js → thumbs-up-BYOtrO5z.js} +1 -1
- package/web-app/dist/assets/{trash-2-BNzg1Hd1.js → trash-2-BauSRqPP.js} +1 -1
- package/web-app/dist/assets/{trending-down-B5N_bcv1.js → trending-down-EPRcaadk.js} +1 -1
- package/web-app/dist/assets/{trending-up-2b17vIp_.js → trending-up-Dz3WDLta.js} +1 -1
- package/web-app/dist/assets/{upload-Cx9tyZP8.js → upload-DAR1hrK3.js} +1 -1
- package/web-app/dist/assets/{usePolling-DDcabgxc.js → usePolling-DkJryIxg.js} +1 -1
- package/web-app/dist/assets/{user-CwWUa91i.js → user-NAtL6bTb.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.60.
|
|
6
|
+
# Loki Mode v11.60.11
|
|
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.60.
|
|
479
|
+
**v11.60.11 | [Autonomi](https://www.autonomi.dev/) flagship product | core skill**
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
11.60.
|
|
1
|
+
11.60.11
|
package/dashboard/__init__.py
CHANGED
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.60.
|
|
3
|
+
Generated from `loki-ts/src/cli/registry.ts` by `scripts/generate-stale-zero.sh` for v11.60.11. 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.60.
|
|
5
|
+
**Version:** v11.60.11
|
|
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
|
|
|
@@ -1601,6 +1601,14 @@ L0 review rule (ENGINE-LAWS.md L0): a fix that adds an `if` or a regex about the
|
|
|
1601
1601
|
- Mechanism: extract_invocations also reads `loki <word> [--flag ...]` from the text left after backticked spans are removed. A plain hit with a --flag is checked exactly like a backticked one. A bare `loki <word>` could be prose, so it is checked only when the word is already a literal command in loki.bash main_commands; measured on the newest 30 sections the plain extractor finds 4 distinct invocations and no prose false positive.
|
|
1602
1602
|
- Fixture: tests/test-help-changelog-drift.sh self-test: plain-prose real flag passes, plain-prose unknown flag is reported by name, bare prose naming no command passes, and a window with no invocation still reports broken extraction. With the plain branch removed the first and third fixtures and the real run go red.
|
|
1603
1603
|
|
|
1604
|
+
## FC-HELP-DRIFT-WINDOW-CAP The help-drift guard went red on main again because five consecutive slice releases named no command, so its fixed 5-section window held nothing and it called its own extraction broken
|
|
1605
|
+
- User-visible vs raw: raw (a red gate on a clean main). tests/test-help-changelog-drift.sh exits 1 with "no 'loki ...' invocations (backticked or plain) in the newest 5 CHANGELOG sections; extraction is broken" on origin/main 11ab1df18 (v11.60.6) and on a78f48031 (v11.60.8), after FC-HELP-DRIFT-PLAIN-PROSE-CHANGELOG shipped in v11.60.6.
|
|
1606
|
+
- Law: the same as FC-HELP-DRIFT-PLAIN-PROSE-CHANGELOG, a guard that reads nothing proves nothing and is not silenced by relaxing the assertion or by adding text to the CHANGELOG; and a window sized in sections is a rate assumption that slice-per-release cadence (3-10 per hour) breaks.
|
|
1607
|
+
- Cause (measured): sections v11.60.4 to v11.60.8 are plain prose naming no `loki <word>`; the plain-prose extractor is correct, the cap was the fault. The nearest section naming an invocation is within 10 sections (LOKI_HELP_DRIFT_SECTIONS=LOKI_HELP_DRIFT_WINDOW=10 gives a green real run), so a cap of 5 is red today and any larger fixed cap is red again after enough command-free releases.
|
|
1608
|
+
- Siblings swept: the only other section-count reader of CHANGELOG is the per-version release-notes extraction (scripts/release-notes.sh, tests/test-release-notes.sh), which selects one named version and has no window.
|
|
1609
|
+
- Mechanism: LOKI_HELP_DRIFT_WINDOW defaults to 1000 (the whole file). The window still widens one section at a time and stops at the nearest section that names an invocation, so only the newest invocation-bearing sections are checked. "Extraction is broken" now means no invocation anywhere in the CHANGELOG. The assertion text is unchanged.
|
|
1610
|
+
- Fixture: tests/test-help-changelog-drift.sh self-test: an invocation six sections down passes (red at the old cap, green now) and a CHANGELOG with no invocation anywhere still reports broken extraction.
|
|
1611
|
+
|
|
1604
1612
|
## FC-COMMIT-STAGES-USER-UNTRACKED A commit publishes the user's untracked files that were present before the run (FC-42 family)
|
|
1605
1613
|
- Law: only what the run changed is published; a pre-run user file the run left untouched is never staged into a Loki commit (the same rule dropSet already applies to pre-run tracked dirt).
|
|
1606
1614
|
- Cause (measured, #353 CW-18 test): intake records preexisting_untracked_blobs for every untracked file, but only discardIfSatisfied read it. The commit stage and the supervisor backstop run `git add -A` and dropSet excluded only untouched pre-run tracked dirt, so a normal VERIFIED run committed the user's untracked notes.
|
|
@@ -1616,3 +1624,12 @@ L0 review rule (ENGINE-LAWS.md L0): a fix that adds an `if` or a regex about the
|
|
|
1616
1624
|
- Siblings swept: every other `process.env` spawn in providers/ is already listed with a reason (claude_flags.ts, runner/providers.ts) or token-free; mcp_config.ts is the only unlisted one (guard output).
|
|
1617
1625
|
- Mechanism: spawn through `tokenFreeEnv(process.env)` (util/safe_git.ts), the shared scoped env builder.
|
|
1618
1626
|
- Fixture: tests/providers/mcp_config.test.ts runs a fake `cline` that records GH_TOKEN, GITHUB_TOKEN and SSH_AUTH_SOCK with canary values set in the parent; red with `env: process.env` (restored in the mutant run), green with tokenFreeEnv. The full_env_spawn_guard goes red on the same mutant.
|
|
1627
|
+
|
|
1628
|
+
|
|
1629
|
+
## FC-WALL-FILE-WITHOUT-RUNNER-SILENTLY-DROPPED A sealed Wall file that no runner of the repo can run was dropped from verify, named nowhere, and the receipt still said wall.passed true
|
|
1630
|
+
- User-visible vs raw: user-visible. A Wall of `loki_wall_a_test.py` plus `loki_wall_b.rs` (or `.java`, `.rb`) verified with `wall_passed: true` and an empty `not_proven`; the second acceptance test was sealed read-only and never executed.
|
|
1631
|
+
- Law: a sealed Wall file is either executed and passing, or named NOT PROVEN; a proof never covers a file it did not run.
|
|
1632
|
+
- Cause (measured): wall.ts guessRunner returns null for any extension other than `.py`, `.go` and the repo's JS/TS runner, so the file was sealed but left out of wallTests and out of not_run_files; verify.ts built wallTests from `map.tests` filtered by the sealed paths, so a path with no test entry vanished, and wall_passed was computed only over the checks that ran.
|
|
1633
|
+
- Siblings swept: every extension guessRunner refuses (`.rs`, `.java`, `.rb`, `.php`, `.cs`, a JS file with no JS runner detected), a `.py` or JS Wall file the verify test map does not list (same drop in verify), the all-dropped Wall (wall_passed stays unset, never true), publishableWall (requires an executed passing target check, so a dropped file is never published; it is now named in not_proven instead of vanishing), holdout checks (unchanged, they come from a separate store).
|
|
1634
|
+
- Mechanism: one wording, `NO_RUNNER_REASON` in util/check_result.ts. wall.ts adds each sealed file without a runner to `not_run_files` (seal.ts already turns those into `Wall test not executed: <file>: <reason>`); verify.ts adds the same line to `not_proven` for every sealed path missing from wallTests and refuses `wall_passed: true` while any is missing (a failing check still gives false). Seal's set dedups the identical text.
|
|
1635
|
+
- Fixture: tests/engine10/verify.test.ts "FC-WALL-FILE-WITHOUT-RUNNER-SILENTLY-DROPPED" (mixed runnable plus `.java` is not a bare true, all-dropped is unset, the runnable-only control stays true with no such line) and the extended tests/engine10/wall.test.ts "a sealed file whose runner cannot be guessed" (the `.rb` is named, the `.py` is not). Mutants: dropping the wall_passed guard, dropping the not_proven push, and dropping the not_run_files push each turn the matching test red.
|