loki-mode 9.64.0 → 9.65.0
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/lib/proof-generator.py +17 -0
- package/autonomy/lib/proof-verify.py +4 -0
- package/dashboard/__init__.py +1 -1
- package/docs/INSTALLATION.md +1 -1
- package/loki-ts/dist/loki.js +94 -94
- package/mcp/__init__.py +1 -1
- package/package.json +1 -1
- package/plugins/loki-mode/.claude-plugin/plugin.json +1 -1
package/SKILL.md
CHANGED
|
@@ -3,7 +3,7 @@ name: loki-mode
|
|
|
3
3
|
description: Autonomous spec-driven build system with a built-in trust layer. It does not call work done until it is verified (RARV-C closure loop, 8 quality gates, completion council, verified-completion evidence gate). Triggers on "Loki Mode". Takes a spec (PRD, GitHub issue, OpenAPI doc, etc.) to deployed product with minimal human intervention. Provider-agnostic. Requires --dangerously-skip-permissions flag.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Loki Mode v9.
|
|
6
|
+
# Loki Mode v9.65.0
|
|
7
7
|
|
|
8
8
|
**You are an autonomous agent. You make decisions. You do not ask questions. You do not stop.**
|
|
9
9
|
|
|
@@ -470,4 +470,4 @@ See `CHANGELOG.md` entries [7.5.7], [7.5.8], [7.5.13] for the per-fix list and r
|
|
|
470
470
|
|
|
471
471
|
---
|
|
472
472
|
|
|
473
|
-
**v9.
|
|
473
|
+
**v9.65.0 | [Autonomi](https://www.autonomi.dev/) flagship product | ~410 lines core**
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
9.
|
|
1
|
+
9.65.0
|
|
@@ -855,6 +855,15 @@ def _collect_functional(loki_dir):
|
|
|
855
855
|
return out
|
|
856
856
|
|
|
857
857
|
|
|
858
|
+
def _collect_ablation(loki_dir):
|
|
859
|
+
"""Copy .loki/quality/ablation.json verbatim (S-113). None when absent or
|
|
860
|
+
unreadable, so the caller attaches no key and an ablation-less receipt stays
|
|
861
|
+
byte-identical. _compute_headline reads status == not_load_bearing: a change
|
|
862
|
+
whose deletion leaves the suite green is not proven by that suite.
|
|
863
|
+
"""
|
|
864
|
+
return _read_json(os.path.join(loki_dir, "quality", "ablation.json"), default=None)
|
|
865
|
+
|
|
866
|
+
|
|
858
867
|
def _collect_healthcheck(loki_dir):
|
|
859
868
|
"""Read .loki/app-runner/health.json (the app-runner liveness probe).
|
|
860
869
|
|
|
@@ -1460,6 +1469,9 @@ def _build_proof(args, loki_dir, target_dir, repo_root):
|
|
|
1460
1469
|
# only, never read by _compute_headline / _compute_degraded.
|
|
1461
1470
|
if journey:
|
|
1462
1471
|
facts["journey"] = journey
|
|
1472
|
+
ablation = _collect_ablation(loki_dir)
|
|
1473
|
+
if ablation is not None:
|
|
1474
|
+
facts["ablation"] = ablation
|
|
1463
1475
|
|
|
1464
1476
|
# ASSESSMENTS: LLM opinions. Explicitly labeled as judgment, NOT proof. A
|
|
1465
1477
|
# green council verdict is an opinion that can be wrong or gamed; it never
|
|
@@ -1760,6 +1772,11 @@ def _compute_headline(facts, degraded):
|
|
|
1760
1772
|
and tests.get("exit_code") == 0
|
|
1761
1773
|
)
|
|
1762
1774
|
if tests_verified and not degraded and diff_nonempty:
|
|
1775
|
+
# S-113: ablation showed deleting the change leaves the suite green, so
|
|
1776
|
+
# the passing tests do not prove the change. Never VERIFIED; amber.
|
|
1777
|
+
ablation = facts.get("ablation")
|
|
1778
|
+
if isinstance(ablation, dict) and ablation.get("status") == "not_load_bearing":
|
|
1779
|
+
return "VERIFIED WITH GAPS"
|
|
1763
1780
|
return "VERIFIED"
|
|
1764
1781
|
# Any fact verified at all (tests/build verified, or a passed gate)?
|
|
1765
1782
|
# A non-empty diff is a PREREQUISITE for VERIFIED (checked above), NOT a
|
|
@@ -341,6 +341,10 @@ def _compute_headline(facts, degraded):
|
|
|
341
341
|
and tests.get("exit_code") == 0
|
|
342
342
|
)
|
|
343
343
|
if tests_verified and not degraded and diff_nonempty:
|
|
344
|
+
# S-113 mirror: a not_load_bearing ablation never yields VERIFIED.
|
|
345
|
+
ablation = facts.get("ablation")
|
|
346
|
+
if isinstance(ablation, dict) and ablation.get("status") == "not_load_bearing":
|
|
347
|
+
return "VERIFIED WITH GAPS"
|
|
344
348
|
return "VERIFIED"
|
|
345
349
|
any_verified = (
|
|
346
350
|
tests.get("status") == "verified"
|
package/dashboard/__init__.py
CHANGED
package/docs/INSTALLATION.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The flagship product of [Autonomi](https://www.autonomi.dev/). Loki Mode is a spec-driven autonomous builder with a built-in trust layer that takes any spec to a deployed product and verifies completion with evidence (quality gates plus a completion council), not just a "done" claim. Complete installation instructions for all platforms and use cases.
|
|
4
4
|
|
|
5
|
-
**Version:** v9.
|
|
5
|
+
**Version:** v9.65.0
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|