@forge/manifest 10.7.0-next.0-experimental-1a0bb6a → 10.7.0-next.2
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/CHANGELOG.md +13 -2
- package/out/processor/full-validation-processor.js +2 -2
- package/out/schema/basic-manifest-schema.json +3 -13
- package/out/schema/basic-manifest.d.ts +3 -8
- package/out/schema/manifest-schema.json +4 -14
- package/out/schema/manifest.d.ts +4 -9
- package/out/scopes/shipyard-scopes.json +4 -0
- package/out/text/errors.d.ts +1 -1
- package/out/text/errors.js +1 -1
- package/out/types/module-types.d.ts +1 -1
- package/out/types/module-types.d.ts.map +1 -1
- package/out/types/module-types.js +1 -1
- package/out/validators/{llms-validator.d.ts → llm-validator.d.ts} +3 -3
- package/out/validators/llm-validator.d.ts.map +1 -0
- package/out/validators/{llms-validator.js → llm-validator.js} +16 -16
- package/package.json +1 -1
- package/out/validators/llms-validator.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
1
|
# @forge/manifest
|
|
2
2
|
|
|
3
|
-
## 10.7.0-next.
|
|
3
|
+
## 10.7.0-next.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4afc4fb: Update manifest definitions
|
|
8
|
+
|
|
9
|
+
## 10.7.0-next.1
|
|
4
10
|
|
|
5
11
|
### Minor Changes
|
|
6
12
|
|
|
7
|
-
-
|
|
13
|
+
- 96d7a67: rename `app.contexts` to `app.compatibility`
|
|
14
|
+
- e65918b: Rename 'core:llms' to 'core:llm'
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- 873a240: Update manifest definitions
|
|
8
19
|
|
|
9
20
|
## 10.7.0-next.0
|
|
10
21
|
|
|
@@ -14,7 +14,7 @@ const remotes_is_configurable_validator_1 = require("../validators/remotes-is-co
|
|
|
14
14
|
const remote_regions_validator_1 = require("../validators/remote-regions-validator");
|
|
15
15
|
const remote_auth_scopes_validator_1 = require("../validators/remote-auth-scopes-validator");
|
|
16
16
|
const runtime_version_validator_1 = require("../validators/runtime-version-validator");
|
|
17
|
-
const
|
|
17
|
+
const llm_validator_1 = require("../validators/llm-validator");
|
|
18
18
|
class FullValidationProcessor extends abstract_validation_processor_1.AbstractValidationProcessor {
|
|
19
19
|
constructor(lintOptions) {
|
|
20
20
|
super([
|
|
@@ -40,7 +40,7 @@ class FullValidationProcessor extends abstract_validation_processor_1.AbstractVa
|
|
|
40
40
|
new remote_regions_validator_1.RemoteRegionsValidator(),
|
|
41
41
|
new remote_auth_scopes_validator_1.RemoteAuthScopesValidator(),
|
|
42
42
|
new runtime_version_validator_1.RuntimeVersionValidator(lintOptions),
|
|
43
|
-
new
|
|
43
|
+
new llm_validator_1.LLMValidator()
|
|
44
44
|
]);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -50,20 +50,10 @@
|
|
|
50
50
|
"name"
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
|
-
"
|
|
54
|
-
"type": "string",
|
|
55
|
-
"enum": [
|
|
56
|
-
"confluence",
|
|
57
|
-
"jira",
|
|
58
|
-
"compass"
|
|
59
|
-
],
|
|
60
|
-
"title": "requiredProduct",
|
|
61
|
-
"description": "This property is deprecated."
|
|
62
|
-
},
|
|
63
|
-
"contexts": {
|
|
53
|
+
"compatibility": {
|
|
64
54
|
"type": "object",
|
|
65
|
-
"title": "
|
|
66
|
-
"description": "The
|
|
55
|
+
"title": "compatibility",
|
|
56
|
+
"description": "The app compatibility configuration. If not set, app is not a cross-context app.",
|
|
67
57
|
"oneOf": [
|
|
68
58
|
{
|
|
69
59
|
"required": [
|
|
@@ -26,13 +26,9 @@ export type Architecture = 'x86_64' | 'arm64';
|
|
|
26
26
|
*/
|
|
27
27
|
export type MemoryMB = number;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* The app compatibility configuration. If not set, app is not a cross-context app.
|
|
30
30
|
*/
|
|
31
|
-
export type
|
|
32
|
-
/**
|
|
33
|
-
* The required context for cross-context functionality. If not set, app is not a cross-context app.
|
|
34
|
-
*/
|
|
35
|
-
export type Contexts =
|
|
31
|
+
export type Compatibility =
|
|
36
32
|
| {
|
|
37
33
|
confluence: {
|
|
38
34
|
required: true;
|
|
@@ -99,8 +95,7 @@ export interface App {
|
|
|
99
95
|
description?: Description;
|
|
100
96
|
id: Id;
|
|
101
97
|
runtime: Runtime;
|
|
102
|
-
|
|
103
|
-
contexts?: Contexts;
|
|
98
|
+
compatibility?: Compatibility;
|
|
104
99
|
access?: Access;
|
|
105
100
|
licensing?: Licensing;
|
|
106
101
|
features?: Features;
|
|
@@ -50,20 +50,10 @@
|
|
|
50
50
|
"name"
|
|
51
51
|
]
|
|
52
52
|
},
|
|
53
|
-
"
|
|
54
|
-
"type": "string",
|
|
55
|
-
"enum": [
|
|
56
|
-
"confluence",
|
|
57
|
-
"jira",
|
|
58
|
-
"compass"
|
|
59
|
-
],
|
|
60
|
-
"title": "requiredProduct",
|
|
61
|
-
"description": "This property is deprecated."
|
|
62
|
-
},
|
|
63
|
-
"contexts": {
|
|
53
|
+
"compatibility": {
|
|
64
54
|
"type": "object",
|
|
65
|
-
"title": "
|
|
66
|
-
"description": "The
|
|
55
|
+
"title": "compatibility",
|
|
56
|
+
"description": "The app compatibility configuration. If not set, app is not a cross-context app.",
|
|
67
57
|
"oneOf": [
|
|
68
58
|
{
|
|
69
59
|
"required": [
|
|
@@ -1811,7 +1801,7 @@
|
|
|
1811
1801
|
},
|
|
1812
1802
|
"minItems": 1
|
|
1813
1803
|
},
|
|
1814
|
-
"
|
|
1804
|
+
"llm": {
|
|
1815
1805
|
"type": "array",
|
|
1816
1806
|
"items": {
|
|
1817
1807
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
package/out/schema/manifest.d.ts
CHANGED
|
@@ -26,13 +26,9 @@ export type Architecture = 'x86_64' | 'arm64';
|
|
|
26
26
|
*/
|
|
27
27
|
export type MemoryMB = number;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* The app compatibility configuration. If not set, app is not a cross-context app.
|
|
30
30
|
*/
|
|
31
|
-
export type
|
|
32
|
-
/**
|
|
33
|
-
* The required context for cross-context functionality. If not set, app is not a cross-context app.
|
|
34
|
-
*/
|
|
35
|
-
export type Contexts =
|
|
31
|
+
export type Compatibility =
|
|
36
32
|
| {
|
|
37
33
|
confluence: {
|
|
38
34
|
required: true;
|
|
@@ -840,8 +836,7 @@ export interface App {
|
|
|
840
836
|
description?: Description;
|
|
841
837
|
id: Id;
|
|
842
838
|
runtime: Runtime;
|
|
843
|
-
|
|
844
|
-
contexts?: Contexts;
|
|
839
|
+
compatibility?: Compatibility;
|
|
845
840
|
access?: Access;
|
|
846
841
|
licensing?: Licensing;
|
|
847
842
|
features?: Features;
|
|
@@ -12085,7 +12080,7 @@ export interface Modules {
|
|
|
12085
12080
|
key: ModuleKeySchema;
|
|
12086
12081
|
}[]
|
|
12087
12082
|
];
|
|
12088
|
-
|
|
12083
|
+
llm?: [
|
|
12089
12084
|
{
|
|
12090
12085
|
/**
|
|
12091
12086
|
* The family of the LLM model to use
|
|
@@ -368,7 +368,9 @@
|
|
|
368
368
|
"space-admin:connect-confluence",
|
|
369
369
|
"storage:app",
|
|
370
370
|
"validate:jql:jira",
|
|
371
|
+
"view:membership-temp:teams",
|
|
371
372
|
"view:membership:teams",
|
|
373
|
+
"view:team-temp:teams",
|
|
372
374
|
"view:team:teams",
|
|
373
375
|
"write:airtrack-object:jira",
|
|
374
376
|
"write:app-data:confluence",
|
|
@@ -465,6 +467,7 @@
|
|
|
465
467
|
"write:issue.watcher:jira",
|
|
466
468
|
"write:jira-work",
|
|
467
469
|
"write:label:confluence",
|
|
470
|
+
"write:membership-temp:teams",
|
|
468
471
|
"write:membership:teams",
|
|
469
472
|
"write:metric:compass",
|
|
470
473
|
"write:notes:customer-notes",
|
|
@@ -532,6 +535,7 @@
|
|
|
532
535
|
"write:sprint:jira-software",
|
|
533
536
|
"write:storage:brie",
|
|
534
537
|
"write:task:confluence",
|
|
538
|
+
"write:team-temp:teams",
|
|
535
539
|
"write:team:teams",
|
|
536
540
|
"write:template:confluence",
|
|
537
541
|
"write:user-configuration:jira",
|
package/out/text/errors.d.ts
CHANGED
|
@@ -140,7 +140,7 @@ export declare const errors: {
|
|
|
140
140
|
tooManyAutomationActions: (limit: number) => string;
|
|
141
141
|
undefinedAutomationActionReference: (module: string, moduleKey: string) => string;
|
|
142
142
|
};
|
|
143
|
-
|
|
143
|
+
llm: {
|
|
144
144
|
tooManyModelsDeclared: (numberOfModels: number, limit: number) => string;
|
|
145
145
|
duplicateModel: (modelName: string) => string;
|
|
146
146
|
};
|
package/out/text/errors.js
CHANGED
|
@@ -152,7 +152,7 @@ exports.errors = {
|
|
|
152
152
|
tooManyAutomationActions: (limit) => `App is allowed to define max ${limit} actions within automation:actionProvider modules`,
|
|
153
153
|
undefinedAutomationActionReference: (module, moduleKey) => `${module} references undefined action module with key '${moduleKey}'.`
|
|
154
154
|
},
|
|
155
|
-
|
|
155
|
+
llm: {
|
|
156
156
|
tooManyModelsDeclared: (numberOfModels, limit) => `Found ${numberOfModels} LLM models. Maximum ${limit} are allowed.`,
|
|
157
157
|
duplicateModel: (modelName) => `Found duplicate llm model name '${modelName}'.`
|
|
158
158
|
},
|
|
@@ -11,7 +11,7 @@ export declare enum AllModuleTypes {
|
|
|
11
11
|
CoreMigration = "core:migration",
|
|
12
12
|
CoreRemote = "core:remote",
|
|
13
13
|
CoreSql = "core:sql",
|
|
14
|
-
|
|
14
|
+
CoreLlm = "core:llm",
|
|
15
15
|
XenMacro = "xen:macro",
|
|
16
16
|
DataResidencyMigration = "migration:dataResidency",
|
|
17
17
|
DashboardsWidget = "dashboards:widget",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,WAAW,iBAAiB;IAC5B,cAAc,oBAAoB;IAClC,YAAY,kBAAkB;IAC9B,SAAS,eAAe;IACxB,YAAY,kBAAkB;IAC9B,oBAAoB,0BAA0B;IAC9C,YAAY,kBAAkB;IAC9B,aAAa,mBAAmB;IAChC,UAAU,gBAAgB;IAC1B,OAAO,aAAa;IACpB,
|
|
1
|
+
{"version":3,"file":"module-types.d.ts","sourceRoot":"","sources":["../../src/types/module-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,7 @@ var AllModuleTypes;
|
|
|
15
15
|
AllModuleTypes["CoreMigration"] = "core:migration";
|
|
16
16
|
AllModuleTypes["CoreRemote"] = "core:remote";
|
|
17
17
|
AllModuleTypes["CoreSql"] = "core:sql";
|
|
18
|
-
AllModuleTypes["
|
|
18
|
+
AllModuleTypes["CoreLlm"] = "core:llm";
|
|
19
19
|
AllModuleTypes["XenMacro"] = "xen:macro";
|
|
20
20
|
AllModuleTypes["DataResidencyMigration"] = "migration:dataResidency";
|
|
21
21
|
AllModuleTypes["DashboardsWidget"] = "dashboards:widget";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { ValidatorInterface } from './validator-interface';
|
|
2
2
|
import { ManifestObject, ManifestValidationResult } from '../types';
|
|
3
3
|
import { ManifestSchema } from '../schema/manifest';
|
|
4
|
-
export declare class
|
|
4
|
+
export declare class LLMValidator implements ValidatorInterface<ManifestObject<ManifestSchema> | undefined, ManifestSchema> {
|
|
5
5
|
validate(manifest: ManifestObject<ManifestSchema> | undefined): Promise<ManifestValidationResult<ManifestSchema>>;
|
|
6
|
-
private
|
|
6
|
+
private validateLLMModules;
|
|
7
7
|
private validateNumberOfModules;
|
|
8
8
|
private validateModelUniqueness;
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=
|
|
10
|
+
//# sourceMappingURL=llm-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"llm-validator.d.ts","sourceRoot":"","sources":["../../src/validators/llm-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMpD,qBAAa,YAAa,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAC3G,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAUpD,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,uBAAuB;CAsBhC"}
|
|
@@ -1,50 +1,50 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.LLMValidator = void 0;
|
|
4
4
|
const text_1 = require("../text");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const MAXIMUM_NUMBER_OF_LLM_MODELS = 1;
|
|
7
|
-
class
|
|
7
|
+
class LLMValidator {
|
|
8
8
|
async validate(manifest) {
|
|
9
9
|
const validationErrors = [];
|
|
10
|
-
validationErrors.push(...this.
|
|
10
|
+
validationErrors.push(...this.validateLLMModules(manifest));
|
|
11
11
|
return {
|
|
12
12
|
success: validationErrors.length === 0,
|
|
13
13
|
manifestObject: manifest,
|
|
14
14
|
...(validationErrors.length ? { errors: validationErrors } : {})
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
|
|
18
|
-
if (manifest?.typedContent?.modules?.
|
|
19
|
-
const
|
|
17
|
+
validateLLMModules(manifest) {
|
|
18
|
+
if (manifest?.typedContent?.modules?.llm && Array.isArray(manifest?.typedContent?.modules?.llm)) {
|
|
19
|
+
const llm = manifest.typedContent.modules.llm;
|
|
20
20
|
const yamlContentByLine = manifest.yamlContentByLine;
|
|
21
21
|
return [
|
|
22
|
-
...this.validateModelUniqueness(
|
|
23
|
-
...this.validateNumberOfModules(
|
|
22
|
+
...this.validateModelUniqueness(llm, yamlContentByLine),
|
|
23
|
+
...this.validateNumberOfModules(llm, yamlContentByLine)
|
|
24
24
|
];
|
|
25
25
|
}
|
|
26
26
|
return [];
|
|
27
27
|
}
|
|
28
|
-
validateNumberOfModules(
|
|
29
|
-
if (
|
|
28
|
+
validateNumberOfModules(llmModules, yamlContentByLine) {
|
|
29
|
+
if (llmModules.length > MAXIMUM_NUMBER_OF_LLM_MODELS) {
|
|
30
30
|
return [
|
|
31
31
|
{
|
|
32
|
-
message: text_1.errors.modules.
|
|
32
|
+
message: text_1.errors.modules.llm.tooManyModelsDeclared(llmModules.length, MAXIMUM_NUMBER_OF_LLM_MODELS),
|
|
33
33
|
reference: text_1.References.Modules,
|
|
34
34
|
level: 'error',
|
|
35
|
-
...(0, utils_1.findPosition)('
|
|
35
|
+
...(0, utils_1.findPosition)('llm', yamlContentByLine)
|
|
36
36
|
}
|
|
37
37
|
];
|
|
38
38
|
}
|
|
39
39
|
return [];
|
|
40
40
|
}
|
|
41
|
-
validateModelUniqueness(
|
|
42
|
-
const modelsDeclared =
|
|
41
|
+
validateModelUniqueness(llmModules, yamlContentByLine) {
|
|
42
|
+
const modelsDeclared = llmModules.map(({ model }) => model);
|
|
43
43
|
const repeatedModelDeclarations = new Set(modelsDeclared.filter((model, currentIndex) => modelsDeclared.indexOf(model) !== currentIndex));
|
|
44
44
|
if (repeatedModelDeclarations.size) {
|
|
45
45
|
return Array.from(repeatedModelDeclarations).reduce((acc, curr) => {
|
|
46
46
|
acc.push({
|
|
47
|
-
message: text_1.errors.modules.
|
|
47
|
+
message: text_1.errors.modules.llm.duplicateModel(curr),
|
|
48
48
|
reference: text_1.References.Modules,
|
|
49
49
|
level: 'error',
|
|
50
50
|
...(0, utils_1.findPosition)(curr, yamlContentByLine)
|
|
@@ -55,4 +55,4 @@ class LlmsValidator {
|
|
|
55
55
|
return [];
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
exports.
|
|
58
|
+
exports.LLMValidator = LLMValidator;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"llms-validator.d.ts","sourceRoot":"","sources":["../../src/validators/llms-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAmB,MAAM,UAAU,CAAC;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMpD,qBAAa,aAAc,YAAW,kBAAkB,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC;IAC5G,QAAQ,CACZ,QAAQ,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG,SAAS,GACnD,OAAO,CAAC,wBAAwB,CAAC,cAAc,CAAC,CAAC;IAUpD,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,uBAAuB;IAkB/B,OAAO,CAAC,uBAAuB;CAsBhC"}
|