@guyghost/swarm-dao-core 0.3.0 → 0.5.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/dist/adapters/attention/fs-attention.store.d.ts +17 -0
- package/dist/adapters/attention/fs-attention.store.d.ts.map +1 -0
- package/dist/adapters/attention/fs-attention.store.js +59 -0
- package/dist/adapters/attention/fs-attention.store.js.map +1 -0
- package/dist/adapters/git-workspace.d.ts +26 -0
- package/dist/adapters/git-workspace.d.ts.map +1 -0
- package/dist/adapters/git-workspace.js +84 -0
- package/dist/adapters/git-workspace.js.map +1 -0
- package/dist/adapters/index.d.ts +6 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +6 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/persistence/file-dao-state.repository.d.ts +15 -0
- package/dist/adapters/persistence/file-dao-state.repository.d.ts.map +1 -0
- package/dist/adapters/persistence/file-dao-state.repository.js +85 -0
- package/dist/adapters/persistence/file-dao-state.repository.js.map +1 -0
- package/dist/adapters/persistence/in-memory-dao-state.repository.d.ts +10 -0
- package/dist/adapters/persistence/in-memory-dao-state.repository.d.ts.map +1 -0
- package/dist/adapters/persistence/in-memory-dao-state.repository.js +14 -0
- package/dist/adapters/persistence/in-memory-dao-state.repository.js.map +1 -0
- package/dist/adapters/persistence/legacy-dao-state.repository.d.ts +11 -0
- package/dist/adapters/persistence/legacy-dao-state.repository.d.ts.map +1 -0
- package/dist/adapters/persistence/legacy-dao-state.repository.js +14 -0
- package/dist/adapters/persistence/legacy-dao-state.repository.js.map +1 -0
- package/dist/application/index.d.ts +16 -0
- package/dist/application/index.d.ts.map +1 -0
- package/dist/application/index.js +16 -0
- package/dist/application/index.js.map +1 -0
- package/dist/application/initialize-dao.use-case.d.ts +20 -0
- package/dist/application/initialize-dao.use-case.d.ts.map +1 -0
- package/dist/application/initialize-dao.use-case.js +17 -0
- package/dist/application/initialize-dao.use-case.js.map +1 -0
- package/dist/application/proposals/control-proposal.use-case.d.ts +23 -0
- package/dist/application/proposals/control-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/control-proposal.use-case.js +53 -0
- package/dist/application/proposals/control-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/create-amendment-proposal.use-case.d.ts +25 -0
- package/dist/application/proposals/create-amendment-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/create-amendment-proposal.use-case.js +39 -0
- package/dist/application/proposals/create-amendment-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/create-proposal.use-case.d.ts +34 -0
- package/dist/application/proposals/create-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/create-proposal.use-case.js +49 -0
- package/dist/application/proposals/create-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/deliberate-proposal.use-case.d.ts +35 -0
- package/dist/application/proposals/deliberate-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/deliberate-proposal.use-case.js +67 -0
- package/dist/application/proposals/deliberate-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/dry-run-proposal.use-case.d.ts +21 -0
- package/dist/application/proposals/dry-run-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/dry-run-proposal.use-case.js +20 -0
- package/dist/application/proposals/dry-run-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/execute-proposal.use-case.d.ts +29 -0
- package/dist/application/proposals/execute-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/execute-proposal.use-case.js +66 -0
- package/dist/application/proposals/execute-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/rate-proposal.use-case.d.ts +24 -0
- package/dist/application/proposals/rate-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/rate-proposal.use-case.js +33 -0
- package/dist/application/proposals/rate-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/record-deliberation-outputs.use-case.d.ts +21 -0
- package/dist/application/proposals/record-deliberation-outputs.use-case.d.ts.map +1 -0
- package/dist/application/proposals/record-deliberation-outputs.use-case.js +65 -0
- package/dist/application/proposals/record-deliberation-outputs.use-case.js.map +1 -0
- package/dist/application/proposals/rollback-proposal.use-case.d.ts +20 -0
- package/dist/application/proposals/rollback-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/rollback-proposal.use-case.js +17 -0
- package/dist/application/proposals/rollback-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/round-table.use-case.d.ts +27 -0
- package/dist/application/proposals/round-table.use-case.d.ts.map +1 -0
- package/dist/application/proposals/round-table.use-case.js +55 -0
- package/dist/application/proposals/round-table.use-case.js.map +1 -0
- package/dist/application/proposals/ship-proposal.use-case.d.ts +26 -0
- package/dist/application/proposals/ship-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/ship-proposal.use-case.js +60 -0
- package/dist/application/proposals/ship-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/start-deliberation.use-case.d.ts +21 -0
- package/dist/application/proposals/start-deliberation.use-case.d.ts.map +1 -0
- package/dist/application/proposals/start-deliberation.use-case.js +30 -0
- package/dist/application/proposals/start-deliberation.use-case.js.map +1 -0
- package/dist/application/proposals/transition-proposal.use-case.d.ts +20 -0
- package/dist/application/proposals/transition-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/transition-proposal.use-case.js +19 -0
- package/dist/application/proposals/transition-proposal.use-case.js.map +1 -0
- package/dist/application/proposals/update-proposal.use-case.d.ts +26 -0
- package/dist/application/proposals/update-proposal.use-case.d.ts.map +1 -0
- package/dist/application/proposals/update-proposal.use-case.js +19 -0
- package/dist/application/proposals/update-proposal.use-case.js.map +1 -0
- package/dist/commands/index.d.ts +2 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +2 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/registry.d.ts +46 -0
- package/dist/commands/registry.d.ts.map +1 -0
- package/dist/commands/registry.js +367 -0
- package/dist/commands/registry.js.map +1 -0
- package/dist/config.d.ts +17 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +9 -1
- package/dist/config.js.map +1 -1
- package/dist/control/gates.d.ts +4 -1
- package/dist/control/gates.d.ts.map +1 -1
- package/dist/control/gates.js +22 -10
- package/dist/control/gates.js.map +1 -1
- package/dist/delivery/dependencies.d.ts.map +1 -1
- package/dist/delivery/dependencies.js +15 -7
- package/dist/delivery/dependencies.js.map +1 -1
- package/dist/delivery/dry-run.d.ts.map +1 -1
- package/dist/delivery/dry-run.js +3 -44
- package/dist/delivery/dry-run.js.map +1 -1
- package/dist/delivery/execution-isolation.d.ts +34 -0
- package/dist/delivery/execution-isolation.d.ts.map +1 -0
- package/dist/delivery/execution-isolation.js +97 -0
- package/dist/delivery/execution-isolation.js.map +1 -0
- package/dist/delivery/execution.d.ts.map +1 -1
- package/dist/delivery/execution.js +7 -5
- package/dist/delivery/execution.js.map +1 -1
- package/dist/delivery/index.d.ts +1 -0
- package/dist/delivery/index.d.ts.map +1 -1
- package/dist/delivery/index.js +1 -0
- package/dist/delivery/index.js.map +1 -1
- package/dist/delivery/plans.d.ts +3 -1
- package/dist/delivery/plans.d.ts.map +1 -1
- package/dist/delivery/plans.js +2 -2
- package/dist/delivery/plans.js.map +1 -1
- package/dist/domain/dry-run.d.ts +3 -0
- package/dist/domain/dry-run.d.ts.map +1 -0
- package/dist/domain/dry-run.js +28 -0
- package/dist/domain/dry-run.js.map +1 -0
- package/dist/domain/index.d.ts +6 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +7 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/governance/agents.d.ts +2 -0
- package/dist/governance/agents.d.ts.map +1 -1
- package/dist/governance/agents.js +148 -173
- package/dist/governance/agents.js.map +1 -1
- package/dist/governance/charter.d.ts +14 -0
- package/dist/governance/charter.d.ts.map +1 -0
- package/dist/governance/charter.js +65 -0
- package/dist/governance/charter.js.map +1 -0
- package/dist/governance/delegation.machine.d.ts +316 -0
- package/dist/governance/delegation.machine.d.ts.map +1 -0
- package/dist/governance/delegation.machine.js +387 -0
- package/dist/governance/delegation.machine.js.map +1 -0
- package/dist/governance/delegation.utils.d.ts +55 -0
- package/dist/governance/delegation.utils.d.ts.map +1 -0
- package/dist/governance/delegation.utils.js +157 -0
- package/dist/governance/delegation.utils.js.map +1 -0
- package/dist/governance/edit-gate.d.ts +47 -0
- package/dist/governance/edit-gate.d.ts.map +1 -0
- package/dist/governance/edit-gate.js +156 -0
- package/dist/governance/edit-gate.js.map +1 -0
- package/dist/governance/index.d.ts +3 -0
- package/dist/governance/index.d.ts.map +1 -1
- package/dist/governance/index.js +3 -0
- package/dist/governance/index.js.map +1 -1
- package/dist/governance/lifecycle.d.ts +0 -6
- package/dist/governance/lifecycle.d.ts.map +1 -1
- package/dist/governance/lifecycle.js +7 -31
- package/dist/governance/lifecycle.js.map +1 -1
- package/dist/governance/proposal.machine.d.ts +2 -130
- package/dist/governance/proposal.machine.d.ts.map +1 -1
- package/dist/governance/proposal.machine.js +2 -377
- package/dist/governance/proposal.machine.js.map +1 -1
- package/dist/governance/proposal.utils.d.ts +22 -165
- package/dist/governance/proposal.utils.d.ts.map +1 -1
- package/dist/governance/proposal.utils.js +52 -119
- package/dist/governance/proposal.utils.js.map +1 -1
- package/dist/governance/scoring.d.ts.map +1 -1
- package/dist/governance/scoring.js +36 -16
- package/dist/governance/scoring.js.map +1 -1
- package/dist/governance/voting.d.ts.map +1 -1
- package/dist/governance/voting.js +24 -14
- package/dist/governance/voting.js.map +1 -1
- package/dist/host-tools/github-config.d.ts.map +1 -1
- package/dist/host-tools/github-config.js +17 -5
- package/dist/host-tools/github-config.js.map +1 -1
- package/dist/host-tools/handlers.d.ts +14 -11
- package/dist/host-tools/handlers.d.ts.map +1 -1
- package/dist/host-tools/handlers.js +204 -335
- package/dist/host-tools/handlers.js.map +1 -1
- package/dist/host-tools/messages.d.ts +10 -4
- package/dist/host-tools/messages.d.ts.map +1 -1
- package/dist/host-tools/messages.js +14 -17
- package/dist/host-tools/messages.js.map +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/integrations/github.d.ts.map +1 -1
- package/dist/integrations/github.js +5 -2
- package/dist/integrations/github.js.map +1 -1
- package/dist/integrations/http.d.ts +12 -1
- package/dist/integrations/http.d.ts.map +1 -1
- package/dist/integrations/http.js +114 -17
- package/dist/integrations/http.js.map +1 -1
- package/dist/intelligence/delegation.d.ts +41 -0
- package/dist/intelligence/delegation.d.ts.map +1 -0
- package/dist/intelligence/delegation.js +162 -0
- package/dist/intelligence/delegation.js.map +1 -0
- package/dist/intelligence/index.d.ts +2 -0
- package/dist/intelligence/index.d.ts.map +1 -1
- package/dist/intelligence/index.js +2 -0
- package/dist/intelligence/index.js.map +1 -1
- package/dist/intelligence/model.d.ts +28 -2
- package/dist/intelligence/model.d.ts.map +1 -1
- package/dist/intelligence/model.js +36 -3
- package/dist/intelligence/model.js.map +1 -1
- package/dist/intelligence/roundtable.d.ts +4 -2
- package/dist/intelligence/roundtable.d.ts.map +1 -1
- package/dist/intelligence/roundtable.js +2 -2
- package/dist/intelligence/roundtable.js.map +1 -1
- package/dist/intelligence/sequential.d.ts +36 -0
- package/dist/intelligence/sequential.d.ts.map +1 -0
- package/dist/intelligence/sequential.js +91 -0
- package/dist/intelligence/sequential.js.map +1 -0
- package/dist/intelligence/swarm.d.ts +19 -4
- package/dist/intelligence/swarm.d.ts.map +1 -1
- package/dist/intelligence/swarm.js +107 -53
- package/dist/intelligence/swarm.js.map +1 -1
- package/dist/intelligence/synthesis.d.ts.map +1 -1
- package/dist/intelligence/synthesis.js +16 -4
- package/dist/intelligence/synthesis.js.map +1 -1
- package/dist/models/graph-engineering.machine.d.ts +219 -0
- package/dist/models/graph-engineering.machine.d.ts.map +1 -0
- package/dist/models/graph-engineering.machine.js +214 -0
- package/dist/models/graph-engineering.machine.js.map +1 -0
- package/dist/models/improvement-loop.machine.d.ts +239 -0
- package/dist/models/improvement-loop.machine.d.ts.map +1 -0
- package/dist/models/improvement-loop.machine.js +254 -0
- package/dist/models/improvement-loop.machine.js.map +1 -0
- package/dist/models/index.d.ts +5 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +5 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/product-loop.machine.d.ts +531 -0
- package/dist/models/product-loop.machine.d.ts.map +1 -0
- package/dist/models/product-loop.machine.js +699 -0
- package/dist/models/product-loop.machine.js.map +1 -0
- package/dist/models/proposal.machine.d.ts +82 -0
- package/dist/models/proposal.machine.d.ts.map +1 -0
- package/dist/models/proposal.machine.js +68 -0
- package/dist/models/proposal.machine.js.map +1 -0
- package/dist/observability/attention.d.ts +40 -0
- package/dist/observability/attention.d.ts.map +1 -0
- package/dist/observability/attention.js +119 -0
- package/dist/observability/attention.js.map +1 -0
- package/dist/observability/index.d.ts +1 -0
- package/dist/observability/index.d.ts.map +1 -1
- package/dist/observability/index.js +1 -0
- package/dist/observability/index.js.map +1 -1
- package/dist/observability/logging.d.ts +6 -0
- package/dist/observability/logging.d.ts.map +1 -1
- package/dist/observability/logging.js +36 -6
- package/dist/observability/logging.js.map +1 -1
- package/dist/observability/metrics.d.ts +7 -0
- package/dist/observability/metrics.d.ts.map +1 -1
- package/dist/observability/metrics.js +179 -43
- package/dist/observability/metrics.js.map +1 -1
- package/dist/persistence.d.ts +5 -6
- package/dist/persistence.d.ts.map +1 -1
- package/dist/persistence.js +197 -140
- package/dist/persistence.js.map +1 -1
- package/dist/ports/clock.d.ts +7 -0
- package/dist/ports/clock.d.ts.map +1 -0
- package/dist/ports/clock.js +5 -0
- package/dist/ports/clock.js.map +1 -0
- package/dist/ports/host.d.ts +8 -0
- package/dist/ports/host.d.ts.map +1 -0
- package/dist/ports/host.js +2 -0
- package/dist/ports/host.js.map +1 -0
- package/dist/ports/index.d.ts +5 -0
- package/dist/ports/index.d.ts.map +1 -0
- package/dist/ports/index.js +5 -0
- package/dist/ports/index.js.map +1 -0
- package/dist/ports/repository.d.ts +7 -0
- package/dist/ports/repository.d.ts.map +1 -0
- package/dist/ports/repository.js +2 -0
- package/dist/ports/repository.js.map +1 -0
- package/dist/ports/workspace.d.ts +14 -0
- package/dist/ports/workspace.d.ts.map +1 -0
- package/dist/ports/workspace.js +14 -0
- package/dist/ports/workspace.js.map +1 -0
- package/dist/presenters/index.d.ts +2 -0
- package/dist/presenters/index.d.ts.map +1 -0
- package/dist/presenters/index.js +2 -0
- package/dist/presenters/index.js.map +1 -0
- package/dist/presenters/proposal.presenter.d.ts +30 -0
- package/dist/presenters/proposal.presenter.d.ts.map +1 -0
- package/dist/presenters/proposal.presenter.js +47 -0
- package/dist/presenters/proposal.presenter.js.map +1 -0
- package/dist/types/index.d.ts +70 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +12 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/host.d.ts.map +1 -1
- package/dist/utils/host.js +77 -6
- package/dist/utils/host.js.map +1 -1
- package/dist/utils/security.d.ts +7 -1
- package/dist/utils/security.d.ts.map +1 -1
- package/dist/utils/security.js +18 -2
- package/dist/utils/security.js.map +1 -1
- package/package.json +13 -1
|
@@ -0,0 +1,531 @@
|
|
|
1
|
+
import { type ActorRefFrom } from "xstate";
|
|
2
|
+
export declare const REQUIRED_PRODUCT_ANCHORS: readonly ["qualification-passed", "vote-quorum", "budget-envelope", "controls-passed", "auto-ship-policy", "observation-window", "rollback-path-exists", "frozen-set-intact", "regression"];
|
|
3
|
+
export declare const PRODUCT_TERMINAL_STATES: readonly ["validated", "rejected"];
|
|
4
|
+
export declare const PRODUCT_VOTE_EXPIRY_HOURS: {
|
|
5
|
+
readonly standard: 72;
|
|
6
|
+
readonly criticalSecurity: 12;
|
|
7
|
+
};
|
|
8
|
+
export declare const PRODUCT_OBSERVATION_CONSECUTIVE_MEASUREMENTS = 3;
|
|
9
|
+
export declare const PRODUCT_MEMBER_QUOTA_RENEWAL_MINUTES = 300;
|
|
10
|
+
export declare const PRODUCT_ALLOWED_CATEGORIES: readonly ["performance", "refactor", "tooling", "docs", "security"];
|
|
11
|
+
export declare const PRODUCT_AUTO_SEALED_ANCHORS: readonly ["qualification-passed", "vote-quorum", "budget-envelope", "controls-passed", "auto-ship-policy", "observation-window"];
|
|
12
|
+
export declare const PRODUCT_EXTERNAL_ANCHORS: readonly ["frozen-set-intact", "regression", "rollback-path-exists"];
|
|
13
|
+
/**
|
|
14
|
+
* Subset of required anchors that must ALREADY be passed at the VERIFY_EVALUATE
|
|
15
|
+
* ship gate. It deliberately EXCLUDES `observation-window` (sealed only when the
|
|
16
|
+
* observation window completes) and the anchors `sealVerificationAnchors` itself
|
|
17
|
+
* seals when it transitions to `ship` (`controls-passed`, `auto-ship-policy`) —
|
|
18
|
+
* those decisions are re-derived from draft/controls/budget by `canAutoShip`,
|
|
19
|
+
* never read back as their own gate. `rollback-path-exists` IS included because
|
|
20
|
+
* it is now an external, tool-recorded anchor (not sealed by the ship action),
|
|
21
|
+
* so there is no chicken-and-egg: the verifier must have already recorded it.
|
|
22
|
+
*/
|
|
23
|
+
export declare const PRODUCT_SHIP_GATE_ANCHORS: readonly ["qualification-passed", "vote-quorum", "budget-envelope", "frozen-set-intact", "regression", "rollback-path-exists"];
|
|
24
|
+
export type ProductAnchorName = (typeof REQUIRED_PRODUCT_ANCHORS)[number];
|
|
25
|
+
export type ProductSignalSource = "ai" | "tool" | "human" | "system";
|
|
26
|
+
export type ProductAnchorStatus = "passed" | "failed";
|
|
27
|
+
export type ProductCategory = (typeof PRODUCT_ALLOWED_CATEGORIES)[number];
|
|
28
|
+
export type VoteKind = "standard" | "criticalSecurity";
|
|
29
|
+
export type ObservationMetric = "errors" | "aiCost" | "latency" | "satisfaction";
|
|
30
|
+
export type ReviewResolution = "scope-reduced" | "budget-expanded" | "abandoned" | "deploy-authorized";
|
|
31
|
+
export type ProposalDraft = Readonly<{
|
|
32
|
+
scope: string;
|
|
33
|
+
category: ProductCategory;
|
|
34
|
+
touchesSensitive: boolean;
|
|
35
|
+
dependencies: readonly string[];
|
|
36
|
+
budgetAllocation: number;
|
|
37
|
+
rollbackArtifact: string;
|
|
38
|
+
evidence: string;
|
|
39
|
+
}>;
|
|
40
|
+
export type VoteConfig = Readonly<{
|
|
41
|
+
quorum: number;
|
|
42
|
+
kind: VoteKind;
|
|
43
|
+
expiryHours: number;
|
|
44
|
+
}>;
|
|
45
|
+
export type BudgetEnvelope = Readonly<{
|
|
46
|
+
initial: number;
|
|
47
|
+
consumed: number;
|
|
48
|
+
history: readonly BudgetAction[];
|
|
49
|
+
}>;
|
|
50
|
+
export type BudgetAction = Readonly<{
|
|
51
|
+
amount: number;
|
|
52
|
+
description: string;
|
|
53
|
+
evidence: string;
|
|
54
|
+
}>;
|
|
55
|
+
export type ControlResult = Readonly<{
|
|
56
|
+
name: string;
|
|
57
|
+
status: ProductAnchorStatus;
|
|
58
|
+
evidence: string;
|
|
59
|
+
}>;
|
|
60
|
+
export type ObservationSample = Readonly<{
|
|
61
|
+
metric: ObservationMetric;
|
|
62
|
+
value: number;
|
|
63
|
+
threshold: number;
|
|
64
|
+
exceeded: boolean;
|
|
65
|
+
evidence: string;
|
|
66
|
+
}>;
|
|
67
|
+
export type ProductAnchorResult = Readonly<{
|
|
68
|
+
status: ProductAnchorStatus;
|
|
69
|
+
evidence: string;
|
|
70
|
+
}>;
|
|
71
|
+
export type ProductContext = {
|
|
72
|
+
runId: string;
|
|
73
|
+
proposalId: string | null;
|
|
74
|
+
improvementCycleId: string | null;
|
|
75
|
+
draft: ProposalDraft | null;
|
|
76
|
+
voteConfig: VoteConfig | null;
|
|
77
|
+
favorableVotes: number;
|
|
78
|
+
budget: BudgetEnvelope | null;
|
|
79
|
+
controls: Record<string, ControlResult>;
|
|
80
|
+
observationSamples: ObservationSample[];
|
|
81
|
+
contactVoteOpen: boolean;
|
|
82
|
+
contactVoteQuorumReached: boolean;
|
|
83
|
+
contactRelayAuthorized: boolean;
|
|
84
|
+
reviewReason: string | null;
|
|
85
|
+
permissionsCleared: boolean;
|
|
86
|
+
permissionEvidence: string | null;
|
|
87
|
+
signalLog: readonly string[];
|
|
88
|
+
anchors: Partial<Record<ProductAnchorName, ProductAnchorResult>>;
|
|
89
|
+
terminalReason: string | null;
|
|
90
|
+
};
|
|
91
|
+
export type ProductEvent = {
|
|
92
|
+
type: "AGENT_SIGNAL";
|
|
93
|
+
source: ProductSignalSource;
|
|
94
|
+
note: string;
|
|
95
|
+
} | {
|
|
96
|
+
type: "FEEDBACK_AGGREGATED";
|
|
97
|
+
source: ProductSignalSource;
|
|
98
|
+
summary: string;
|
|
99
|
+
} | {
|
|
100
|
+
type: "PROPOSAL_DRAFTED";
|
|
101
|
+
source: ProductSignalSource;
|
|
102
|
+
draft: ProposalDraft;
|
|
103
|
+
} | {
|
|
104
|
+
type: "OPEN_PROPOSITION";
|
|
105
|
+
source: ProductSignalSource;
|
|
106
|
+
} | {
|
|
107
|
+
type: "QUALIFICATION_RUN";
|
|
108
|
+
source: ProductSignalSource;
|
|
109
|
+
permissionCleared: boolean;
|
|
110
|
+
permissionEvidence: string;
|
|
111
|
+
} | {
|
|
112
|
+
type: "VOTE_OPENED";
|
|
113
|
+
source: ProductSignalSource;
|
|
114
|
+
config: VoteConfig;
|
|
115
|
+
} | {
|
|
116
|
+
type: "VOTE_CAST";
|
|
117
|
+
source: ProductSignalSource;
|
|
118
|
+
favorable: number;
|
|
119
|
+
} | {
|
|
120
|
+
type: "VOTE_EVALUATE";
|
|
121
|
+
source: ProductSignalSource;
|
|
122
|
+
} | {
|
|
123
|
+
type: "VOTE_EXPIRED";
|
|
124
|
+
source: ProductSignalSource;
|
|
125
|
+
} | {
|
|
126
|
+
type: "BUDGET_CHARGE";
|
|
127
|
+
source: ProductSignalSource;
|
|
128
|
+
action: BudgetAction;
|
|
129
|
+
} | {
|
|
130
|
+
type: "EXECUTION_DONE";
|
|
131
|
+
source: ProductSignalSource;
|
|
132
|
+
} | {
|
|
133
|
+
type: "VERIFY_RUN";
|
|
134
|
+
source: ProductSignalSource;
|
|
135
|
+
control: ControlResult;
|
|
136
|
+
} | {
|
|
137
|
+
type: "VERIFY_EVALUATE";
|
|
138
|
+
source: ProductSignalSource;
|
|
139
|
+
} | {
|
|
140
|
+
type: "OBSERVATION_SAMPLE";
|
|
141
|
+
source: ProductSignalSource;
|
|
142
|
+
sample: ObservationSample;
|
|
143
|
+
} | {
|
|
144
|
+
type: "OBSERVATION_EVALUATE";
|
|
145
|
+
source: ProductSignalSource;
|
|
146
|
+
windowElapsed: boolean;
|
|
147
|
+
} | {
|
|
148
|
+
type: "ANCHOR_RECORDED";
|
|
149
|
+
source: ProductSignalSource;
|
|
150
|
+
anchor: ProductAnchorName;
|
|
151
|
+
status: ProductAnchorStatus;
|
|
152
|
+
evidence: string;
|
|
153
|
+
} | {
|
|
154
|
+
type: "CORRECTIVE_PROPOSITION_OPENED";
|
|
155
|
+
source: ProductSignalSource;
|
|
156
|
+
} | {
|
|
157
|
+
type: "REVIEW_RESOLVED";
|
|
158
|
+
source: ProductSignalSource;
|
|
159
|
+
resolution: ReviewResolution;
|
|
160
|
+
expandedBudget?: number;
|
|
161
|
+
} | {
|
|
162
|
+
type: "RETRY_VERIFICATION_AUTHORIZED";
|
|
163
|
+
source: ProductSignalSource;
|
|
164
|
+
} | {
|
|
165
|
+
type: "CONTACT_VOTE_OPENED";
|
|
166
|
+
source: ProductSignalSource;
|
|
167
|
+
} | {
|
|
168
|
+
type: "CONTACT_VOTE_QUORUM";
|
|
169
|
+
source: ProductSignalSource;
|
|
170
|
+
reached: boolean;
|
|
171
|
+
} | {
|
|
172
|
+
type: "CONTACT_RELAY_AUTHORIZED";
|
|
173
|
+
source: ProductSignalSource;
|
|
174
|
+
} | {
|
|
175
|
+
type: "PERMISSION_DENIED";
|
|
176
|
+
source: ProductSignalSource;
|
|
177
|
+
reason: string;
|
|
178
|
+
} | {
|
|
179
|
+
type: "CANCEL";
|
|
180
|
+
source: ProductSignalSource;
|
|
181
|
+
reason: string;
|
|
182
|
+
};
|
|
183
|
+
export declare const isRequiredProductAnchor: (value: unknown) => value is ProductAnchorName;
|
|
184
|
+
/**
|
|
185
|
+
* Qualification: scope, dependencies, allowed category, affirmative permission
|
|
186
|
+
* clearance, budget presence, and rollback artifact. Permission clearance is an
|
|
187
|
+
* explicit, evidence-backed boolean carried by QUALIFICATION_RUN — qualification
|
|
188
|
+
* never passes on the mere absence of a denial. Sensitive security work may pass
|
|
189
|
+
* (it is auto-votable) but is flagged, which later forbids auto-ship.
|
|
190
|
+
*/
|
|
191
|
+
export declare const qualifyProposal: (draft: ProposalDraft | null, permissionsCleared: boolean) => {
|
|
192
|
+
qualified: boolean;
|
|
193
|
+
reason: string;
|
|
194
|
+
};
|
|
195
|
+
/** Vote tally: quorum is a minimum favorable-vote threshold, not participation. */
|
|
196
|
+
export declare const tallyProductVotes: (favorable: number, config: VoteConfig | null) => {
|
|
197
|
+
quorumReached: boolean;
|
|
198
|
+
};
|
|
199
|
+
/** Budget ledger: remaining = initial - consumed; never negative. */
|
|
200
|
+
export declare const applyBudgetCharge: (envelope: BudgetEnvelope | null, action: BudgetAction) => BudgetEnvelope;
|
|
201
|
+
export declare const budgetRemaining: (envelope: BudgetEnvelope | null) => number;
|
|
202
|
+
/**
|
|
203
|
+
* Auto-ship gate. Decides deterministically from the draft + controls + budget.
|
|
204
|
+
* Does NOT depend on an anchor it would itself set (no chicken-and-egg).
|
|
205
|
+
* Sensitive security work is forbidden from auto-ship even if reversible.
|
|
206
|
+
*/
|
|
207
|
+
export declare const canAutoShip: (context: {
|
|
208
|
+
draft: ProposalDraft | null;
|
|
209
|
+
controls: Record<string, ControlResult>;
|
|
210
|
+
budget: BudgetEnvelope | null;
|
|
211
|
+
}) => {
|
|
212
|
+
allowed: boolean;
|
|
213
|
+
reason: string;
|
|
214
|
+
};
|
|
215
|
+
/**
|
|
216
|
+
* Human deploy-authorization gate for SENSITIVE changes only. Auto-ship forbids
|
|
217
|
+
* sensitive work; such a change that otherwise passes verification routes to
|
|
218
|
+
* Review, where the human owner may authorize deployment. This gate requires:
|
|
219
|
+
* the draft is sensitive, every control passed, budget remains, and the
|
|
220
|
+
* ship-gate anchors (including the externally verified rollback path) hold.
|
|
221
|
+
* It can never be exercised by an AI source — REVIEW_RESOLVED is human-only.
|
|
222
|
+
*/
|
|
223
|
+
export declare const canHumanAuthorizeSensitiveDeploy: (context: {
|
|
224
|
+
draft: ProposalDraft | null;
|
|
225
|
+
controls: Record<string, ControlResult>;
|
|
226
|
+
budget: BudgetEnvelope | null;
|
|
227
|
+
anchors: Partial<Record<ProductAnchorName, ProductAnchorResult>>;
|
|
228
|
+
}) => {
|
|
229
|
+
allowed: boolean;
|
|
230
|
+
reason: string;
|
|
231
|
+
};
|
|
232
|
+
/**
|
|
233
|
+
* Observation gate. Priorities: errors > aiCost > latency. Satisfaction is a
|
|
234
|
+
* signal only and can NEVER confirm degradation. A single measurement never
|
|
235
|
+
* confirms; require N consecutive threshold-crossing measurements on the
|
|
236
|
+
* highest-priority breached metric.
|
|
237
|
+
*/
|
|
238
|
+
export declare const evaluateObservation: (samples: ObservationSample[], _windowElapsed: boolean) => {
|
|
239
|
+
confirmed: boolean;
|
|
240
|
+
metric: ObservationMetric | null;
|
|
241
|
+
};
|
|
242
|
+
/** True only when every required anchor is passed. Terminal invariant at `validated`. */
|
|
243
|
+
export declare const allRequiredAnchorsPassed: (anchors: Partial<Record<ProductAnchorName, ProductAnchorResult>>) => boolean;
|
|
244
|
+
/** True only when every ship-gate anchor is passed. Used at the VERIFY_EVALUATE ship gate. */
|
|
245
|
+
export declare const shipGateAnchorsPassed: (anchors: Partial<Record<ProductAnchorName, ProductAnchorResult>>) => boolean;
|
|
246
|
+
export interface ProductMachineInput {
|
|
247
|
+
runId: string;
|
|
248
|
+
proposalId?: string | null;
|
|
249
|
+
improvementCycleId?: string | null;
|
|
250
|
+
}
|
|
251
|
+
export declare const productMachine: import("xstate").StateMachine<ProductContext, {
|
|
252
|
+
type: "AGENT_SIGNAL";
|
|
253
|
+
source: ProductSignalSource;
|
|
254
|
+
note: string;
|
|
255
|
+
} | {
|
|
256
|
+
type: "FEEDBACK_AGGREGATED";
|
|
257
|
+
source: ProductSignalSource;
|
|
258
|
+
summary: string;
|
|
259
|
+
} | {
|
|
260
|
+
type: "PROPOSAL_DRAFTED";
|
|
261
|
+
source: ProductSignalSource;
|
|
262
|
+
draft: ProposalDraft;
|
|
263
|
+
} | {
|
|
264
|
+
type: "OPEN_PROPOSITION";
|
|
265
|
+
source: ProductSignalSource;
|
|
266
|
+
} | {
|
|
267
|
+
type: "QUALIFICATION_RUN";
|
|
268
|
+
source: ProductSignalSource;
|
|
269
|
+
permissionCleared: boolean;
|
|
270
|
+
permissionEvidence: string;
|
|
271
|
+
} | {
|
|
272
|
+
type: "VOTE_OPENED";
|
|
273
|
+
source: ProductSignalSource;
|
|
274
|
+
config: VoteConfig;
|
|
275
|
+
} | {
|
|
276
|
+
type: "VOTE_CAST";
|
|
277
|
+
source: ProductSignalSource;
|
|
278
|
+
favorable: number;
|
|
279
|
+
} | {
|
|
280
|
+
type: "VOTE_EVALUATE";
|
|
281
|
+
source: ProductSignalSource;
|
|
282
|
+
} | {
|
|
283
|
+
type: "VOTE_EXPIRED";
|
|
284
|
+
source: ProductSignalSource;
|
|
285
|
+
} | {
|
|
286
|
+
type: "BUDGET_CHARGE";
|
|
287
|
+
source: ProductSignalSource;
|
|
288
|
+
action: BudgetAction;
|
|
289
|
+
} | {
|
|
290
|
+
type: "EXECUTION_DONE";
|
|
291
|
+
source: ProductSignalSource;
|
|
292
|
+
} | {
|
|
293
|
+
type: "VERIFY_RUN";
|
|
294
|
+
source: ProductSignalSource;
|
|
295
|
+
control: ControlResult;
|
|
296
|
+
} | {
|
|
297
|
+
type: "VERIFY_EVALUATE";
|
|
298
|
+
source: ProductSignalSource;
|
|
299
|
+
} | {
|
|
300
|
+
type: "OBSERVATION_SAMPLE";
|
|
301
|
+
source: ProductSignalSource;
|
|
302
|
+
sample: ObservationSample;
|
|
303
|
+
} | {
|
|
304
|
+
type: "OBSERVATION_EVALUATE";
|
|
305
|
+
source: ProductSignalSource;
|
|
306
|
+
windowElapsed: boolean;
|
|
307
|
+
} | {
|
|
308
|
+
type: "ANCHOR_RECORDED";
|
|
309
|
+
source: ProductSignalSource;
|
|
310
|
+
anchor: ProductAnchorName;
|
|
311
|
+
status: ProductAnchorStatus;
|
|
312
|
+
evidence: string;
|
|
313
|
+
} | {
|
|
314
|
+
type: "CORRECTIVE_PROPOSITION_OPENED";
|
|
315
|
+
source: ProductSignalSource;
|
|
316
|
+
} | {
|
|
317
|
+
type: "REVIEW_RESOLVED";
|
|
318
|
+
source: ProductSignalSource;
|
|
319
|
+
resolution: ReviewResolution;
|
|
320
|
+
expandedBudget?: number;
|
|
321
|
+
} | {
|
|
322
|
+
type: "RETRY_VERIFICATION_AUTHORIZED";
|
|
323
|
+
source: ProductSignalSource;
|
|
324
|
+
} | {
|
|
325
|
+
type: "CONTACT_VOTE_OPENED";
|
|
326
|
+
source: ProductSignalSource;
|
|
327
|
+
} | {
|
|
328
|
+
type: "CONTACT_VOTE_QUORUM";
|
|
329
|
+
source: ProductSignalSource;
|
|
330
|
+
reached: boolean;
|
|
331
|
+
} | {
|
|
332
|
+
type: "CONTACT_RELAY_AUTHORIZED";
|
|
333
|
+
source: ProductSignalSource;
|
|
334
|
+
} | {
|
|
335
|
+
type: "PERMISSION_DENIED";
|
|
336
|
+
source: ProductSignalSource;
|
|
337
|
+
reason: string;
|
|
338
|
+
} | {
|
|
339
|
+
type: "CANCEL";
|
|
340
|
+
source: ProductSignalSource;
|
|
341
|
+
reason: string;
|
|
342
|
+
}, {}, never, {
|
|
343
|
+
type: "recordDraft";
|
|
344
|
+
params: import("xstate").NonReducibleUnknown;
|
|
345
|
+
} | {
|
|
346
|
+
type: "recordSignal";
|
|
347
|
+
params: import("xstate").NonReducibleUnknown;
|
|
348
|
+
} | {
|
|
349
|
+
type: "recordPermission";
|
|
350
|
+
params: import("xstate").NonReducibleUnknown;
|
|
351
|
+
} | {
|
|
352
|
+
type: "sealQualificationPassed";
|
|
353
|
+
params: import("xstate").NonReducibleUnknown;
|
|
354
|
+
} | {
|
|
355
|
+
type: "recordVoteConfig";
|
|
356
|
+
params: import("xstate").NonReducibleUnknown;
|
|
357
|
+
} | {
|
|
358
|
+
type: "recordVote";
|
|
359
|
+
params: import("xstate").NonReducibleUnknown;
|
|
360
|
+
} | {
|
|
361
|
+
type: "sealVoteQuorum";
|
|
362
|
+
params: import("xstate").NonReducibleUnknown;
|
|
363
|
+
} | {
|
|
364
|
+
type: "openBudget";
|
|
365
|
+
params: import("xstate").NonReducibleUnknown;
|
|
366
|
+
} | {
|
|
367
|
+
type: "chargeBudget";
|
|
368
|
+
params: import("xstate").NonReducibleUnknown;
|
|
369
|
+
} | {
|
|
370
|
+
type: "recordControl";
|
|
371
|
+
params: import("xstate").NonReducibleUnknown;
|
|
372
|
+
} | {
|
|
373
|
+
type: "sealVerificationAnchors";
|
|
374
|
+
params: import("xstate").NonReducibleUnknown;
|
|
375
|
+
} | {
|
|
376
|
+
type: "sealHumanAuthorizedDeploy";
|
|
377
|
+
params: import("xstate").NonReducibleUnknown;
|
|
378
|
+
} | {
|
|
379
|
+
type: "recordObservationSample";
|
|
380
|
+
params: import("xstate").NonReducibleUnknown;
|
|
381
|
+
} | {
|
|
382
|
+
type: "sealObservationWindow";
|
|
383
|
+
params: import("xstate").NonReducibleUnknown;
|
|
384
|
+
} | {
|
|
385
|
+
type: "recordExternalAnchorOnce";
|
|
386
|
+
params: import("xstate").NonReducibleUnknown;
|
|
387
|
+
} | {
|
|
388
|
+
type: "prepareCorrectiveProposition";
|
|
389
|
+
params: import("xstate").NonReducibleUnknown;
|
|
390
|
+
} | {
|
|
391
|
+
type: "recordReviewResolution";
|
|
392
|
+
params: import("xstate").NonReducibleUnknown;
|
|
393
|
+
} | {
|
|
394
|
+
type: "recordBudgetBlockedEntry";
|
|
395
|
+
params: import("xstate").NonReducibleUnknown;
|
|
396
|
+
} | {
|
|
397
|
+
type: "expandBudget";
|
|
398
|
+
params: import("xstate").NonReducibleUnknown;
|
|
399
|
+
} | {
|
|
400
|
+
type: "resetControlsForRetry";
|
|
401
|
+
params: import("xstate").NonReducibleUnknown;
|
|
402
|
+
} | {
|
|
403
|
+
type: "recordContactVoteOpened";
|
|
404
|
+
params: import("xstate").NonReducibleUnknown;
|
|
405
|
+
} | {
|
|
406
|
+
type: "recordContactVoteQuorum";
|
|
407
|
+
params: import("xstate").NonReducibleUnknown;
|
|
408
|
+
} | {
|
|
409
|
+
type: "recordContactRelay";
|
|
410
|
+
params: import("xstate").NonReducibleUnknown;
|
|
411
|
+
} | {
|
|
412
|
+
type: "recordTerminalRejected";
|
|
413
|
+
params: import("xstate").NonReducibleUnknown;
|
|
414
|
+
} | {
|
|
415
|
+
type: "recordTerminalCancelled";
|
|
416
|
+
params: import("xstate").NonReducibleUnknown;
|
|
417
|
+
} | {
|
|
418
|
+
type: "recordTerminalValidated";
|
|
419
|
+
params: import("xstate").NonReducibleUnknown;
|
|
420
|
+
}, {
|
|
421
|
+
type: "isToolPermissionDenial";
|
|
422
|
+
params: unknown;
|
|
423
|
+
} | {
|
|
424
|
+
type: "isHumanCancellation";
|
|
425
|
+
params: unknown;
|
|
426
|
+
} | {
|
|
427
|
+
type: "isAiAgentSignal";
|
|
428
|
+
params: unknown;
|
|
429
|
+
} | {
|
|
430
|
+
type: "isAiFeedbackAggregated";
|
|
431
|
+
params: unknown;
|
|
432
|
+
} | {
|
|
433
|
+
type: "isAiProposalDrafted";
|
|
434
|
+
params: unknown;
|
|
435
|
+
} | {
|
|
436
|
+
type: "isToolOpenProposition";
|
|
437
|
+
params: unknown;
|
|
438
|
+
} | {
|
|
439
|
+
type: "isToolQualificationRun";
|
|
440
|
+
params: unknown;
|
|
441
|
+
} | {
|
|
442
|
+
type: "isToolVoteOpenedFirstTime";
|
|
443
|
+
params: unknown;
|
|
444
|
+
} | {
|
|
445
|
+
type: "isToolVoteOpened";
|
|
446
|
+
params: unknown;
|
|
447
|
+
} | {
|
|
448
|
+
type: "isToolVoteCast";
|
|
449
|
+
params: unknown;
|
|
450
|
+
} | {
|
|
451
|
+
type: "isSystemVoteEvaluateWithQuorum";
|
|
452
|
+
params: unknown;
|
|
453
|
+
} | {
|
|
454
|
+
type: "isToolVoteExpiredWithQuorum";
|
|
455
|
+
params: unknown;
|
|
456
|
+
} | {
|
|
457
|
+
type: "isToolVoteExpiredWithoutQuorum";
|
|
458
|
+
params: unknown;
|
|
459
|
+
} | {
|
|
460
|
+
type: "isToolBudgetCharge";
|
|
461
|
+
params: unknown;
|
|
462
|
+
} | {
|
|
463
|
+
type: "chargeExhaustsBudget";
|
|
464
|
+
params: unknown;
|
|
465
|
+
} | {
|
|
466
|
+
type: "isToolExecutionDone";
|
|
467
|
+
params: unknown;
|
|
468
|
+
} | {
|
|
469
|
+
type: "isToolVerifyRun";
|
|
470
|
+
params: unknown;
|
|
471
|
+
} | {
|
|
472
|
+
type: "canShip";
|
|
473
|
+
params: unknown;
|
|
474
|
+
} | {
|
|
475
|
+
type: "isSystemVerifyEvaluate";
|
|
476
|
+
params: unknown;
|
|
477
|
+
} | {
|
|
478
|
+
type: "isToolObservationSample";
|
|
479
|
+
params: unknown;
|
|
480
|
+
} | {
|
|
481
|
+
type: "observationDegraded";
|
|
482
|
+
params: unknown;
|
|
483
|
+
} | {
|
|
484
|
+
type: "observationClean";
|
|
485
|
+
params: unknown;
|
|
486
|
+
} | {
|
|
487
|
+
type: "isValidExternalAnchor";
|
|
488
|
+
params: unknown;
|
|
489
|
+
} | {
|
|
490
|
+
type: "isToolCorrectivePropositionOpened";
|
|
491
|
+
params: unknown;
|
|
492
|
+
} | {
|
|
493
|
+
type: "isHumanReviewResolved";
|
|
494
|
+
params: unknown;
|
|
495
|
+
} | {
|
|
496
|
+
type: "isHumanDeployAuthorized";
|
|
497
|
+
params: unknown;
|
|
498
|
+
} | {
|
|
499
|
+
type: "isHumanRetryVerification";
|
|
500
|
+
params: unknown;
|
|
501
|
+
} | {
|
|
502
|
+
type: "isToolContactVoteOpened";
|
|
503
|
+
params: unknown;
|
|
504
|
+
} | {
|
|
505
|
+
type: "isToolContactVoteQuorum";
|
|
506
|
+
params: unknown;
|
|
507
|
+
} | {
|
|
508
|
+
type: "isHumanContactRelayAuthorized";
|
|
509
|
+
params: unknown;
|
|
510
|
+
}, never, "qualification" | "vote" | "rejected" | "execution" | "ship" | "review" | "rollback" | "validated" | "exploration" | "proposition" | "adopted" | "budgetBlocked" | "verification" | "observation", string, ProductMachineInput, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, {
|
|
511
|
+
id: "swarm-dao-product-loop";
|
|
512
|
+
states: {
|
|
513
|
+
readonly exploration: {};
|
|
514
|
+
readonly proposition: {};
|
|
515
|
+
readonly qualification: {};
|
|
516
|
+
readonly vote: {};
|
|
517
|
+
readonly adopted: {};
|
|
518
|
+
readonly execution: {};
|
|
519
|
+
readonly budgetBlocked: {};
|
|
520
|
+
readonly verification: {};
|
|
521
|
+
readonly ship: {};
|
|
522
|
+
readonly observation: {};
|
|
523
|
+
readonly rollback: {};
|
|
524
|
+
readonly review: {};
|
|
525
|
+
readonly validated: {};
|
|
526
|
+
readonly rejected: {};
|
|
527
|
+
};
|
|
528
|
+
}>;
|
|
529
|
+
export type ProductActor = ActorRefFrom<typeof productMachine>;
|
|
530
|
+
export declare const createProductActor: (input: ProductMachineInput) => ProductActor;
|
|
531
|
+
//# sourceMappingURL=product-loop.machine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-loop.machine.d.ts","sourceRoot":"","sources":["../../src/models/product-loop.machine.ts"],"names":[],"mappings":"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"}
|