@attested-intelligence/aga-mcp-server 0.1.0 → 2.0.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/PATENTS.md +28 -0
- package/README.md +84 -23
- package/dist/context.d.ts +39 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +113 -0
- package/dist/context.js.map +1 -0
- package/dist/core/identity.d.ts +14 -0
- package/dist/core/identity.d.ts.map +1 -0
- package/dist/core/identity.js +16 -0
- package/dist/core/identity.js.map +1 -0
- package/dist/core/index.d.ts +3 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +3 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/measurement.d.ts +16 -0
- package/dist/core/measurement.d.ts.map +1 -0
- package/dist/core/measurement.js +18 -0
- package/dist/core/measurement.js.map +1 -0
- package/dist/core/portal.d.ts +1 -1
- package/dist/core/portal.d.ts.map +1 -1
- package/dist/core/portal.js +10 -5
- package/dist/core/portal.js.map +1 -1
- package/dist/core/types.d.ts +2 -2
- package/dist/core/types.d.ts.map +1 -1
- package/dist/crypto/canonicalize.d.ts +7 -0
- package/dist/crypto/canonicalize.d.ts.map +1 -0
- package/dist/crypto/canonicalize.js +21 -0
- package/dist/crypto/canonicalize.js.map +1 -0
- package/dist/crypto/index.d.ts +6 -5
- package/dist/crypto/index.d.ts.map +1 -1
- package/dist/crypto/index.js +6 -5
- package/dist/crypto/index.js.map +1 -1
- package/dist/crypto/keys.d.ts +10 -0
- package/dist/crypto/keys.d.ts.map +1 -0
- package/dist/crypto/keys.js +19 -0
- package/dist/crypto/keys.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/middleware/governance.d.ts +1 -7
- package/dist/middleware/governance.d.ts.map +1 -1
- package/dist/middleware/governance.js +11 -18
- package/dist/middleware/governance.js.map +1 -1
- package/dist/prompts/drift-analysis.d.ts +13 -0
- package/dist/prompts/drift-analysis.d.ts.map +1 -0
- package/dist/prompts/drift-analysis.js +43 -0
- package/dist/prompts/drift-analysis.js.map +1 -0
- package/dist/prompts/governance-report.d.ts +7 -0
- package/dist/prompts/governance-report.d.ts.map +1 -0
- package/dist/prompts/governance-report.js +26 -0
- package/dist/prompts/governance-report.js.map +1 -0
- package/dist/prompts/nccoe-demo.d.ts +14 -0
- package/dist/prompts/nccoe-demo.d.ts.map +1 -0
- package/dist/prompts/nccoe-demo.js +48 -0
- package/dist/prompts/nccoe-demo.js.map +1 -0
- package/dist/resources/crypto-primitives.d.ts +3 -0
- package/dist/resources/crypto-primitives.d.ts.map +1 -0
- package/dist/resources/crypto-primitives.js +52 -0
- package/dist/resources/crypto-primitives.js.map +1 -0
- package/dist/resources/patent-claims.d.ts +3 -0
- package/dist/resources/patent-claims.d.ts.map +1 -0
- package/dist/resources/patent-claims.js +67 -0
- package/dist/resources/patent-claims.js.map +1 -0
- package/dist/resources/sample-bundle.d.ts +6 -0
- package/dist/resources/sample-bundle.d.ts.map +1 -0
- package/dist/resources/sample-bundle.js +58 -0
- package/dist/resources/sample-bundle.js.map +1 -0
- package/dist/resources/specification.d.ts +3 -0
- package/dist/resources/specification.d.ts.map +1 -0
- package/dist/resources/specification.js +107 -0
- package/dist/resources/specification.js.map +1 -0
- package/dist/server.d.ts +4 -7
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +217 -343
- package/dist/server.js.map +1 -1
- package/dist/storage/sqlite.js +1 -1
- package/dist/tools/create-artifact.d.ts +25 -0
- package/dist/tools/create-artifact.d.ts.map +1 -0
- package/dist/tools/create-artifact.js +85 -0
- package/dist/tools/create-artifact.js.map +1 -0
- package/dist/tools/delegate-subagent.d.ts +18 -0
- package/dist/tools/delegate-subagent.d.ts.map +1 -0
- package/dist/tools/delegate-subagent.js +50 -0
- package/dist/tools/delegate-subagent.js.map +1 -0
- package/dist/tools/disclose-claim.d.ts +14 -0
- package/dist/tools/disclose-claim.d.ts.map +1 -0
- package/dist/tools/disclose-claim.js +23 -0
- package/dist/tools/disclose-claim.js.map +1 -0
- package/dist/tools/export-bundle.d.ts +8 -0
- package/dist/tools/export-bundle.d.ts.map +1 -0
- package/dist/tools/export-bundle.js +25 -0
- package/dist/tools/export-bundle.js.map +1 -0
- package/dist/tools/full-lifecycle.d.ts +16 -0
- package/dist/tools/full-lifecycle.d.ts.map +1 -0
- package/dist/tools/full-lifecycle.js +121 -0
- package/dist/tools/full-lifecycle.js.map +1 -0
- package/dist/tools/generate-receipt.d.ts +16 -0
- package/dist/tools/generate-receipt.d.ts.map +1 -0
- package/dist/tools/generate-receipt.js +31 -0
- package/dist/tools/generate-receipt.js.map +1 -0
- package/dist/tools/get-chain.d.ts +14 -0
- package/dist/tools/get-chain.d.ts.map +1 -0
- package/dist/tools/get-chain.js +45 -0
- package/dist/tools/get-chain.js.map +1 -0
- package/dist/tools/get-portal-state.d.ts +8 -0
- package/dist/tools/get-portal-state.d.ts.map +1 -0
- package/dist/tools/get-portal-state.js +15 -0
- package/dist/tools/get-portal-state.js.map +1 -0
- package/dist/tools/init-chain.d.ts +10 -0
- package/dist/tools/init-chain.d.ts.map +1 -0
- package/dist/tools/init-chain.js +13 -0
- package/dist/tools/init-chain.js.map +1 -0
- package/dist/tools/measure-behavior.d.ts +12 -0
- package/dist/tools/measure-behavior.d.ts.map +1 -0
- package/dist/tools/measure-behavior.js +29 -0
- package/dist/tools/measure-behavior.js.map +1 -0
- package/dist/tools/measure-subject.d.ts +15 -0
- package/dist/tools/measure-subject.d.ts.map +1 -0
- package/dist/tools/measure-subject.js +106 -0
- package/dist/tools/measure-subject.js.map +1 -0
- package/dist/tools/quarantine-status.d.ts +8 -0
- package/dist/tools/quarantine-status.d.ts.map +1 -0
- package/dist/tools/quarantine-status.js +16 -0
- package/dist/tools/quarantine-status.js.map +1 -0
- package/dist/tools/revoke-artifact.d.ts +13 -0
- package/dist/tools/revoke-artifact.d.ts.map +1 -0
- package/dist/tools/revoke-artifact.js +24 -0
- package/dist/tools/revoke-artifact.js.map +1 -0
- package/dist/tools/rotate-keys.d.ts +13 -0
- package/dist/tools/rotate-keys.d.ts.map +1 -0
- package/dist/tools/rotate-keys.js +39 -0
- package/dist/tools/rotate-keys.js.map +1 -0
- package/dist/tools/server-info.d.ts +8 -0
- package/dist/tools/server-info.d.ts.map +1 -0
- package/dist/tools/server-info.js +24 -0
- package/dist/tools/server-info.js.map +1 -0
- package/dist/tools/set-verification-tier.d.ts +11 -0
- package/dist/tools/set-verification-tier.d.ts.map +1 -0
- package/dist/tools/set-verification-tier.js +31 -0
- package/dist/tools/set-verification-tier.js.map +1 -0
- package/dist/tools/start-monitoring.d.ts +12 -0
- package/dist/tools/start-monitoring.d.ts.map +1 -0
- package/dist/tools/start-monitoring.js +17 -0
- package/dist/tools/start-monitoring.js.map +1 -0
- package/dist/tools/trigger-measurement.d.ts +15 -0
- package/dist/tools/trigger-measurement.d.ts.map +1 -0
- package/dist/tools/trigger-measurement.js +86 -0
- package/dist/tools/trigger-measurement.js.map +1 -0
- package/dist/tools/verify-artifact.d.ts +13 -0
- package/dist/tools/verify-artifact.d.ts.map +1 -0
- package/dist/tools/verify-artifact.js +6 -0
- package/dist/tools/verify-artifact.js.map +1 -0
- package/dist/tools/verify-bundle.d.ts +13 -0
- package/dist/tools/verify-bundle.d.ts.map +1 -0
- package/dist/tools/verify-bundle.js +6 -0
- package/dist/tools/verify-bundle.js.map +1 -0
- package/dist/types.d.ts +262 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +9 -0
- package/dist/types.js.map +1 -0
- package/package.json +33 -6
- package/AGA_MCP_SERVER_SPEC.md +0 -632
- package/src/core/artifact.ts +0 -45
- package/src/core/attestation.ts +0 -33
- package/src/core/behavioral.ts +0 -132
- package/src/core/bundle.ts +0 -31
- package/src/core/chain.ts +0 -72
- package/src/core/checkpoint.ts +0 -22
- package/src/core/delegation.ts +0 -146
- package/src/core/disclosure.ts +0 -32
- package/src/core/index.ts +0 -11
- package/src/core/portal.ts +0 -96
- package/src/core/quarantine.ts +0 -16
- package/src/core/receipt.ts +0 -33
- package/src/core/subject.ts +0 -11
- package/src/core/types.ts +0 -244
- package/src/crypto/hash.ts +0 -33
- package/src/crypto/index.ts +0 -5
- package/src/crypto/merkle.ts +0 -43
- package/src/crypto/salt.ts +0 -18
- package/src/crypto/sign.ts +0 -35
- package/src/crypto/types.ts +0 -19
- package/src/index.ts +0 -12
- package/src/middleware/governance.ts +0 -95
- package/src/middleware/index.ts +0 -1
- package/src/server.ts +0 -436
- package/src/storage/index.ts +0 -3
- package/src/storage/interface.ts +0 -21
- package/src/storage/memory.ts +0 -27
- package/src/storage/sqlite.ts +0 -45
- package/src/tools/README.md +0 -13
- package/src/utils/canonical.ts +0 -14
- package/src/utils/constants.ts +0 -3
- package/src/utils/timestamp.ts +0 -12
- package/src/utils/uuid.ts +0 -2
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/sqlite.js
CHANGED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
import type { SubjectMetadata } from '../core/types.js';
|
|
3
|
+
import type { BehavioralBaseline } from '../types.js';
|
|
4
|
+
export interface CreateArtifactArgs {
|
|
5
|
+
subject_content?: string;
|
|
6
|
+
subject_metadata?: SubjectMetadata;
|
|
7
|
+
subject_bytes_hash?: string;
|
|
8
|
+
subject_metadata_hash?: string;
|
|
9
|
+
measurement_cadence_ms?: number;
|
|
10
|
+
enforcement_action?: string;
|
|
11
|
+
ttl_seconds?: number;
|
|
12
|
+
measurement_types?: string[];
|
|
13
|
+
evidence_items?: Array<{
|
|
14
|
+
label: string;
|
|
15
|
+
content: string;
|
|
16
|
+
}>;
|
|
17
|
+
behavioral_baseline?: BehavioralBaseline;
|
|
18
|
+
}
|
|
19
|
+
export declare function handleCreateArtifact(args: CreateArtifactArgs, ctx: ServerContext): Promise<{
|
|
20
|
+
content: Array<{
|
|
21
|
+
type: "text";
|
|
22
|
+
text: string;
|
|
23
|
+
}>;
|
|
24
|
+
}>;
|
|
25
|
+
//# sourceMappingURL=create-artifact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-artifact.d.ts","sourceRoot":"","sources":["../../src/tools/create-artifact.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAsC,MAAM,kBAAkB,CAAC;AAC5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,kBAAkB;IAEjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,eAAe,CAAC;IAEnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,mBAAmB,CAAC,EAAE,kBAAkB,CAAC;CAC1C;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,GAAG,EAAE,aAAa;;;;;GAoFtF"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { sha256Str } from '../crypto/hash.js';
|
|
2
|
+
import { pkToHex } from '../crypto/sign.js';
|
|
3
|
+
import { computeSubjectIdFromString } from '../core/subject.js';
|
|
4
|
+
import { performAttestation } from '../core/attestation.js';
|
|
5
|
+
import { generateArtifact, hashArtifact } from '../core/artifact.js';
|
|
6
|
+
export async function handleCreateArtifact(args, ctx) {
|
|
7
|
+
// Determine subject identifier - support both content and hash inputs
|
|
8
|
+
let subId;
|
|
9
|
+
if (args.subject_bytes_hash && args.subject_metadata_hash) {
|
|
10
|
+
subId = { bytes_hash: args.subject_bytes_hash, metadata_hash: args.subject_metadata_hash };
|
|
11
|
+
}
|
|
12
|
+
else if (args.subject_content) {
|
|
13
|
+
subId = computeSubjectIdFromString(args.subject_content, args.subject_metadata ?? {});
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
return ctx.error('Provide either subject_content or subject_bytes_hash + subject_metadata_hash');
|
|
17
|
+
}
|
|
18
|
+
// Build enforcement parameters - merge custom with defaults
|
|
19
|
+
const enforcement = {
|
|
20
|
+
measurement_cadence_ms: args.measurement_cadence_ms ?? ctx.defaultEnforcement.measurement_cadence_ms,
|
|
21
|
+
ttl_seconds: args.ttl_seconds ?? ctx.defaultEnforcement.ttl_seconds,
|
|
22
|
+
enforcement_triggers: args.enforcement_action
|
|
23
|
+
? [args.enforcement_action]
|
|
24
|
+
: ctx.defaultEnforcement.enforcement_triggers,
|
|
25
|
+
re_attestation_required: ctx.defaultEnforcement.re_attestation_required,
|
|
26
|
+
measurement_types: (args.measurement_types ?? ctx.defaultEnforcement.measurement_types.map(String)),
|
|
27
|
+
};
|
|
28
|
+
const policyRef = sha256Str(JSON.stringify(enforcement));
|
|
29
|
+
const att = performAttestation({
|
|
30
|
+
subject_identifier: subId,
|
|
31
|
+
policy_reference: policyRef,
|
|
32
|
+
evidence_items: args.evidence_items ?? [],
|
|
33
|
+
});
|
|
34
|
+
if (!att.success || !att.sealed_hash || !att.seal_salt) {
|
|
35
|
+
return ctx.error(att.rejection_reason ?? 'Attestation failed');
|
|
36
|
+
}
|
|
37
|
+
// Track whether this is a re-attestation (after revocation)
|
|
38
|
+
const previousArtifact = ctx.activeArtifact;
|
|
39
|
+
const isReAttestation = previousArtifact !== null && (ctx.portal.state === 'TERMINATED' || ctx.portal.state === 'SAFE_STATE' ||
|
|
40
|
+
ctx.portal.isRevoked(previousArtifact.sealed_hash));
|
|
41
|
+
const artifact = generateArtifact({
|
|
42
|
+
subject_identifier: subId,
|
|
43
|
+
policy_reference: policyRef,
|
|
44
|
+
policy_version: isReAttestation ? (previousArtifact.policy_version + 1) : 1,
|
|
45
|
+
sealed_hash: att.sealed_hash,
|
|
46
|
+
seal_salt: att.seal_salt,
|
|
47
|
+
enforcement_parameters: enforcement,
|
|
48
|
+
disclosure_policy: ctx.defaultClaims,
|
|
49
|
+
evidence_commitments: att.evidence_commitments,
|
|
50
|
+
issuer_keypair: ctx.issuerKP,
|
|
51
|
+
});
|
|
52
|
+
await ctx.storage.storeArtifact(artifact);
|
|
53
|
+
ctx.portal.reset();
|
|
54
|
+
ctx.portal.loadArtifact(artifact, pkToHex(ctx.issuerKP.publicKey));
|
|
55
|
+
ctx.activeArtifact = artifact;
|
|
56
|
+
ctx.quarantine = null;
|
|
57
|
+
ctx.measurementCount = 0;
|
|
58
|
+
ctx.behavioralMonitor.reset();
|
|
59
|
+
if (args.behavioral_baseline)
|
|
60
|
+
ctx.behavioralMonitor.setBaseline(args.behavioral_baseline);
|
|
61
|
+
const eventType = isReAttestation ? 'RE_ATTESTATION' : 'POLICY_ISSUANCE';
|
|
62
|
+
const eventPayload = {
|
|
63
|
+
artifact_hash: hashArtifact(artifact),
|
|
64
|
+
sealed_hash: artifact.sealed_hash,
|
|
65
|
+
};
|
|
66
|
+
if (isReAttestation && previousArtifact) {
|
|
67
|
+
eventPayload.predecessor_sealed_hash = previousArtifact.sealed_hash;
|
|
68
|
+
eventPayload.predecessor_artifact_hash = hashArtifact(previousArtifact);
|
|
69
|
+
}
|
|
70
|
+
await ctx.appendToChain(eventType, eventPayload);
|
|
71
|
+
return ctx.json({
|
|
72
|
+
success: true,
|
|
73
|
+
artifact_hash: hashArtifact(artifact),
|
|
74
|
+
sealed_hash: artifact.sealed_hash,
|
|
75
|
+
subject_identifier: subId,
|
|
76
|
+
portal_state: ctx.portal.state,
|
|
77
|
+
issuer_public_key: pkToHex(ctx.issuerKP.publicKey),
|
|
78
|
+
verification_tier: ctx.verificationTier,
|
|
79
|
+
event_type: eventType,
|
|
80
|
+
enforcement_parameters: enforcement,
|
|
81
|
+
evidence_commitments: att.evidence_commitments,
|
|
82
|
+
is_re_attestation: isReAttestation,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=create-artifact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-artifact.js","sourceRoot":"","sources":["../../src/tools/create-artifact.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
export interface DelegateSubagentArgs {
|
|
3
|
+
sub_agent_id?: string;
|
|
4
|
+
permitted_tools?: string[];
|
|
5
|
+
ttl_seconds?: number;
|
|
6
|
+
delegation_reason?: string;
|
|
7
|
+
enforcement_triggers?: string[];
|
|
8
|
+
measurement_types?: string[];
|
|
9
|
+
requested_ttl_seconds?: number;
|
|
10
|
+
delegation_purpose?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function handleDelegateSubagent(args: DelegateSubagentArgs, ctx: ServerContext): Promise<{
|
|
13
|
+
content: Array<{
|
|
14
|
+
type: "text";
|
|
15
|
+
text: string;
|
|
16
|
+
}>;
|
|
17
|
+
}>;
|
|
18
|
+
//# sourceMappingURL=delegate-subagent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate-subagent.d.ts","sourceRoot":"","sources":["../../src/tools/delegate-subagent.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAInD,MAAM,WAAW,oBAAoB;IAEnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,oBAAoB,EAAE,GAAG,EAAE,aAAa;;;;;GAmD1F"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { deriveArtifact } from '../core/delegation.js';
|
|
2
|
+
import { utcNow } from '../utils/timestamp.js';
|
|
3
|
+
export async function handleDelegateSubagent(args, ctx) {
|
|
4
|
+
if (!ctx.portal.artifact)
|
|
5
|
+
return ctx.error('No artifact loaded. Call aga_create_artifact first.');
|
|
6
|
+
// Resolve parameters (support both V1 and V2 naming)
|
|
7
|
+
const triggers = args.enforcement_triggers
|
|
8
|
+
?? ctx.portal.artifact.enforcement_parameters.enforcement_triggers.map(String);
|
|
9
|
+
const types = args.measurement_types
|
|
10
|
+
?? ctx.portal.artifact.enforcement_parameters.measurement_types.map(String);
|
|
11
|
+
const ttl = args.ttl_seconds ?? args.requested_ttl_seconds ?? 1800;
|
|
12
|
+
const purpose = args.delegation_reason ?? args.delegation_purpose ?? 'Sub-agent delegation';
|
|
13
|
+
const subAgentId = args.sub_agent_id ?? 'sub-agent';
|
|
14
|
+
// If permitted_tools provided, validate against behavioral baseline
|
|
15
|
+
const permittedTools = args.permitted_tools;
|
|
16
|
+
const result = deriveArtifact(ctx.portal.artifact, {
|
|
17
|
+
enforcement_triggers: triggers,
|
|
18
|
+
measurement_types: types,
|
|
19
|
+
requested_ttl_seconds: ttl,
|
|
20
|
+
delegation_purpose: purpose,
|
|
21
|
+
}, ctx.issuerKP);
|
|
22
|
+
if (result.success && result.child_artifact_hash && result.effective_ttl_seconds !== undefined && result.scope_reduction) {
|
|
23
|
+
const record = {
|
|
24
|
+
parent_artifact_hash: result.parent_artifact_hash,
|
|
25
|
+
child_artifact_hash: result.child_artifact_hash,
|
|
26
|
+
effective_ttl_seconds: result.effective_ttl_seconds,
|
|
27
|
+
scope_reduction: result.scope_reduction,
|
|
28
|
+
purpose,
|
|
29
|
+
timestamp: utcNow(),
|
|
30
|
+
};
|
|
31
|
+
ctx.delegations.push(record);
|
|
32
|
+
await ctx.appendToChain('DELEGATION', {
|
|
33
|
+
type: 'DELEGATION',
|
|
34
|
+
sub_agent_id: subAgentId,
|
|
35
|
+
parent_artifact_hash: result.parent_artifact_hash,
|
|
36
|
+
child_artifact_hash: result.child_artifact_hash,
|
|
37
|
+
effective_ttl: result.effective_ttl_seconds,
|
|
38
|
+
scope_reduction: result.scope_reduction,
|
|
39
|
+
permitted_tools: permittedTools,
|
|
40
|
+
purpose,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return ctx.json({
|
|
44
|
+
...result,
|
|
45
|
+
sub_agent_id: subAgentId,
|
|
46
|
+
scope_diminished: result.success ? true : undefined,
|
|
47
|
+
permitted_tools: permittedTools,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=delegate-subagent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delegate-subagent.js","sourceRoot":"","sources":["../../src/tools/delegate-subagent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAkB/C,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,IAA0B,EAAE,GAAkB;IACzF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAElG,qDAAqD;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB;WACrC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjF,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB;WAC/B,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC;IACnE,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,kBAAkB,IAAI,sBAAsB,CAAC;IAC5F,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,IAAI,WAAW,CAAC;IAEpD,oEAAoE;IACpE,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;IAE5C,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;QACjD,oBAAoB,EAAE,QAA+B;QACrD,iBAAiB,EAAE,KAA0B;QAC7C,qBAAqB,EAAE,GAAG;QAC1B,kBAAkB,EAAE,OAAO;KAC5B,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAEjB,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,qBAAqB,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QACzH,MAAM,MAAM,GAAqB;YAC/B,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;YACnD,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,OAAO;YACP,SAAS,EAAE,MAAM,EAAE;SACpB,CAAC;QACF,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7B,MAAM,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE;YACpC,IAAI,EAAE,YAAY;YAClB,YAAY,EAAE,UAAU;YACxB,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,aAAa,EAAE,MAAM,CAAC,qBAAqB;YAC3C,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,eAAe,EAAE,cAAc;YAC/B,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC,IAAI,CAAC;QACd,GAAG,MAAM;QACT,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QACnD,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
import type { DisclosureMode } from '../core/types.js';
|
|
3
|
+
export interface DiscloseClaimArgs {
|
|
4
|
+
claim_id: string;
|
|
5
|
+
requester_id?: string;
|
|
6
|
+
mode?: DisclosureMode;
|
|
7
|
+
}
|
|
8
|
+
export declare function handleDiscloseClaim(args: DiscloseClaimArgs, ctx: ServerContext): Promise<{
|
|
9
|
+
content: Array<{
|
|
10
|
+
type: "text";
|
|
11
|
+
text: string;
|
|
12
|
+
}>;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=disclose-claim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disclose-claim.d.ts","sourceRoot":"","sources":["../../src/tools/disclose-claim.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,aAAa;;;;;GAyBpF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { processDisclosure } from '../core/disclosure.js';
|
|
2
|
+
import { utcNow } from '../utils/timestamp.js';
|
|
3
|
+
export async function handleDiscloseClaim(args, ctx) {
|
|
4
|
+
const latest = await ctx.storage.getLatestEvent();
|
|
5
|
+
const result = processDisclosure({
|
|
6
|
+
requested_claim_id: args.claim_id,
|
|
7
|
+
requester_id: args.requester_id ?? 'anonymous',
|
|
8
|
+
mode: args.mode ?? 'REVEAL_MIN',
|
|
9
|
+
timestamp: utcNow(),
|
|
10
|
+
}, ctx.defaultClaims, ctx.claimValues, 1, latest?.sequence_number ?? 0, ctx.portalKP);
|
|
11
|
+
if (result.substitution_receipt) {
|
|
12
|
+
await ctx.appendToChain('SUBSTITUTION', result.substitution_receipt);
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
await ctx.appendToChain('DISCLOSURE', {
|
|
16
|
+
claim_id: args.claim_id,
|
|
17
|
+
mode: args.mode ?? 'REVEAL_MIN',
|
|
18
|
+
permitted: result.permitted,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return ctx.json({ success: true, ...result });
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=disclose-claim.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disclose-claim.js","sourceRoot":"","sources":["../../src/tools/disclose-claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAU/C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAuB,EAAE,GAAkB;IACnF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,iBAAiB,CAC9B;QACE,kBAAkB,EAAE,IAAI,CAAC,QAAQ;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,WAAW;QAC9C,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,YAAY;QAC/B,SAAS,EAAE,MAAM,EAAE;KACpB,EACD,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,WAAW,EACf,CAAC,EACD,MAAM,EAAE,eAAe,IAAI,CAAC,EAC5B,GAAG,CAAC,QAAQ,CACb,CAAC;IACF,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAChC,MAAM,GAAG,CAAC,aAAa,CAAC,cAAc,EAAE,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE;YACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,YAAY;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
export declare function handleExportBundle(_args: Record<string, never>, ctx: ServerContext): Promise<{
|
|
3
|
+
content: Array<{
|
|
4
|
+
type: "text";
|
|
5
|
+
text: string;
|
|
6
|
+
}>;
|
|
7
|
+
}>;
|
|
8
|
+
//# sourceMappingURL=export-bundle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-bundle.d.ts","sourceRoot":"","sources":["../../src/tools/export-bundle.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,aAAa;;;;;GAkBxF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { hashArtifact } from '../core/artifact.js';
|
|
2
|
+
import { eventInclusionProof } from '../core/checkpoint.js';
|
|
3
|
+
import { generateBundle } from '../core/bundle.js';
|
|
4
|
+
export async function handleExportBundle(_args, ctx) {
|
|
5
|
+
const artifact = await ctx.storage.getLatestArtifact();
|
|
6
|
+
if (!artifact)
|
|
7
|
+
return ctx.error('No artifact');
|
|
8
|
+
const cp = await ctx.storage.getLatestCheckpoint();
|
|
9
|
+
if (!cp)
|
|
10
|
+
return ctx.error('No checkpoint. Call aga_create_checkpoint first.');
|
|
11
|
+
const receipts = await ctx.storage.getReceiptsByArtifact(hashArtifact(artifact));
|
|
12
|
+
const batchEvents = await ctx.storage.getEvents(cp.batch_start_sequence, cp.batch_end_sequence);
|
|
13
|
+
const proofs = receipts
|
|
14
|
+
.filter(r => r.sequence_number >= cp.batch_start_sequence && r.sequence_number <= cp.batch_end_sequence)
|
|
15
|
+
.map(r => eventInclusionProof(batchEvents, r.sequence_number));
|
|
16
|
+
const bundle = generateBundle(artifact, receipts, proofs, cp, ctx.portalKP);
|
|
17
|
+
return ctx.json({
|
|
18
|
+
success: true,
|
|
19
|
+
bundle,
|
|
20
|
+
offline_verifiable: true,
|
|
21
|
+
receipt_count: receipts.length,
|
|
22
|
+
proof_count: proofs.length,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=export-bundle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-bundle.js","sourceRoot":"","sources":["../../src/tools/export-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAA4B,EAAE,GAAkB;IACvF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IACvD,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;IACnD,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,QAAQ;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,oBAAoB,IAAI,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,kBAAkB,CAAC;SACvG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5E,OAAO,GAAG,CAAC,IAAI,CAAC;QACd,OAAO,EAAE,IAAI;QACb,MAAM;QACN,kBAAkB,EAAE,IAAI;QACxB,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,WAAW,EAAE,MAAM,CAAC,MAAM;KAC3B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
export interface FullLifecycleArgs {
|
|
3
|
+
subject_content?: string;
|
|
4
|
+
subject_metadata?: Record<string, string>;
|
|
5
|
+
scenario?: string;
|
|
6
|
+
include_drift?: boolean;
|
|
7
|
+
include_revocation?: boolean;
|
|
8
|
+
include_behavioral?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function handleFullLifecycle(args: FullLifecycleArgs, ctx: ServerContext): Promise<{
|
|
11
|
+
content: Array<{
|
|
12
|
+
type: "text";
|
|
13
|
+
text: string;
|
|
14
|
+
}>;
|
|
15
|
+
}>;
|
|
16
|
+
//# sourceMappingURL=full-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-lifecycle.d.ts","sourceRoot":"","sources":["../../src/tools/full-lifecycle.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,iBAAiB;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAaD,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,aAAa;;;;;GA6GpF"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { sha256Str } from '../crypto/hash.js';
|
|
2
|
+
import { pkToHex } from '../crypto/sign.js';
|
|
3
|
+
import { computeSubjectIdFromString } from '../core/subject.js';
|
|
4
|
+
import { performAttestation } from '../core/attestation.js';
|
|
5
|
+
import { generateArtifact, hashArtifact } from '../core/artifact.js';
|
|
6
|
+
import { generateReceipt } from '../core/receipt.js';
|
|
7
|
+
import { createCheckpoint, eventInclusionProof } from '../core/checkpoint.js';
|
|
8
|
+
import { generateBundle, verifyBundleOffline } from '../core/bundle.js';
|
|
9
|
+
import { initQuarantine, captureInput } from '../core/quarantine.js';
|
|
10
|
+
const SCENARIOS = {
|
|
11
|
+
drone: {
|
|
12
|
+
content: 'def monitor(): return sensors.read_all()',
|
|
13
|
+
metadata: { filename: 'drone_agent.py', version: '2.1.0', author: 'engineering' },
|
|
14
|
+
},
|
|
15
|
+
scada: {
|
|
16
|
+
content: 'def control(): return actuators.safe_position()',
|
|
17
|
+
metadata: { filename: 'scada_controller.py', version: '1.0.0', author: 'ops' },
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
export async function handleFullLifecycle(args, ctx) {
|
|
21
|
+
const scenario = SCENARIOS[args.scenario ?? ''] ?? {
|
|
22
|
+
content: args.subject_content ?? 'def agent(): return task.execute()',
|
|
23
|
+
metadata: args.subject_metadata ?? { filename: 'lifecycle-test' },
|
|
24
|
+
};
|
|
25
|
+
const content = scenario.content;
|
|
26
|
+
const meta = scenario.metadata;
|
|
27
|
+
const includeDrift = args.include_drift !== false;
|
|
28
|
+
const includeRevocation = args.include_revocation !== false;
|
|
29
|
+
const includeBehavioral = args.include_behavioral !== false;
|
|
30
|
+
const phases = {};
|
|
31
|
+
// Phase 1: Attestation
|
|
32
|
+
const subId = computeSubjectIdFromString(content, meta);
|
|
33
|
+
const policyRef = sha256Str(JSON.stringify(ctx.defaultEnforcement));
|
|
34
|
+
const att = performAttestation({ subject_identifier: subId, policy_reference: policyRef, evidence_items: [] });
|
|
35
|
+
if (!att.success || !att.sealed_hash || !att.seal_salt)
|
|
36
|
+
return ctx.error('Attestation failed');
|
|
37
|
+
const artifact = generateArtifact({
|
|
38
|
+
subject_identifier: subId, policy_reference: policyRef, policy_version: 1,
|
|
39
|
+
sealed_hash: att.sealed_hash, seal_salt: att.seal_salt,
|
|
40
|
+
enforcement_parameters: { ...ctx.defaultEnforcement, enforcement_triggers: ['QUARANTINE', 'TERMINATE'] },
|
|
41
|
+
disclosure_policy: ctx.defaultClaims,
|
|
42
|
+
evidence_commitments: att.evidence_commitments, issuer_keypair: ctx.issuerKP,
|
|
43
|
+
});
|
|
44
|
+
await ctx.storage.storeArtifact(artifact);
|
|
45
|
+
ctx.portal.reset();
|
|
46
|
+
ctx.portal.loadArtifact(artifact, pkToHex(ctx.issuerKP.publicKey));
|
|
47
|
+
ctx.activeArtifact = artifact;
|
|
48
|
+
await ctx.appendToChain('POLICY_ISSUANCE', { artifact_hash: hashArtifact(artifact) });
|
|
49
|
+
phases.attestation = { success: true, artifact_hash: hashArtifact(artifact), portal_state: ctx.portal.state };
|
|
50
|
+
// Phase 2: Clean monitoring
|
|
51
|
+
const result = ctx.portal.measure(new TextEncoder().encode(content), meta);
|
|
52
|
+
const artRef = hashArtifact(artifact);
|
|
53
|
+
const receipt = generateReceipt({
|
|
54
|
+
subjectId: subId, artifactRef: artRef,
|
|
55
|
+
currentHash: `${result.currentBytesHash}||${result.currentMetaHash}`,
|
|
56
|
+
sealedHash: `${result.expectedBytesHash}||${result.expectedMetaHash}`,
|
|
57
|
+
driftDetected: false, driftDescription: null, action: null,
|
|
58
|
+
measurementType: 'EXECUTABLE_IMAGE', seq: ctx.portal.sequenceCounter + 1,
|
|
59
|
+
prevLeaf: ctx.portal.lastLeafHash, portalKP: ctx.portalKP,
|
|
60
|
+
});
|
|
61
|
+
await ctx.storage.storeReceipt(receipt);
|
|
62
|
+
await ctx.appendToChain('INTERACTION_RECEIPT', { receipt_id: receipt.receipt_id });
|
|
63
|
+
phases.monitoring = { match: result.match, receipt_id: receipt.receipt_id };
|
|
64
|
+
// Phase 3: Drift detection
|
|
65
|
+
if (includeDrift) {
|
|
66
|
+
const injected = content.replace('return', 'return attacker.exfiltrate(') + ')';
|
|
67
|
+
const driftResult = ctx.portal.measure(new TextEncoder().encode(injected), meta);
|
|
68
|
+
ctx.portal.enforce('QUARANTINE');
|
|
69
|
+
ctx.quarantine = initQuarantine();
|
|
70
|
+
captureInput(ctx.quarantine, 'attacker_command', 'exfiltrate data');
|
|
71
|
+
const driftReceipt = generateReceipt({
|
|
72
|
+
subjectId: subId, artifactRef: artRef,
|
|
73
|
+
currentHash: `${driftResult.currentBytesHash}||${driftResult.currentMetaHash}`,
|
|
74
|
+
sealedHash: `${driftResult.expectedBytesHash}||${driftResult.expectedMetaHash}`,
|
|
75
|
+
driftDetected: true, driftDescription: 'Binary modification detected', action: 'QUARANTINE',
|
|
76
|
+
measurementType: 'EXECUTABLE_IMAGE', seq: ctx.portal.sequenceCounter + 1,
|
|
77
|
+
prevLeaf: ctx.portal.lastLeafHash, portalKP: ctx.portalKP,
|
|
78
|
+
});
|
|
79
|
+
await ctx.storage.storeReceipt(driftReceipt);
|
|
80
|
+
await ctx.appendToChain('INTERACTION_RECEIPT', { receipt_id: driftReceipt.receipt_id, drift_detected: true });
|
|
81
|
+
phases.drift_detection = { drift_detected: true, enforcement: 'QUARANTINE', portal_state: ctx.portal.state };
|
|
82
|
+
}
|
|
83
|
+
// Phase 3b: Behavioral drift
|
|
84
|
+
if (includeBehavioral) {
|
|
85
|
+
ctx.behavioralMonitor.setBaseline({
|
|
86
|
+
permitted_tools: ['survey', 'report'], rate_limits: { survey: 10 },
|
|
87
|
+
forbidden_sequences: [['exfiltrate', 'transmit_external']], window_ms: 60000,
|
|
88
|
+
});
|
|
89
|
+
ctx.behavioralMonitor.recordInvocation('exfiltrate', sha256Str('exfil'));
|
|
90
|
+
const bm = ctx.behavioralMonitor.measure();
|
|
91
|
+
if (bm.drift_detected) {
|
|
92
|
+
await ctx.appendToChain('BEHAVIORAL_DRIFT', { violations: bm.violations, behavioral_hash: bm.behavioral_hash });
|
|
93
|
+
}
|
|
94
|
+
phases.behavioral_drift = { drift_detected: bm.drift_detected, violations: bm.violations.length };
|
|
95
|
+
}
|
|
96
|
+
// Phase 3c: Revocation
|
|
97
|
+
if (includeRevocation) {
|
|
98
|
+
ctx.portal.revoke(artifact.sealed_hash);
|
|
99
|
+
await ctx.appendToChain('REVOCATION', { artifact_sealed_hash: artifact.sealed_hash, reason: 'Compromise detected' });
|
|
100
|
+
phases.revocation = { revoked: true, portal_state: ctx.portal.state };
|
|
101
|
+
}
|
|
102
|
+
// Phase 4: Evidence bundle
|
|
103
|
+
const allEvents = await ctx.storage.getAllEvents();
|
|
104
|
+
const { checkpoint } = createCheckpoint(allEvents);
|
|
105
|
+
await ctx.storage.storeCheckpoint(checkpoint);
|
|
106
|
+
await ctx.appendToChain('ANCHOR_BATCH', { merkle_root: checkpoint.merkle_root, leaf_count: allEvents.length });
|
|
107
|
+
const allReceipts = await ctx.storage.getAllReceipts();
|
|
108
|
+
const batchEvents = await ctx.storage.getEvents(checkpoint.batch_start_sequence, checkpoint.batch_end_sequence);
|
|
109
|
+
const proofs = batchEvents.length > 1 ? [eventInclusionProof(batchEvents, batchEvents[1].sequence_number)] : [];
|
|
110
|
+
const bundle = generateBundle(artifact, allReceipts, proofs, checkpoint, ctx.portalKP);
|
|
111
|
+
const verification = verifyBundleOffline(bundle, pkToHex(ctx.issuerKP.publicKey));
|
|
112
|
+
phases.evidence_bundle = { verification, receipt_count: allReceipts.length };
|
|
113
|
+
return ctx.json({
|
|
114
|
+
success: true,
|
|
115
|
+
scenario: args.scenario ?? 'default',
|
|
116
|
+
phases,
|
|
117
|
+
final_verdict: verification.overall ? 'PASS' : 'FAIL',
|
|
118
|
+
portal_state: ctx.portal.state,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=full-lifecycle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"full-lifecycle.js","sourceRoot":"","sources":["../../src/tools/full-lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAA2B,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAYrE,MAAM,SAAS,GAA0E;IACvF,KAAK,EAAE;QACL,OAAO,EAAE,0CAA0C;QACnD,QAAQ,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE;KAClF;IACD,KAAK,EAAE;QACL,OAAO,EAAE,iDAAiD;QAC1D,QAAQ,EAAE,EAAE,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE;KAC/E;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAuB,EAAE,GAAkB;IACnF,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,IAAI;QACjD,OAAO,EAAE,IAAI,CAAC,eAAe,IAAI,oCAAoC;QACrE,QAAQ,EAAE,IAAI,CAAC,gBAAgB,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE;KAClE,CAAC;IACF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC;IAClD,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,KAAK,KAAK,CAAC;IAC5D,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,KAAK,KAAK,CAAC;IAE5D,MAAM,MAAM,GAA4B,EAAE,CAAC;IAE3C,uBAAuB;IACvB,MAAM,KAAK,GAAG,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,kBAAkB,CAAC,EAAE,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/G,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,SAAS;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAE/F,MAAM,QAAQ,GAAG,gBAAgB,CAAC;QAChC,kBAAkB,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;QACzE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS;QACtD,sBAAsB,EAAE,EAAE,GAAG,GAAG,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE;QACxG,iBAAiB,EAAE,GAAG,CAAC,aAAa;QACpC,oBAAoB,EAAE,GAAG,CAAC,oBAAoB,EAAE,cAAc,EAAE,GAAG,CAAC,QAAQ;KAC7E,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1C,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACnB,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACnE,GAAG,CAAC,cAAc,GAAG,QAAQ,CAAC;IAC9B,MAAM,GAAG,CAAC,aAAa,CAAC,iBAAiB,EAAE,EAAE,aAAa,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACtF,MAAM,CAAC,WAAW,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAE9G,4BAA4B;IAC5B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM;QACrC,WAAW,EAAE,GAAG,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,eAAe,EAAE;QACpE,UAAU,EAAE,GAAG,MAAM,CAAC,iBAAiB,KAAK,MAAM,CAAC,gBAAgB,EAAE;QACrE,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI;QAC1D,eAAe,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC;QACxE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ;KAC1D,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,GAAG,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IACnF,MAAM,CAAC,UAAU,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;IAE5E,2BAA2B;IAC3B,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,6BAA6B,CAAC,GAAG,GAAG,CAAC;QAChF,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;QACjF,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjC,GAAG,CAAC,UAAU,GAAG,cAAc,EAAE,CAAC;QAClC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QACpE,MAAM,YAAY,GAAG,eAAe,CAAC;YACnC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM;YACrC,WAAW,EAAE,GAAG,WAAW,CAAC,gBAAgB,KAAK,WAAW,CAAC,eAAe,EAAE;YAC9E,UAAU,EAAE,GAAG,WAAW,CAAC,iBAAiB,KAAK,WAAW,CAAC,gBAAgB,EAAE;YAC/E,aAAa,EAAE,IAAI,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,MAAM,EAAE,YAAY;YAC3F,eAAe,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC;YACxE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ;SAC1D,CAAC,CAAC;QACH,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QAC7C,MAAM,GAAG,CAAC,aAAa,CAAC,qBAAqB,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9G,MAAM,CAAC,eAAe,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC/G,CAAC;IAED,6BAA6B;IAC7B,IAAI,iBAAiB,EAAE,CAAC;QACtB,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC;YAChC,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAClE,mBAAmB,EAAE,CAAC,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK;SAC7E,CAAC,CAAC;QACH,GAAG,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACzE,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QAC3C,IAAI,EAAE,CAAC,cAAc,EAAE,CAAC;YACtB,MAAM,GAAG,CAAC,aAAa,CAAC,kBAAkB,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,CAAC;QAClH,CAAC;QACD,MAAM,CAAC,gBAAgB,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACpG,CAAC;IAED,uBAAuB;IACvB,IAAI,iBAAiB,EAAE,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,GAAG,CAAC,aAAa,CAAC,YAAY,EAAE,EAAE,oBAAoB,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;QACrH,MAAM,CAAC,UAAU,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACxE,CAAC;IAED,2BAA2B;IAC3B,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;IACnD,MAAM,EAAE,UAAU,EAAE,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,GAAG,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAE/G,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;IACvD,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,oBAAoB,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAChH,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChH,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACvF,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IAClF,MAAM,CAAC,eAAe,GAAG,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;IAE7E,OAAO,GAAG,CAAC,IAAI,CAAC;QACd,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS;QACpC,MAAM;QACN,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACrD,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK;KAC/B,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
export interface GenerateReceiptArgs {
|
|
3
|
+
subject_content?: string;
|
|
4
|
+
drift_detected?: boolean;
|
|
5
|
+
drift_description?: string;
|
|
6
|
+
measurement_type?: string;
|
|
7
|
+
action_type?: string;
|
|
8
|
+
action_detail?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function handleGenerateReceipt(args: GenerateReceiptArgs, ctx: ServerContext): Promise<{
|
|
11
|
+
content: Array<{
|
|
12
|
+
type: "text";
|
|
13
|
+
text: string;
|
|
14
|
+
}>;
|
|
15
|
+
}>;
|
|
16
|
+
//# sourceMappingURL=generate-receipt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-receipt.d.ts","sourceRoot":"","sources":["../../src/tools/generate-receipt.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,EAAE,aAAa;;;;;GA6BxF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { hashArtifact } from '../core/artifact.js';
|
|
2
|
+
import { generateReceipt } from '../core/receipt.js';
|
|
3
|
+
export async function handleGenerateReceipt(args, ctx) {
|
|
4
|
+
if (!ctx.portal.artifact)
|
|
5
|
+
return ctx.error('No artifact loaded.');
|
|
6
|
+
const artRef = hashArtifact(ctx.portal.artifact);
|
|
7
|
+
const mType = args.action_type ?? args.measurement_type ?? 'FILE_SYSTEM_STATE';
|
|
8
|
+
const driftDesc = args.action_detail ?? args.drift_description ?? null;
|
|
9
|
+
const receipt = generateReceipt({
|
|
10
|
+
subjectId: ctx.portal.artifact.subject_identifier,
|
|
11
|
+
artifactRef: artRef,
|
|
12
|
+
currentHash: args.subject_content ?? artRef,
|
|
13
|
+
sealedHash: ctx.portal.artifact.sealed_hash,
|
|
14
|
+
driftDetected: args.drift_detected ?? false,
|
|
15
|
+
driftDescription: driftDesc,
|
|
16
|
+
action: null,
|
|
17
|
+
measurementType: mType,
|
|
18
|
+
seq: ctx.portal.sequenceCounter + 1,
|
|
19
|
+
prevLeaf: ctx.portal.lastLeafHash,
|
|
20
|
+
portalKP: ctx.portalKP,
|
|
21
|
+
});
|
|
22
|
+
await ctx.storage.storeReceipt(receipt);
|
|
23
|
+
await ctx.appendToChain('INTERACTION_RECEIPT', {
|
|
24
|
+
receipt_id: receipt.receipt_id,
|
|
25
|
+
drift_detected: args.drift_detected ?? false,
|
|
26
|
+
action_type: args.action_type,
|
|
27
|
+
action_detail: args.action_detail,
|
|
28
|
+
});
|
|
29
|
+
return ctx.json({ success: true, receipt_id: receipt.receipt_id, receipt });
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=generate-receipt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-receipt.js","sourceRoot":"","sources":["../../src/tools/generate-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAYrD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAyB,EAAE,GAAkB;IACvF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAElE,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,gBAAgB,IAAI,mBAAmB,CAAC;IAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC;IAEvE,MAAM,OAAO,GAAG,eAAe,CAAC;QAC9B,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB;QACjD,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,IAAI,CAAC,eAAe,IAAI,MAAM;QAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW;QAC3C,aAAa,EAAE,IAAI,CAAC,cAAc,IAAI,KAAK;QAC3C,gBAAgB,EAAE,SAAS;QAC3B,MAAM,EAAE,IAAI;QACZ,eAAe,EAAE,KAAK;QACtB,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,GAAG,CAAC;QACnC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,YAAY;QACjC,QAAQ,EAAE,GAAG,CAAC,QAAQ;KACvB,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,GAAG,CAAC,aAAa,CAAC,qBAAqB,EAAE;QAC7C,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,KAAK;QAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;KAClC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ServerContext } from '../context.js';
|
|
2
|
+
export interface GetChainArgs {
|
|
3
|
+
start_seq?: number;
|
|
4
|
+
end_seq?: number;
|
|
5
|
+
verify?: boolean;
|
|
6
|
+
filter_type?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function handleGetChain(args: GetChainArgs, ctx: ServerContext): Promise<{
|
|
9
|
+
content: Array<{
|
|
10
|
+
type: "text";
|
|
11
|
+
text: string;
|
|
12
|
+
}>;
|
|
13
|
+
}>;
|
|
14
|
+
//# sourceMappingURL=get-chain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-chain.d.ts","sourceRoot":"","sources":["../../src/tools/get-chain.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAYD,wBAAsB,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,aAAa;;;;;GAqC1E"}
|