aimeat 1.2.6 → 1.3.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/.env.example +4 -0
- package/dist/locales/en.json +74 -2
- package/dist/locales/fi.json +74 -2
- package/dist/public/css/views/capabilities.css +211 -0
- package/dist/public/llms-template.txt +152 -89
- package/dist/public/spa.html +1 -0
- package/dist/public/views/admin/capabilities-tab.js +114 -0
- package/dist/public/views/admin.js +2 -0
- package/dist/public/views/aimeat-os.js +194 -34
- package/dist/public/views/profile/capabilities-tab.js +252 -0
- package/dist/public/views/profile/extensions-tab.js +404 -50
- package/dist/public/views/profile/landing-page.js +2 -0
- package/dist/public/views/profile.js +2 -0
- package/dist/src/config.d.ts +11 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +11 -0
- package/dist/src/config.js.map +1 -1
- package/dist/src/mcp/apps.d.ts +18 -0
- package/dist/src/mcp/apps.d.ts.map +1 -0
- package/dist/src/mcp/apps.js +241 -0
- package/dist/src/mcp/apps.js.map +1 -0
- package/dist/src/mcp/capabilities.d.ts +12 -0
- package/dist/src/mcp/capabilities.d.ts.map +1 -0
- package/dist/src/mcp/capabilities.js +187 -0
- package/dist/src/mcp/capabilities.js.map +1 -0
- package/dist/src/mcp/cortex.d.ts +17 -0
- package/dist/src/mcp/cortex.d.ts.map +1 -0
- package/dist/src/mcp/cortex.js +237 -0
- package/dist/src/mcp/cortex.js.map +1 -0
- package/dist/src/mcp/extensions.d.ts +4 -3
- package/dist/src/mcp/extensions.d.ts.map +1 -1
- package/dist/src/mcp/extensions.js +233 -3
- package/dist/src/mcp/extensions.js.map +1 -1
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +6 -0
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/routes/admin-capabilities.d.ts +11 -0
- package/dist/src/routes/admin-capabilities.d.ts.map +1 -0
- package/dist/src/routes/admin-capabilities.js +54 -0
- package/dist/src/routes/admin-capabilities.js.map +1 -0
- package/dist/src/routes/capabilities.d.ts +11 -0
- package/dist/src/routes/capabilities.d.ts.map +1 -0
- package/dist/src/routes/capabilities.js +289 -0
- package/dist/src/routes/capabilities.js.map +1 -0
- package/dist/src/routes/cortex.d.ts.map +1 -1
- package/dist/src/routes/cortex.js +2 -0
- package/dist/src/routes/cortex.js.map +1 -1
- package/dist/src/routes/extensions.d.ts.map +1 -1
- package/dist/src/routes/extensions.js +9 -0
- package/dist/src/routes/extensions.js.map +1 -1
- package/dist/src/routes/lib-capabilities.d.ts +9 -0
- package/dist/src/routes/lib-capabilities.d.ts.map +1 -0
- package/dist/src/routes/lib-capabilities.js +190 -0
- package/dist/src/routes/lib-capabilities.js.map +1 -0
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +13 -0
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/verification.d.ts +10 -1
- package/dist/src/routes/verification.d.ts.map +1 -1
- package/dist/src/routes/verification.js +174 -24
- package/dist/src/routes/verification.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +35 -2
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/services/capability-aggregator.d.ts +8 -0
- package/dist/src/services/capability-aggregator.d.ts.map +1 -0
- package/dist/src/services/capability-aggregator.js +239 -0
- package/dist/src/services/capability-aggregator.js.map +1 -0
- package/dist/src/services/capability-invoke.d.ts +20 -0
- package/dist/src/services/capability-invoke.d.ts.map +1 -0
- package/dist/src/services/capability-invoke.js +95 -0
- package/dist/src/services/capability-invoke.js.map +1 -0
- package/dist/src/services/config-schema.d.ts.map +1 -1
- package/dist/src/services/config-schema.js +4 -0
- package/dist/src/services/config-schema.js.map +1 -1
- package/dist/src/services/core-jobs.d.ts.map +1 -1
- package/dist/src/services/core-jobs.js +16 -0
- package/dist/src/services/core-jobs.js.map +1 -1
- package/dist/src/services/did-document.d.ts +25 -0
- package/dist/src/services/did-document.d.ts.map +1 -0
- package/dist/src/services/did-document.js +31 -0
- package/dist/src/services/did-document.js.map +1 -0
- package/dist/src/services/eudiw.d.ts +11 -1
- package/dist/src/services/eudiw.d.ts.map +1 -1
- package/dist/src/services/eudiw.js +43 -48
- package/dist/src/services/eudiw.js.map +1 -1
- package/dist/src/services/extension-runtime.d.ts.map +1 -1
- package/dist/src/services/extension-runtime.js +8 -5
- package/dist/src/services/extension-runtime.js.map +1 -1
- package/dist/src/services/job-seeding.d.ts.map +1 -1
- package/dist/src/services/job-seeding.js +4 -0
- package/dist/src/services/job-seeding.js.map +1 -1
- package/dist/src/services/oidc-client.d.ts +32 -0
- package/dist/src/services/oidc-client.d.ts.map +1 -0
- package/dist/src/services/oidc-client.js +67 -0
- package/dist/src/services/oidc-client.js.map +1 -0
- package/dist/src/services/sd-jwt.d.ts +21 -0
- package/dist/src/services/sd-jwt.d.ts.map +1 -0
- package/dist/src/services/sd-jwt.js +87 -0
- package/dist/src/services/sd-jwt.js.map +1 -0
- package/dist/src/services/vc-issuer.d.ts +20 -1
- package/dist/src/services/vc-issuer.d.ts.map +1 -1
- package/dist/src/services/vc-issuer.js +75 -15
- package/dist/src/services/vc-issuer.js.map +1 -1
- package/dist/src/storage/interface.d.ts +118 -1
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.d.ts +37 -1
- package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
- package/dist/src/storage/providers/mongodb/index.js +282 -0
- package/dist/src/storage/providers/mongodb/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/index.d.ts +37 -1
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +241 -0
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +77 -0
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/repositories/capability.repository.d.ts +35 -0
- package/dist/src/storage/repositories/capability.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/capability.repository.js +2 -0
- package/dist/src/storage/repositories/capability.repository.js.map +1 -0
- package/dist/src/storage/repositories/index.d.ts +1 -0
- package/dist/src/storage/repositories/index.d.ts.map +1 -1
- package/dist/src/storage/repositories/node.repository.d.ts +5 -1
- package/dist/src/storage/repositories/node.repository.d.ts.map +1 -1
- package/dist/static/app-catalog.html +156 -29
- package/package.json +6 -1
- package/prisma/schema.prisma +86 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../src/storage/providers/sqlite/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../src/storage/providers/sqlite/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CA4oC5D"}
|
|
@@ -526,6 +526,18 @@ export function initializeSchema(db) {
|
|
|
526
526
|
createdAt TEXT NOT NULL
|
|
527
527
|
);
|
|
528
528
|
|
|
529
|
+
-- ── Verification Nonces ──
|
|
530
|
+
CREATE TABLE IF NOT EXISTS verification_nonces (
|
|
531
|
+
id TEXT PRIMARY KEY,
|
|
532
|
+
owner TEXT NOT NULL,
|
|
533
|
+
type TEXT NOT NULL,
|
|
534
|
+
state TEXT NOT NULL UNIQUE,
|
|
535
|
+
nonce TEXT NOT NULL,
|
|
536
|
+
redirectUri TEXT NOT NULL DEFAULT '',
|
|
537
|
+
createdAt TEXT NOT NULL,
|
|
538
|
+
expiresAt TEXT NOT NULL
|
|
539
|
+
);
|
|
540
|
+
|
|
529
541
|
-- ── Genesis Peers ──
|
|
530
542
|
CREATE TABLE IF NOT EXISTS genesis_peers (
|
|
531
543
|
id TEXT PRIMARY KEY,
|
|
@@ -1065,6 +1077,71 @@ export function initializeSchema(db) {
|
|
|
1065
1077
|
CREATE INDEX IF NOT EXISTS idx_package_instances_owner ON package_instances(owner);
|
|
1066
1078
|
CREATE INDEX IF NOT EXISTS idx_package_instances_package ON package_instances(packageGroupId);
|
|
1067
1079
|
|
|
1080
|
+
-- Capabilities
|
|
1081
|
+
CREATE TABLE IF NOT EXISTS capabilities (
|
|
1082
|
+
id TEXT PRIMARY KEY,
|
|
1083
|
+
name TEXT NOT NULL,
|
|
1084
|
+
summary TEXT NOT NULL DEFAULT '',
|
|
1085
|
+
ownerGhii TEXT NOT NULL,
|
|
1086
|
+
visibility TEXT NOT NULL DEFAULT 'private',
|
|
1087
|
+
scope TEXT NOT NULL DEFAULT 'local',
|
|
1088
|
+
status TEXT NOT NULL DEFAULT 'draft',
|
|
1089
|
+
rejectionReason TEXT,
|
|
1090
|
+
deprecationMessage TEXT,
|
|
1091
|
+
replacedBy TEXT,
|
|
1092
|
+
sourceType TEXT NOT NULL,
|
|
1093
|
+
sourceRef TEXT NOT NULL,
|
|
1094
|
+
sourceVersion TEXT NOT NULL DEFAULT '',
|
|
1095
|
+
authRequired TEXT NOT NULL DEFAULT 'registered',
|
|
1096
|
+
callable INTEGER NOT NULL DEFAULT 0,
|
|
1097
|
+
inputSchema TEXT,
|
|
1098
|
+
outputSchema TEXT,
|
|
1099
|
+
exports TEXT,
|
|
1100
|
+
usage TEXT NOT NULL DEFAULT '',
|
|
1101
|
+
whenToUse TEXT NOT NULL DEFAULT '',
|
|
1102
|
+
whenNotToUse TEXT NOT NULL DEFAULT '',
|
|
1103
|
+
examples TEXT NOT NULL DEFAULT '[]',
|
|
1104
|
+
dependencies TEXT NOT NULL DEFAULT '[]',
|
|
1105
|
+
schemaHash TEXT NOT NULL DEFAULT '',
|
|
1106
|
+
webhookUrl TEXT,
|
|
1107
|
+
cost TEXT,
|
|
1108
|
+
trustRequired REAL,
|
|
1109
|
+
trust TEXT NOT NULL DEFAULT '{"operatorReviewed":false,"reviewedAt":null,"vouchCount":0,"publisherTrustScore":0,"codeAudited":false,"auditNotes":null}',
|
|
1110
|
+
redactedFields TEXT NOT NULL DEFAULT '[]',
|
|
1111
|
+
operatorOverride TEXT,
|
|
1112
|
+
stats TEXT NOT NULL DEFAULT '{"totalInvocations":0,"successCount":0,"errorCount":0,"lastInvokedAt":null,"avgResponseMs":0,"lastError":null}',
|
|
1113
|
+
tags TEXT NOT NULL DEFAULT '[]',
|
|
1114
|
+
createdAt TEXT NOT NULL,
|
|
1115
|
+
updatedAt TEXT NOT NULL
|
|
1116
|
+
);
|
|
1117
|
+
CREATE INDEX IF NOT EXISTS idx_capabilities_owner ON capabilities(ownerGhii);
|
|
1118
|
+
CREATE INDEX IF NOT EXISTS idx_capabilities_source ON capabilities(sourceType, sourceRef);
|
|
1119
|
+
CREATE INDEX IF NOT EXISTS idx_capabilities_status ON capabilities(status);
|
|
1120
|
+
CREATE INDEX IF NOT EXISTS idx_capabilities_visibility ON capabilities(visibility);
|
|
1121
|
+
|
|
1122
|
+
CREATE TABLE IF NOT EXISTS capability_logs (
|
|
1123
|
+
id TEXT PRIMARY KEY,
|
|
1124
|
+
capabilityId TEXT NOT NULL,
|
|
1125
|
+
callerGhii TEXT NOT NULL,
|
|
1126
|
+
input TEXT NOT NULL DEFAULT '{}',
|
|
1127
|
+
status TEXT NOT NULL,
|
|
1128
|
+
durationMs INTEGER NOT NULL DEFAULT 0,
|
|
1129
|
+
error TEXT,
|
|
1130
|
+
timestamp TEXT NOT NULL,
|
|
1131
|
+
FOREIGN KEY (capabilityId) REFERENCES capabilities(id) ON DELETE CASCADE
|
|
1132
|
+
);
|
|
1133
|
+
CREATE INDEX IF NOT EXISTS idx_capability_logs_cap ON capability_logs(capabilityId, timestamp);
|
|
1134
|
+
CREATE INDEX IF NOT EXISTS idx_capability_logs_status ON capability_logs(capabilityId, status);
|
|
1135
|
+
|
|
1136
|
+
CREATE TABLE IF NOT EXISTS capability_vouches (
|
|
1137
|
+
capabilityId TEXT NOT NULL,
|
|
1138
|
+
userGhii TEXT NOT NULL,
|
|
1139
|
+
comment TEXT,
|
|
1140
|
+
createdAt TEXT NOT NULL,
|
|
1141
|
+
PRIMARY KEY (capabilityId, userGhii),
|
|
1142
|
+
FOREIGN KEY (capabilityId) REFERENCES capabilities(id) ON DELETE CASCADE
|
|
1143
|
+
);
|
|
1144
|
+
|
|
1068
1145
|
`);
|
|
1069
1146
|
// ── Schema migrations for existing databases ──
|
|
1070
1147
|
// ALTER TABLE ADD COLUMN is idempotent-safe: if the column exists, it throws
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../src/storage/providers/sqlite/schema.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAqB;IACpD,EAAE,CAAC,IAAI,CAAC
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../src/storage/providers/sqlite/schema.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAqB;IACpD,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmnCP,CAAC,CAAC;IAEH,iDAAiD;IACjD,6EAA6E;IAC7E,qDAAqD;IACrD,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY,EAAE,EAAE;QACpE,IAAI,CAAC;YAAC,EAAE,CAAC,IAAI,CAAC,eAAe,KAAK,eAAe,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC;IAC7G,CAAC,CAAC;IAEF,4CAA4C;IAC5C,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAEjD,6CAA6C;IAC7C,aAAa,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAElD,8CAA8C;IAC9C,aAAa,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAElD,wDAAwD;IACxD,aAAa,CAAC,gBAAgB,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACrD,aAAa,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IAEvD,yDAAyD;IACzD,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { CapabilityRecord, CapabilityLogEntry, CapabilityOverride, CapabilityTrust, CapabilityFilter } from '../interface.js';
|
|
2
|
+
export interface CapabilityRepository {
|
|
3
|
+
createCapability(record: CapabilityRecord): Promise<CapabilityRecord>;
|
|
4
|
+
getCapability(id: string): Promise<CapabilityRecord | null>;
|
|
5
|
+
updateCapability(id: string, updates: Partial<CapabilityRecord>): Promise<CapabilityRecord | null>;
|
|
6
|
+
deleteCapability(id: string): Promise<boolean>;
|
|
7
|
+
listCapabilities(filters: CapabilityFilter): Promise<{
|
|
8
|
+
capabilities: CapabilityRecord[];
|
|
9
|
+
total: number;
|
|
10
|
+
}>;
|
|
11
|
+
listCapabilitiesByOwner(ownerGhii: string): Promise<CapabilityRecord[]>;
|
|
12
|
+
getCapabilityBySourceRef(sourceRef: string): Promise<CapabilityRecord | null>;
|
|
13
|
+
listCapabilitiesBySourceType(sourceType: string): Promise<CapabilityRecord[]>;
|
|
14
|
+
incrementCapabilityStats(id: string, delta: {
|
|
15
|
+
success: number;
|
|
16
|
+
error: number;
|
|
17
|
+
totalMs: number;
|
|
18
|
+
lastError?: string;
|
|
19
|
+
}): Promise<void>;
|
|
20
|
+
addCapabilityLog(entry: CapabilityLogEntry): Promise<void>;
|
|
21
|
+
listCapabilityLogs(capabilityId: string, filters: {
|
|
22
|
+
status?: 'success' | 'error';
|
|
23
|
+
page?: number;
|
|
24
|
+
perPage?: number;
|
|
25
|
+
}): Promise<{
|
|
26
|
+
logs: CapabilityLogEntry[];
|
|
27
|
+
total: number;
|
|
28
|
+
}>;
|
|
29
|
+
deleteCapabilityLogsBefore(before: string): Promise<number>;
|
|
30
|
+
setCapabilityOverride(id: string, override: CapabilityOverride | null): Promise<void>;
|
|
31
|
+
setCapabilityTrust(id: string, trust: Partial<CapabilityTrust>): Promise<void>;
|
|
32
|
+
incrementVouchCount(id: string): Promise<void>;
|
|
33
|
+
decrementVouchCount(id: string): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=capability.repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability.repository.d.ts","sourceRoot":"","sources":["../../../../src/storage/repositories/capability.repository.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnI,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACtE,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC5D,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IACnG,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/C,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1G,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACxE,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9E,4BAA4B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAE9E,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;QAC1C,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KACrE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE;QAChD,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;QAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3D,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE5D,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,kBAAkB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtF,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/E,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability.repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/capability.repository.ts"],"names":[],"mappings":""}
|
|
@@ -31,4 +31,5 @@ export type { SystemPromptRepository } from './system-prompt.repository.js';
|
|
|
31
31
|
export type { PackageRepository } from './package.repository.js';
|
|
32
32
|
export type { TemplateListingRepository } from './template-listing.repository.js';
|
|
33
33
|
export type { PackageInstanceRepository } from './package-instance.repository.js';
|
|
34
|
+
export type { CapabilityRepository } from './capability.repository.js';
|
|
34
35
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/repositories/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,YAAY,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAC5F,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACtF,YAAY,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,YAAY,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/repositories/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AACnE,YAAY,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACzE,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,YAAY,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAChF,YAAY,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAC5F,YAAY,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,YAAY,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AACtF,YAAY,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AACpF,YAAY,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,YAAY,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MaintenanceState, PushSubscriptionRecord, TrustedIssuerRecord, RealtimeRoomRecord, SiteChangeLogEntry, ExtensionRecord, EscrowHoldRecord, CortexExtensionRecord } from '../interface.js';
|
|
1
|
+
import type { MaintenanceState, PushSubscriptionRecord, TrustedIssuerRecord, VerificationNonceRecord, RealtimeRoomRecord, SiteChangeLogEntry, ExtensionRecord, EscrowHoldRecord, CortexExtensionRecord } from '../interface.js';
|
|
2
2
|
export interface NodeRepository {
|
|
3
3
|
setNodeKey(publicKey: string, privateKey: string): Promise<void>;
|
|
4
4
|
getNodeKey(): Promise<{
|
|
@@ -18,6 +18,10 @@ export interface NodeRepository {
|
|
|
18
18
|
type?: string;
|
|
19
19
|
}): Promise<TrustedIssuerRecord[]>;
|
|
20
20
|
deleteTrustedIssuer(id: string): Promise<boolean>;
|
|
21
|
+
createVerificationNonce(record: VerificationNonceRecord): Promise<VerificationNonceRecord>;
|
|
22
|
+
getVerificationNonce(state: string): Promise<VerificationNonceRecord | null>;
|
|
23
|
+
deleteVerificationNonce(state: string): Promise<void>;
|
|
24
|
+
cleanExpiredNonces(): Promise<number>;
|
|
21
25
|
createRealtimeRoom(room: RealtimeRoomRecord): Promise<RealtimeRoomRecord>;
|
|
22
26
|
getRealtimeRoom(id: string): Promise<RealtimeRoomRecord | null>;
|
|
23
27
|
listRealtimeRooms(filter?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.repository.d.ts","sourceRoot":"","sources":["../../../../src/storage/repositories/node.repository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.repository.d.ts","sourceRoot":"","sources":["../../../../src/storage/repositories/node.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1110,6 +1110,36 @@
|
|
|
1110
1110
|
font-size: .85rem;
|
|
1111
1111
|
}
|
|
1112
1112
|
|
|
1113
|
+
.published-source-badge {
|
|
1114
|
+
display: inline-block;
|
|
1115
|
+
font-size: .62rem;
|
|
1116
|
+
font-weight: 600;
|
|
1117
|
+
text-transform: uppercase;
|
|
1118
|
+
letter-spacing: .03em;
|
|
1119
|
+
padding: 2px 6px;
|
|
1120
|
+
border-radius: 4px;
|
|
1121
|
+
vertical-align: middle;
|
|
1122
|
+
margin-left: 6px;
|
|
1123
|
+
}
|
|
1124
|
+
|
|
1125
|
+
.published-source-badge.local {
|
|
1126
|
+
background: rgba(52, 211, 153, .12);
|
|
1127
|
+
color: #34d399;
|
|
1128
|
+
border: 1px solid rgba(52, 211, 153, .3);
|
|
1129
|
+
}
|
|
1130
|
+
|
|
1131
|
+
.published-source-badge.server {
|
|
1132
|
+
background: rgba(99, 102, 241, .10);
|
|
1133
|
+
color: #6366f1;
|
|
1134
|
+
border: 1px solid rgba(99, 102, 241, .25);
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1137
|
+
.published-source-badge.both {
|
|
1138
|
+
background: rgba(245, 158, 11, .10);
|
|
1139
|
+
color: #d97706;
|
|
1140
|
+
border: 1px solid rgba(245, 158, 11, .25);
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1113
1143
|
/* ── Cortex Extensions Bar ──────────────────────── */
|
|
1114
1144
|
|
|
1115
1145
|
.cortex-mini-card{background:#FFFFFF;border:1px solid #E5E7EB;border-radius:10px;padding:.75rem 1rem;cursor:pointer;min-width:160px;flex-shrink:0;transition:all .15s}
|
|
@@ -3082,43 +3112,140 @@
|
|
|
3082
3112
|
}
|
|
3083
3113
|
|
|
3084
3114
|
function loadPublishedApps() {
|
|
3115
|
+
var config = loadConfig();
|
|
3116
|
+
var aimeatUrl = config.aimeatUrl ? config.aimeatUrl.replace(/\/+$/, '') : '';
|
|
3117
|
+
var section = document.getElementById('published-section');
|
|
3118
|
+
var grid = document.getElementById('published-grid');
|
|
3119
|
+
var countEl = document.getElementById('published-count');
|
|
3120
|
+
|
|
3121
|
+
// Get current owner name from session (if logged in)
|
|
3122
|
+
var currentOwner = null;
|
|
3123
|
+
try {
|
|
3124
|
+
if (window.AIMEAT && window.AIMEAT.auth && window.AIMEAT.auth.getSession()) {
|
|
3125
|
+
currentOwner = window.AIMEAT.auth.getSession().owner || null;
|
|
3126
|
+
}
|
|
3127
|
+
if (!currentOwner) {
|
|
3128
|
+
var stored = localStorage.getItem('aimeat_session');
|
|
3129
|
+
if (stored) {
|
|
3130
|
+
currentOwner = JSON.parse(stored).owner || null;
|
|
3131
|
+
}
|
|
3132
|
+
}
|
|
3133
|
+
} catch(e) {}
|
|
3134
|
+
|
|
3135
|
+
// Always load local published apps
|
|
3085
3136
|
getAllApps().then(function(apps) {
|
|
3086
|
-
var
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
var
|
|
3137
|
+
var localPublished = apps.filter(function(a) { return a.published; });
|
|
3138
|
+
|
|
3139
|
+
// Build a lookup of local published apps by filename
|
|
3140
|
+
var localByFilename = {};
|
|
3141
|
+
for (var i = 0; i < localPublished.length; i++) {
|
|
3142
|
+
var lp = localPublished[i];
|
|
3143
|
+
if (lp.publishedFilename) {
|
|
3144
|
+
localByFilename[lp.publishedFilename] = lp;
|
|
3145
|
+
}
|
|
3146
|
+
}
|
|
3090
3147
|
|
|
3091
|
-
|
|
3092
|
-
|
|
3148
|
+
// If no aimeatUrl, fall back to local-only display
|
|
3149
|
+
if (!aimeatUrl) {
|
|
3150
|
+
renderPublishedApps(localPublished, [], localByFilename, aimeatUrl, section, grid, countEl);
|
|
3093
3151
|
return;
|
|
3094
3152
|
}
|
|
3095
3153
|
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
|
|
3104
|
-
|
|
3105
|
-
|
|
3106
|
-
|
|
3107
|
-
|
|
3108
|
-
|
|
3109
|
-
|
|
3110
|
-
|
|
3111
|
-
|
|
3112
|
-
|
|
3113
|
-
|
|
3114
|
-
|
|
3115
|
-
|
|
3116
|
-
'</div>';
|
|
3117
|
-
}
|
|
3118
|
-
grid.innerHTML = html;
|
|
3154
|
+
// Fetch server apps
|
|
3155
|
+
fetch(aimeatUrl + '/v1/apps')
|
|
3156
|
+
.then(function(resp) {
|
|
3157
|
+
if (!resp.ok) throw new Error('Server returned ' + resp.status);
|
|
3158
|
+
return resp.json();
|
|
3159
|
+
})
|
|
3160
|
+
.then(function(json) {
|
|
3161
|
+
var serverApps = json.data && json.data.apps ? json.data.apps : [];
|
|
3162
|
+
|
|
3163
|
+
// Filter to current owner's apps if we know who they are
|
|
3164
|
+
if (currentOwner) {
|
|
3165
|
+
serverApps = serverApps.filter(function(a) { return a.owner === currentOwner; });
|
|
3166
|
+
}
|
|
3167
|
+
|
|
3168
|
+
renderPublishedApps(localPublished, serverApps, localByFilename, aimeatUrl, section, grid, countEl);
|
|
3169
|
+
})
|
|
3170
|
+
.catch(function() {
|
|
3171
|
+
// Server fetch failed - fall back to local only
|
|
3172
|
+
renderPublishedApps(localPublished, [], localByFilename, aimeatUrl, section, grid, countEl);
|
|
3173
|
+
});
|
|
3119
3174
|
});
|
|
3120
3175
|
}
|
|
3121
3176
|
|
|
3177
|
+
function renderPublishedApps(localPublished, serverApps, localByFilename, aimeatUrl, section, grid, countEl) {
|
|
3178
|
+
// Merge: build a combined list. Server apps take priority for display data,
|
|
3179
|
+
// but we note which source(s) each app comes from.
|
|
3180
|
+
var merged = [];
|
|
3181
|
+
var seenFilenames = {};
|
|
3182
|
+
|
|
3183
|
+
// Add server apps first
|
|
3184
|
+
for (var s = 0; s < serverApps.length; s++) {
|
|
3185
|
+
var sa = serverApps[s];
|
|
3186
|
+
var filename = sa.filename || '';
|
|
3187
|
+
var localMatch = localByFilename[filename] || null;
|
|
3188
|
+
var source = localMatch ? 'both' : 'server';
|
|
3189
|
+
seenFilenames[filename] = true;
|
|
3190
|
+
merged.push({
|
|
3191
|
+
name: (sa.manifest && sa.manifest.name) ? sa.manifest.name : filename,
|
|
3192
|
+
filename: filename,
|
|
3193
|
+
version: sa.version_number ? 'v' + sa.version_number : '',
|
|
3194
|
+
date: sa.created_at ? new Date(sa.created_at).toLocaleDateString() : '',
|
|
3195
|
+
viewUrl: aimeatUrl + '/v1/apps/' + encodeURIComponent(sa.owner || '') + '/' + encodeURIComponent(filename),
|
|
3196
|
+
source: source,
|
|
3197
|
+
localId: localMatch ? localMatch.id : null
|
|
3198
|
+
});
|
|
3199
|
+
}
|
|
3200
|
+
|
|
3201
|
+
// Add local-only apps (not already seen from server)
|
|
3202
|
+
for (var l = 0; l < localPublished.length; l++) {
|
|
3203
|
+
var lp = localPublished[l];
|
|
3204
|
+
var lpFilename = lp.publishedFilename || '';
|
|
3205
|
+
if (lpFilename && seenFilenames[lpFilename]) continue;
|
|
3206
|
+
var lpUrl = lp.publishedUrl ? (aimeatUrl + lp.publishedUrl) : '';
|
|
3207
|
+
merged.push({
|
|
3208
|
+
name: lp.name || lpFilename || 'Untitled',
|
|
3209
|
+
filename: lpFilename,
|
|
3210
|
+
version: lp.publishedVersionNumber ? 'v' + lp.publishedVersionNumber : '',
|
|
3211
|
+
date: lp.publishedAt ? new Date(lp.publishedAt).toLocaleDateString() : '',
|
|
3212
|
+
viewUrl: lpUrl,
|
|
3213
|
+
source: 'local',
|
|
3214
|
+
localId: lp.id
|
|
3215
|
+
});
|
|
3216
|
+
}
|
|
3217
|
+
|
|
3218
|
+
if (merged.length === 0) {
|
|
3219
|
+
section.style.display = 'none';
|
|
3220
|
+
return;
|
|
3221
|
+
}
|
|
3222
|
+
|
|
3223
|
+
section.style.display = '';
|
|
3224
|
+
countEl.textContent = '(' + merged.length + ')';
|
|
3225
|
+
|
|
3226
|
+
var html = '';
|
|
3227
|
+
for (var i = 0; i < merged.length; i++) {
|
|
3228
|
+
var app = merged[i];
|
|
3229
|
+
var badgeClass = app.source === 'both' ? 'both' : (app.source === 'server' ? 'server' : 'local');
|
|
3230
|
+
var badgeLabel = app.source === 'both' ? 'local + server' : app.source;
|
|
3231
|
+
html +=
|
|
3232
|
+
'<div class="published-card">' +
|
|
3233
|
+
'<div class="published-card-name">' + escapeHtml(app.name) + (app.version ? ' <span style="opacity:.5;font-size:.85em">' + escapeHtml(app.version) + '</span>' : '') +
|
|
3234
|
+
' <span class="published-source-badge ' + badgeClass + '">' + badgeLabel + '</span>' +
|
|
3235
|
+
'</div>' +
|
|
3236
|
+
'<div class="published-card-meta">' +
|
|
3237
|
+
'<span>' + escapeHtml(app.filename) + '</span>' +
|
|
3238
|
+
'<span>' + app.date + '</span>' +
|
|
3239
|
+
'</div>' +
|
|
3240
|
+
'<div class="published-card-actions">' +
|
|
3241
|
+
(app.viewUrl ? '<button onclick="window.open(\'' + escapeHtml(app.viewUrl) + '?mode=inline\', \'_blank\')">👁 View</button>' : '') +
|
|
3242
|
+
(app.localId ? '<button onclick="window._launcher.unpublishApp(\'' + escapeHtml(app.localId) + '\')" class="danger">🗑 Remove</button>' : '') +
|
|
3243
|
+
'</div>' +
|
|
3244
|
+
'</div>';
|
|
3245
|
+
}
|
|
3246
|
+
grid.innerHTML = html;
|
|
3247
|
+
}
|
|
3248
|
+
|
|
3122
3249
|
function unpublishApp(appId) {
|
|
3123
3250
|
if (!confirm('Remove this published app from the server?')) return;
|
|
3124
3251
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aimeat",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "AIME AT — AI Memory Exchange and Action Transfer — reference implementation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -115,6 +115,10 @@
|
|
|
115
115
|
"@modelcontextprotocol/sdk": "^1.27.1",
|
|
116
116
|
"@noble/ed25519": "^3.0.0",
|
|
117
117
|
"@noble/hashes": "^2.0.1",
|
|
118
|
+
"@sd-jwt/core": "^0.19.0",
|
|
119
|
+
"@sd-jwt/decode": "^0.19.0",
|
|
120
|
+
"@sd-jwt/types": "^0.19.0",
|
|
121
|
+
"@sd-jwt/utils": "^0.19.0",
|
|
118
122
|
"ajv": "^8.18.0",
|
|
119
123
|
"ajv-formats": "^3.0.1",
|
|
120
124
|
"archiver": "^7.0.1",
|
|
@@ -128,6 +132,7 @@
|
|
|
128
132
|
"jose": "^6.1.3",
|
|
129
133
|
"minidenticons": "^4.2.1",
|
|
130
134
|
"nodemailer": "^8.0.5",
|
|
135
|
+
"openid-client": "^6.8.4",
|
|
131
136
|
"otpauth": "^9.5.0",
|
|
132
137
|
"prom-client": "^15.1.3",
|
|
133
138
|
"qrcode": "^1.5.4",
|
package/prisma/schema.prisma
CHANGED
|
@@ -687,6 +687,19 @@ model TrustedIssuer {
|
|
|
687
687
|
@@index([url])
|
|
688
688
|
}
|
|
689
689
|
|
|
690
|
+
model VerificationNonce {
|
|
691
|
+
id String @id @map("_id")
|
|
692
|
+
owner String
|
|
693
|
+
type String
|
|
694
|
+
state String @unique
|
|
695
|
+
nonce String
|
|
696
|
+
redirectUri String @default("")
|
|
697
|
+
createdAt DateTime @default(now())
|
|
698
|
+
expiresAt DateTime
|
|
699
|
+
|
|
700
|
+
@@index([expiresAt])
|
|
701
|
+
}
|
|
702
|
+
|
|
690
703
|
model GenesisPeer {
|
|
691
704
|
id String @id @map("_id")
|
|
692
705
|
genesisNodeId String
|
|
@@ -1084,3 +1097,76 @@ model PackageInstance {
|
|
|
1084
1097
|
@@index([owner])
|
|
1085
1098
|
@@index([packageGroupId])
|
|
1086
1099
|
}
|
|
1100
|
+
|
|
1101
|
+
model Capability {
|
|
1102
|
+
id String @id @map("_id")
|
|
1103
|
+
name String
|
|
1104
|
+
summary String @default("")
|
|
1105
|
+
ownerGhii String
|
|
1106
|
+
visibility String @default("private")
|
|
1107
|
+
scope String @default("local")
|
|
1108
|
+
status String @default("draft")
|
|
1109
|
+
rejectionReason String?
|
|
1110
|
+
deprecationMessage String?
|
|
1111
|
+
replacedBy String?
|
|
1112
|
+
sourceType String
|
|
1113
|
+
sourceRef String
|
|
1114
|
+
sourceVersion String @default("")
|
|
1115
|
+
authRequired String @default("registered")
|
|
1116
|
+
callable Boolean @default(false)
|
|
1117
|
+
inputSchema Json?
|
|
1118
|
+
outputSchema Json?
|
|
1119
|
+
exports Json? // CapabilityExport[]
|
|
1120
|
+
usage String @default("")
|
|
1121
|
+
whenToUse String @default("")
|
|
1122
|
+
whenNotToUse String @default("")
|
|
1123
|
+
examples Json @default("[]") // Array<{ description, input, output }>
|
|
1124
|
+
dependencies Json @default("[]") // CapabilityDependency[]
|
|
1125
|
+
schemaHash String @default("")
|
|
1126
|
+
webhookUrl String?
|
|
1127
|
+
cost Json? // { morsels, perUnit? }
|
|
1128
|
+
trustRequired Float?
|
|
1129
|
+
trust Json // CapabilityTrust
|
|
1130
|
+
redactedFields Json @default("[]") // string[]
|
|
1131
|
+
operatorOverride Json? // CapabilityOverride
|
|
1132
|
+
stats Json // CapabilityStats
|
|
1133
|
+
tags Json @default("[]") // string[]
|
|
1134
|
+
createdAt DateTime @default(now())
|
|
1135
|
+
updatedAt DateTime @updatedAt
|
|
1136
|
+
|
|
1137
|
+
logs CapabilityLog[]
|
|
1138
|
+
vouches CapabilityVouch[]
|
|
1139
|
+
|
|
1140
|
+
@@index([ownerGhii])
|
|
1141
|
+
@@index([sourceType, sourceRef])
|
|
1142
|
+
@@index([status])
|
|
1143
|
+
@@index([visibility])
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1146
|
+
model CapabilityLog {
|
|
1147
|
+
id String @id @default(auto()) @map("_id") @db.ObjectId
|
|
1148
|
+
capabilityId String
|
|
1149
|
+
callerGhii String
|
|
1150
|
+
input Json @default("{}")
|
|
1151
|
+
status String
|
|
1152
|
+
durationMs Int @default(0)
|
|
1153
|
+
error String?
|
|
1154
|
+
timestamp DateTime @default(now())
|
|
1155
|
+
|
|
1156
|
+
capability Capability @relation(fields: [capabilityId], references: [id], onDelete: Cascade)
|
|
1157
|
+
|
|
1158
|
+
@@index([capabilityId, timestamp])
|
|
1159
|
+
@@index([capabilityId, status])
|
|
1160
|
+
}
|
|
1161
|
+
|
|
1162
|
+
model CapabilityVouch {
|
|
1163
|
+
id String @id @default(auto()) @map("_id") @db.ObjectId
|
|
1164
|
+
capabilityId String
|
|
1165
|
+
userGhii String
|
|
1166
|
+
comment String?
|
|
1167
|
+
createdAt DateTime @default(now())
|
|
1168
|
+
|
|
1169
|
+
capability Capability @relation(fields: [capabilityId], references: [id], onDelete: Cascade)
|
|
1170
|
+
|
|
1171
|
+
@@unique([capabilityId, userGhii])
|
|
1172
|
+
}
|