pluribus-context 0.3.33 → 0.3.35

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +7 -6
  3. package/docs/ai-pr-review-receipts.md +153 -0
  4. package/docs/canonical-output-receipts.md +107 -0
  5. package/docs/community-review-packet.md +11 -11
  6. package/docs/context-budget-receipts.md +22 -0
  7. package/docs/context-input-evidence.md +15 -0
  8. package/docs/dynamic-workflow-run-receipts.md +158 -0
  9. package/docs/install-plan-receipts.md +77 -0
  10. package/docs/mcp-tool-visibility-receipts.md +67 -0
  11. package/docs/review-primitive-gate.md +107 -0
  12. package/docs/skill-policy-receipts.md +87 -0
  13. package/docs/subagent-role-receipts.md +95 -0
  14. package/docs/temporal-context-receipts.md +123 -0
  15. package/examples/agent-skills/context-receipts/SKILL.md +21 -0
  16. package/examples/agent-skills/skill-policy-receipts/README.md +22 -0
  17. package/examples/agent-skills/skill-policy-receipts/SKILL.md +77 -0
  18. package/examples/ai-pr-review-receipts/.github/pull_request_template.md +31 -0
  19. package/examples/ai-pr-review-receipts/README.md +5 -0
  20. package/examples/canonical-output-receipts/canonical-output-receipt.json +55 -0
  21. package/examples/claude-code-review-hook/README.md +74 -0
  22. package/examples/claude-code-review-hook/check-review-receipt-hook.mjs +80 -0
  23. package/examples/claude-code-review-hook/sample-task-completed-event.json +6 -0
  24. package/examples/context-input-evidence/code-search-retrieval-otel-trace.json +879 -0
  25. package/examples/context-input-evidence/code-search-retrieval-receipt.ndjson +8 -0
  26. package/examples/context-input-evidence/convert-code-search-retrieval-log.mjs +280 -0
  27. package/examples/context-input-evidence/sample-code-search-retrieval-log.jsonl +5 -0
  28. package/examples/dynamic-workflow-run-receipts/README.md +18 -0
  29. package/examples/dynamic-workflow-run-receipts/workflow-run-receipt.json +112 -0
  30. package/examples/install-plan-receipts/README.md +34 -0
  31. package/examples/install-plan-receipts/agent-install-plan-receipt.json +56 -0
  32. package/examples/review-primitive-gate/README.md +19 -0
  33. package/examples/review-primitive-gate/check-review-receipt.mjs +100 -0
  34. package/examples/review-primitive-gate/fail-review-receipt.json +42 -0
  35. package/examples/review-primitive-gate/pass-review-receipt.json +54 -0
  36. package/examples/subagent-role-receipts/README.md +15 -0
  37. package/examples/subagent-role-receipts/agents.toml +36 -0
  38. package/examples/temporal-context-receipts/CURRENT_STATE.md +13 -0
  39. package/examples/temporal-context-receipts/specs/2025-checkout-rewrite.md +10 -0
  40. package/examples/temporal-context-receipts/specs/2026-checkout-risk-notes.md +10 -0
  41. package/examples/temporal-context-receipts/temporal-authority-receipt.json +27 -0
  42. package/package.json +1 -1
  43. package/src/utils/version.js +1 -1
