@kb-labs/marketplace-app 2.94.0 → 2.98.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/index.js +38 -35
- package/dist/index.js.map +1 -1
- package/dist/manifest.js +3 -1
- package/dist/manifest.js.map +1 -1
- package/dist/manifest.json +27 -0
- package/package.json +14 -11
package/dist/index.js
CHANGED
|
@@ -1,43 +1,46 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { getPlatformRoot, createServiceBootstrap } from '@kb-labs/core-runtime';
|
|
2
|
+
import { makeAssemblyHook } from '@kb-labs/plugin-runtime';
|
|
3
|
+
import { getListenOptions } from '@kb-labs/shared-http';
|
|
4
|
+
import { runDaemon } from '@kb-labs/shared-daemon';
|
|
3
5
|
import { findRepoRoot } from '@kb-labs/core-sys';
|
|
6
|
+
import { readKbConfig } from '@kb-labs/core-config';
|
|
4
7
|
import { createServer } from '@kb-labs/marketplace-api';
|
|
5
8
|
import { MarketplaceService } from '@kb-labs/marketplace-core';
|
|
6
|
-
import { NpmPackageSource } from '@kb-labs/marketplace-npm';
|
|
9
|
+
import { RegistryPackageSource, NpmPackageSource } from '@kb-labs/marketplace-npm';
|
|
7
10
|
|
|
8
11
|
// src/bootstrap.ts
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
12
|
+
async function bootstrap(_cwd = process.cwd()) {
|
|
13
|
+
await runDaemon(
|
|
14
|
+
{
|
|
15
|
+
appId: "marketplace",
|
|
16
|
+
defaultPort: 5070,
|
|
17
|
+
portEnvVar: "KB_MARKETPLACE_PORT",
|
|
18
|
+
// Defaults to 0.0.0.0 for Docker/dev compat. Set KB_MARKETPLACE_HOST=127.0.0.1 to restrict to loopback.
|
|
19
|
+
defaultHost: "0.0.0.0",
|
|
20
|
+
hostEnvVar: "KB_MARKETPLACE_HOST",
|
|
21
|
+
async setup({ platform, logger, port, host }) {
|
|
22
|
+
const repoRoot = await findRepoRoot(process.cwd());
|
|
23
|
+
const platformRoot = getPlatformRoot() ?? repoRoot;
|
|
24
|
+
const kbConfig = await readKbConfig(repoRoot);
|
|
25
|
+
const registryConfig = kbConfig?.data?.marketplace;
|
|
26
|
+
const registryUrl = registryConfig?.registry?.url ?? process.env.KB_REGISTRY_URL;
|
|
27
|
+
const registrySource = registryUrl ? new RegistryPackageSource({ registryUrl, authToken: process.env.KB_REGISTRY_TOKEN }) : void 0;
|
|
28
|
+
const service = new MarketplaceService({
|
|
29
|
+
platformRoot,
|
|
30
|
+
source: new NpmPackageSource(),
|
|
31
|
+
registrySource
|
|
32
|
+
});
|
|
33
|
+
const server = await createServer({ service, port, logger });
|
|
34
|
+
await server.listen(getListenOptions(port, host));
|
|
35
|
+
logger.info(`Marketplace service listening on http://${host}:${port}`);
|
|
36
|
+
logger.info(`OpenAPI docs: http://localhost:${port}/docs`);
|
|
37
|
+
return async () => {
|
|
38
|
+
await server.close();
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
(appId, repoRoot) => createServiceBootstrap({ appId, repoRoot, assemblyHook: makeAssemblyHook() })
|
|
43
|
+
);
|
|
41
44
|
}
|
|
42
45
|
|
|
43
46
|
// src/index.ts
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bootstrap.ts","../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/bootstrap.ts","../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAeA,eAAsB,SAAA,CAAU,IAAA,GAAe,OAAA,CAAQ,GAAA,EAAI,EAAkB;AAC3E,EAAA,MAAM,SAAA;AAAA,IACJ;AAAA,MACE,KAAA,EAAO,aAAA;AAAA,MACP,WAAA,EAAa,IAAA;AAAA,MACb,UAAA,EAAY,qBAAA;AAAA;AAAA,MAEZ,WAAA,EAAa,SAAA;AAAA,MACb,UAAA,EAAY,qBAAA;AAAA,MACZ,MAAM,KAAA,CAAM,EAAE,UAAU,MAAA,EAAQ,IAAA,EAAM,MAAK,EAAG;AAE5C,QAAA,MAAM,QAAA,GAAW,MAAM,YAAA,CAAa,OAAA,CAAQ,KAAK,CAAA;AAIjD,QAAA,MAAM,YAAA,GAAe,iBAAgB,IAAK,QAAA;AAG1C,QAAA,MAAM,QAAA,GAAW,MAAM,YAAA,CAAa,QAAQ,CAAA;AAC5C,QAAA,MAAM,cAAA,GAAkB,UAAU,IAAA,EAA8C,WAAA;AAChF,QAAA,MAAM,WAAA,GAAe,cAAA,EAAgB,QAAA,EAAkD,GAAA,IAClF,QAAQ,GAAA,CAAI,eAAA;AAEjB,QAAA,MAAM,cAAA,GAAiB,WAAA,GACnB,IAAI,qBAAA,CAAsB,EAAE,WAAA,EAAa,SAAA,EAAW,OAAA,CAAQ,GAAA,CAAI,iBAAA,EAAmB,CAAA,GACnF,MAAA;AAEJ,QAAA,MAAM,OAAA,GAAU,IAAI,kBAAA,CAAmB;AAAA,UACrC,YAAA;AAAA,UACA,MAAA,EAAQ,IAAI,gBAAA,EAAiB;AAAA,UAC7B;AAAA,SACD,CAAA;AAED,QAAA,MAAM,SAAS,MAAM,YAAA,CAAa,EAAE,OAAA,EAAS,IAAA,EAAM,QAAQ,CAAA;AAC3D,QAAA,MAAM,MAAA,CAAO,MAAA,CAAO,gBAAA,CAAiB,IAAA,EAAM,IAAI,CAAC,CAAA;AAEhD,QAAA,MAAA,CAAO,IAAA,CAAK,CAAA,wCAAA,EAA2C,IAAI,CAAA,CAAA,EAAI,IAAI,CAAA,CAAE,CAAA;AACrE,QAAA,MAAA,CAAO,IAAA,CAAK,CAAA,+BAAA,EAAkC,IAAI,CAAA,KAAA,CAAO,CAAA;AAEzD,QAAA,OAAO,YAAY;AACjB,UAAA,MAAM,OAAO,KAAA,EAAM;AAAA,QACrB,CAAA;AAAA,MACF;AAAA,KACF;AAAA,IACA,CAAC,KAAA,EAAO,QAAA,KACN,sBAAA,CAAuB,EAAE,OAAO,QAAA,EAAU,YAAA,EAAc,gBAAA,EAAiB,EAAG;AAAA,GAChF;AACF;;;ACvDA,SAAA,CAAU,QAAQ,GAAA,EAAK,CAAA,CAAE,KAAA,CAAM,CAAC,KAAA,KAAU;AACxC,EAAA,OAAA,CAAQ,KAAA,CAAM,wCAAwC,KAAK,CAAA;AAC3D,EAAA,OAAA,CAAQ,KAAK,CAAC,CAAA;AAChB,CAAC,CAAA","file":"index.js","sourcesContent":["/**\n * @module @kb-labs/marketplace-app/bootstrap\n * Server bootstrap: runDaemon → platformBootstrap → MarketplaceService → Fastify server.\n */\n\nimport { createServiceBootstrap, getPlatformRoot } from '@kb-labs/core-runtime';\nimport { makeAssemblyHook } from '@kb-labs/plugin-runtime';\nimport { getListenOptions } from '@kb-labs/shared-http';\nimport { runDaemon } from '@kb-labs/shared-daemon';\nimport { findRepoRoot } from '@kb-labs/core-sys';\nimport { readKbConfig } from '@kb-labs/core-config';\nimport { createServer } from '@kb-labs/marketplace-api';\nimport { MarketplaceService } from '@kb-labs/marketplace-core';\nimport { NpmPackageSource, RegistryPackageSource } from '@kb-labs/marketplace-npm';\n\nexport async function bootstrap(_cwd: string = process.cwd()): Promise<void> {\n await runDaemon(\n {\n appId: 'marketplace',\n defaultPort: 5070,\n portEnvVar: 'KB_MARKETPLACE_PORT',\n // Defaults to 0.0.0.0 for Docker/dev compat. Set KB_MARKETPLACE_HOST=127.0.0.1 to restrict to loopback.\n defaultHost: '0.0.0.0',\n hostEnvVar: 'KB_MARKETPLACE_HOST',\n async setup({ platform, logger, port, host }) {\n // Resolve repo root for config reading (findRepoRoot is fast/cached by FS).\n const repoRoot = await findRepoRoot(process.cwd());\n\n // Use getPlatformRoot() — in installed mode this is the platform installation\n // dir (e.g. /kb-platform), not the project CWD where the daemon was started.\n const platformRoot = getPlatformRoot() ?? repoRoot;\n\n // Read marketplace.registry config to wire up RegistryPackageSource for kb: specs.\n const kbConfig = await readKbConfig(repoRoot);\n const registryConfig = (kbConfig?.data as Record<string, unknown> | undefined)?.marketplace as Record<string, unknown> | undefined;\n const registryUrl = (registryConfig?.registry as Record<string, unknown> | undefined)?.url as string | undefined\n ?? process.env.KB_REGISTRY_URL;\n\n const registrySource = registryUrl\n ? new RegistryPackageSource({ registryUrl, authToken: process.env.KB_REGISTRY_TOKEN })\n : undefined;\n\n const service = new MarketplaceService({\n platformRoot,\n source: new NpmPackageSource(),\n registrySource,\n });\n\n const server = await createServer({ service, port, logger });\n await server.listen(getListenOptions(port, host));\n\n logger.info(`Marketplace service listening on http://${host}:${port}`);\n logger.info(`OpenAPI docs: http://localhost:${port}/docs`);\n\n return async () => {\n await server.close();\n };\n },\n },\n (appId, repoRoot) =>\n createServiceBootstrap({ appId, repoRoot, assemblyHook: makeAssemblyHook() }),\n );\n}\n","/**\n * @module @kb-labs/marketplace-app\n * Marketplace service entry point.\n */\n\nimport { bootstrap } from './bootstrap.js';\n\nbootstrap(process.cwd()).catch((error) => {\n console.error('Failed to start marketplace service:', error);\n process.exit(1);\n});\n"]}
|
package/dist/manifest.js
CHANGED
|
@@ -8,10 +8,12 @@ var manifest = {
|
|
|
8
8
|
runtime: {
|
|
9
9
|
entry: "dist/index.js",
|
|
10
10
|
port: 5070,
|
|
11
|
-
healthCheck: "/health"
|
|
11
|
+
healthCheck: "/health",
|
|
12
|
+
socket: "/tmp/kb-${KB_SOCKET_HASH}/marketplace.sock"
|
|
12
13
|
},
|
|
13
14
|
env: {
|
|
14
15
|
PORT: { description: "HTTP port", default: "5070" },
|
|
16
|
+
KB_MARKETPLACE_HOST: { description: "Bind host", default: "127.0.0.1" },
|
|
15
17
|
NODE_ENV: { description: "Environment mode", default: "development" }
|
|
16
18
|
}
|
|
17
19
|
};
|
package/dist/manifest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":";AAEO,IAAM,QAAA,GAA4B;AAAA,EACvC,MAAA,EAAQ,cAAA;AAAA,EACR,EAAA,EAAI,aAAA;AAAA,EACJ,IAAA,EAAM,aAAA;AAAA,EACN,OAAA,EAAS,OAAA;AAAA,EACT,WAAA,EAAa,6DAAA;AAAA,EACb,OAAA,EAAS;AAAA,IACP,KAAA,EAAO,eAAA;AAAA,IACP,IAAA,EAAM,IAAA;AAAA,IACN,WAAA,EAAa;AAAA,
|
|
1
|
+
{"version":3,"sources":["../src/manifest.ts"],"names":[],"mappings":";AAEO,IAAM,QAAA,GAA4B;AAAA,EACvC,MAAA,EAAQ,cAAA;AAAA,EACR,EAAA,EAAI,aAAA;AAAA,EACJ,IAAA,EAAM,aAAA;AAAA,EACN,OAAA,EAAS,OAAA;AAAA,EACT,WAAA,EAAa,6DAAA;AAAA,EACb,OAAA,EAAS;AAAA,IACP,KAAA,EAAO,eAAA;AAAA,IACP,IAAA,EAAM,IAAA;AAAA,IACN,WAAA,EAAa,SAAA;AAAA,IACb,MAAA,EAAQ;AAAA,GACV;AAAA,EACA,GAAA,EAAK;AAAA,IACH,IAAA,EAAM,EAAE,WAAA,EAAa,WAAA,EAAa,SAAS,MAAA,EAAO;AAAA,IAClD,mBAAA,EAAqB,EAAE,WAAA,EAAa,WAAA,EAAa,SAAS,WAAA,EAAY;AAAA,IACtE,QAAA,EAAU,EAAE,WAAA,EAAa,kBAAA,EAAoB,SAAS,aAAA;AAAc;AAExE;AAEA,IAAO,gBAAA,GAAQ","file":"manifest.js","sourcesContent":["import type { ServiceManifest } from '@kb-labs/plugin-contracts';\n\nexport const manifest: ServiceManifest = {\n schema: 'kb.service/1',\n id: 'marketplace',\n name: 'Marketplace',\n version: '1.0.0',\n description: 'Unified entity marketplace — install, manage, discover',\n runtime: {\n entry: 'dist/index.js',\n port: 5070,\n healthCheck: '/health',\n socket: '/tmp/kb-${KB_SOCKET_HASH}/marketplace.sock',\n },\n env: {\n PORT: { description: 'HTTP port', default: '5070' },\n KB_MARKETPLACE_HOST: { description: 'Bind host', default: '127.0.0.1' },\n NODE_ENV: { description: 'Environment mode', default: 'development' },\n },\n};\n\nexport default manifest;\n"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "kb.service/1",
|
|
3
|
+
"id": "marketplace",
|
|
4
|
+
"name": "Marketplace",
|
|
5
|
+
"version": "1.0.0",
|
|
6
|
+
"description": "Unified entity marketplace — install, manage, discover",
|
|
7
|
+
"runtime": {
|
|
8
|
+
"entry": "dist/index.js",
|
|
9
|
+
"port": 5070,
|
|
10
|
+
"healthCheck": "/health",
|
|
11
|
+
"socket": "/tmp/kb-${KB_SOCKET_HASH}/marketplace.sock"
|
|
12
|
+
},
|
|
13
|
+
"env": {
|
|
14
|
+
"PORT": {
|
|
15
|
+
"description": "HTTP port",
|
|
16
|
+
"default": "5070"
|
|
17
|
+
},
|
|
18
|
+
"KB_MARKETPLACE_HOST": {
|
|
19
|
+
"description": "Bind host",
|
|
20
|
+
"default": "127.0.0.1"
|
|
21
|
+
},
|
|
22
|
+
"NODE_ENV": {
|
|
23
|
+
"description": "Environment mode",
|
|
24
|
+
"default": "development"
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kb-labs/marketplace-app",
|
|
3
3
|
"description": "KB Labs Marketplace service — Fastify entrypoint",
|
|
4
|
-
"version": "2.
|
|
4
|
+
"version": "2.98.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"files": [
|
|
@@ -9,22 +9,25 @@
|
|
|
9
9
|
],
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"fastify": "^5.8.5",
|
|
12
|
-
"@kb-labs/core-
|
|
13
|
-
"@kb-labs/core-
|
|
14
|
-
"@kb-labs/
|
|
15
|
-
"@kb-labs/
|
|
16
|
-
"@kb-labs/plugin-
|
|
17
|
-
"@kb-labs/marketplace-
|
|
18
|
-
"@kb-labs/shared-
|
|
19
|
-
"@kb-labs/marketplace-
|
|
12
|
+
"@kb-labs/core-config": "2.98.0",
|
|
13
|
+
"@kb-labs/core-sys": "2.98.0",
|
|
14
|
+
"@kb-labs/core-runtime": "2.98.0",
|
|
15
|
+
"@kb-labs/marketplace-api": "2.98.0",
|
|
16
|
+
"@kb-labs/plugin-runtime": "2.98.0",
|
|
17
|
+
"@kb-labs/marketplace-core": "2.98.0",
|
|
18
|
+
"@kb-labs/shared-daemon": "2.98.0",
|
|
19
|
+
"@kb-labs/marketplace-npm": "2.98.0",
|
|
20
|
+
"@kb-labs/shared-http": "2.98.0",
|
|
21
|
+
"@kb-labs/plugin-contracts": "2.98.0",
|
|
22
|
+
"@kb-labs/core-platform": "2.98.0"
|
|
20
23
|
},
|
|
21
24
|
"devDependencies": {
|
|
22
25
|
"@types/node": "^24.3.3",
|
|
23
26
|
"tsup": "^8.5.0",
|
|
24
27
|
"tsx": "^4.20.5",
|
|
25
28
|
"typescript": "^5",
|
|
26
|
-
"vitest": "^3.2.
|
|
27
|
-
"@kb-labs/devkit": "2.
|
|
29
|
+
"vitest": "^3.2.6",
|
|
30
|
+
"@kb-labs/devkit": "2.98.0"
|
|
28
31
|
},
|
|
29
32
|
"engines": {
|
|
30
33
|
"node": ">=20.0.0",
|