@@ -0,0 +1,42 @@
1
+ {
2
+ "type": "agent.review_primitive_receipt.v1",
3
+ "assignment_id": "agent-auth-audit-43",
4
+ "run_id": "run-2026-05-31T17-05Z",
5
+ "agent": {
6
+ "tool": "claude-code",
7
+ "role": "auth-reviewer"
8
+ },
9
+ "approved_boundaries": {
10
+ "read": ["src/auth/**", "tests/auth/**"],
11
+ "write": ["tests/auth/**"],
12
+ "network": false
13
+ },
14
+ "scope_access_changes": [
15
+ {
16
+ "change": "write src/auth/session.ts",
17
+ "reason": "agent decided implementation change was easier than fixture-only test",
18
+ "approved": false
19
+ }
20
+ ],
21
+ "commands_and_checks": [
22
+ {
23
+ "name": "npm test -- tests/auth",
24
+ "kind": "required_test",
25
+ "status": "skipped",
26
+ "evidence": "not-run"
27
+ }
28
+ ],
29
+ "refused_operations": [],
30
+ "handoff": {
31
+ "changed_files_bucket": "under_5",
32
+ "evidence_path": "artifacts/agent-auth-audit-43.json",
33
+ "next_safe_action": "human must review scope change before any continuation"
34
+ },
35
+ "resume_state": "unsafe-to-resume",
36
+ "privacy": {
37
+ "raw_prompts_logged": false,
38
+ "raw_tool_output_logged": false,
39
+ "source_code_logged": false,
40
+ "secrets_logged": false
41
+ }
42
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "type": "agent.review_primitive_receipt.v1",
3
+ "assignment_id": "agent-auth-audit-42",
4
+ "run_id": "run-2026-05-31T17-00Z",
5
+ "agent": {
6
+ "tool": "claude-code",
7
+ "role": "auth-reviewer"
8
+ },
9
+ "approved_boundaries": {
10
+ "read": ["src/auth/**", "tests/auth/**"],
11
+ "write": ["tests/auth/**"],
12
+ "network": false
13
+ },
14
+ "scope_access_changes": [
15
+ {
16
+ "change": "read docs/security/**",
17
+ "reason": "needed policy wording for test fixture",
18
+ "approved": true,
19
+ "approved_by": "human-reviewer"
20
+ }
21
+ ],
22
+ "commands_and_checks": [
23
+ {
24
+ "name": "npm test -- tests/auth",
25
+ "kind": "required_test",
26
+ "status": "passed",
27
+ "evidence": "ci://job/123#auth-tests"
28
+ },
29
+ {
30
+ "name": "npm run lint",
31
+ "kind": "required_check",
32
+ "status": "passed",
33
+ "evidence": "ci://job/123#lint"
34
+ }
35
+ ],
36
+ "refused_operations": [
37
+ {
38
+ "operation": "write src/auth/session.ts",
39
+ "reason": "outside approved write boundary"
40
+ }
41
+ ],
42
+ "handoff": {
43
+ "changed_files_bucket": "under_5",
44
+ "evidence_path": "artifacts/agent-auth-audit-42.json",
45
+ "next_safe_action": "review tests/auth/session.test.ts before merge"
46
+ },
47
+ "resume_state": "complete",
48
+ "privacy": {
49
+ "raw_prompts_logged": false,
50
+ "raw_tool_output_logged": false,
51
+ "source_code_logged": false,
52
+ "secrets_logged": false
53
+ }
54
+ }
@@ -0,0 +1,15 @@
1
+ # Subagent role receipts example
2
+
3
+ This directory contains a small `agents.toml` example for teams experimenting with project-local subagent roles.
4
+
5
+ The important artifact is not the exact TOML dialect. The important artifact is the receipt that proves the role boundary:
6
+
7
+ - requested role vs effective role;
8
+ - role source and coarse hash/version;
9
+ - whether role instructions loaded;
10
+ - allowed/refused write and tool capabilities;
11
+ - boundary decisions made by the role;
12
+ - where the role stopped and the next safe action;
13
+ - privacy flags excluding raw prompts, code, transcripts, secrets, customer data, and raw tool output.
14
+
15
+ See [`../../docs/subagent-role-receipts.md`](../../docs/subagent-role-receipts.md) for the full recipe.
@@ -0,0 +1,36 @@
1
+ # Example only: adapt field names and location to the subagent runner you use.
2
+ # The stable idea is the receipt, not this exact TOML dialect.
3
+
4
+ [[agents]]
5
+ name = "blast-radius-reviewer"
6
+ description = "Reviews AI-generated PRs by operational blast radius before merge."
7
+ model = "default"
8
+ tools = ["read", "grep", "test-summary"]
9
+ writes_allowed = false
10
+ instructions = """
11
+ Review by blast radius, not diff size.
12
+
13
+ Require explicit evidence for:
14
+ - schema or persisted data contracts;
15
+ - live reader/writer compatibility;
16
+ - async jobs, queues, cron, webhooks, and retries;
17
+ - rollout gates, feature flags, or kill switches;
18
+ - external side effects such as email, payments, auth, billing, analytics, or third-party APIs;
19
+ - generated files, public APIs, plugin manifests, MCP/Skill/hook configuration.
20
+
21
+ Do not approve merge when any high-risk boundary is ambiguous. Emit a privacy-safe review.blast_radius.v1 or subagent.role_boundary.v1 receipt instead of logging raw source, prompts, transcripts, or tool output.
22
+ """
23
+
24
+ [[agents]]
25
+ name = "temporal-authority-checker"
26
+ description = "Checks whether matched docs/specs are current authority or historical citations before edits."
27
+ model = "default"
28
+ tools = ["read", "grep"]
29
+ writes_allowed = false
30
+ instructions = """
31
+ Before code changes, identify the current authority source and any historical/superseded specs.
32
+
33
+ Refuse writes when two sources conflict and neither one declares status, date, scope, or superseded_by metadata. Emit a privacy-safe context.temporal_authority.v1 or subagent.role_boundary.v1 receipt with coarse document names, status, decision, stopped_at, and next_safe_action.
34
+
35
+ Do not log raw prompts, source code, private paths, transcripts, secrets, or customer data.
36
+ """
@@ -0,0 +1,13 @@
1
+ # Current state
2
+
3
+ ## checkout-flow
4
+
5
+ - status: current
6
+ - as_of: 2026-05-28
7
+ - current authority: this section
8
+ - scope: checkout-flow
9
+ - related historical specs:
10
+ - `specs/2025-checkout-rewrite.md` — superseded; rationale only
11
+ - `specs/2026-checkout-risk-notes.md` — current supporting context
12
+
13
+ Agents may cite superseded specs for rationale, but must not implement from them unless this file explicitly reactivates that behavior.
@@ -0,0 +1,10 @@
1
+ ---
2
+ status: superseded
3
+ scope: checkout-flow
4
+ date: 2025-11-10
5
+ superseded_by: ../CURRENT_STATE.md#checkout-flow
6
+ ---
7
+
8
+ # 2025 checkout rewrite
9
+
10
+ Historical note. This file is kept for rationale only and is not implementation authority.
@@ -0,0 +1,10 @@
1
+ ---
2
+ status: current
3
+ scope: checkout-flow
4
+ date: 2026-05-20
5
+ superseded_by: null
6
+ ---
7
+
8
+ # 2026 checkout risk notes
9
+
10
+ Current supporting context for known risk areas. Use together with `CURRENT_STATE.md`.
@@ -0,0 +1,27 @@
1
+ {
2
+ "receipt_type": "context.temporal_authority.v1",
3
+ "request_id": "local-run-2026-05-28T16:00Z",
4
+ "current_authority": {
5
+ "file": "CURRENT_STATE.md",
6
+ "status": "current",
7
+ "as_of": "2026-05-28",
8
+ "scope": "checkout-flow"
9
+ },
10
+ "sources_considered": [
11
+ {
12
+ "file": "specs/2025-checkout-rewrite.md",
13
+ "status": "superseded",
14
+ "superseded_by": "CURRENT_STATE.md#checkout-flow",
15
+ "decision": "historical_citation_only"
16
+ },
17
+ {
18
+ "file": "specs/2026-checkout-risk-notes.md",
19
+ "status": "current",
20
+ "scope": "checkout-flow",
21
+ "decision": "allowed_as_supporting_context"
22
+ }
23
+ ],
24
+ "ambiguous_sources": [],
25
+ "write_started": true,
26
+ "stopped_at": "temporal_authority_resolved"
27
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pluribus-context",
3
- "version": "0.3.33",
3
+ "version": "0.3.35",
4
4
  "description": "AI context and rules sync CLI for Claude.md, Claude Code, Cursor, and Copilot instructions, with privacy-safe context receipts that prove what memory, tools, skills, compactions, and security findings crossed agent boundaries without logging raw content.",
5
5
  "type": "module",
6
6
  "homepage": "https://github.com/caioribeiroclw-pixel/pluribus#readme",
@@ -1 +1 @@
1
- export const VERSION = '0.3.33'
1
+ export const VERSION = '0.3.35'