@copado/agentia-cli 0.92.0-alpha.0 → 0.93.0-alpha.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/README.md +213 -200
- package/dist/commands/cicd/work/commit.js +2 -2
- package/dist/commands/cicd/work/commit.js.map +1 -1
- package/dist/commands/cicd/work/done.d.ts +4 -0
- package/dist/commands/cicd/work/done.js +11 -124
- package/dist/commands/cicd/work/done.js.map +1 -1
- package/dist/commands/cicd/work/push.js +4 -3
- package/dist/commands/cicd/work/push.js.map +1 -1
- package/dist/commands/cicd/work/submit.d.ts +4 -3
- package/dist/commands/cicd/work/submit.js +13 -4
- package/dist/commands/cicd/work/submit.js.map +1 -1
- package/dist/lib/defaults-store.js +9 -0
- package/dist/lib/defaults-store.js.map +1 -1
- package/dist/lib/mcp/tools.d.ts +14 -0
- package/dist/lib/mcp/work-tools.d.ts +15 -0
- package/dist/lib/mcp/work-tools.js +50 -34
- package/dist/lib/mcp/work-tools.js.map +1 -1
- package/dist/lib/nested-metadata-changes.d.ts +41 -3
- package/dist/lib/nested-metadata-changes.js +110 -16
- package/dist/lib/nested-metadata-changes.js.map +1 -1
- package/dist/lib/nested-metadata-registry.d.ts +13 -1
- package/dist/lib/nested-metadata-registry.js +87 -28
- package/dist/lib/nested-metadata-registry.js.map +1 -1
- package/dist/lib/setup-templates.d.ts +1 -1
- package/dist/lib/setup-templates.js +9 -19
- package/dist/lib/setup-templates.js.map +1 -1
- package/dist/lib/work-done.d.ts +22 -0
- package/dist/lib/work-done.js +136 -0
- package/dist/lib/work-done.js.map +1 -0
- package/dist/lib/work-local-commit.js +18 -2
- package/dist/lib/work-local-commit.js.map +1 -1
- package/dist/lib/work-push.d.ts +18 -5
- package/dist/lib/work-push.js +101 -30
- package/dist/lib/work-push.js.map +1 -1
- package/dist/lib/work-types.d.ts +22 -23
- package/dist/lib/work-types.js.map +1 -1
- package/oclif.manifest.json +1422 -1413
- package/package.json +1 -1
- package/templates/skills/agentia-cicd/SKILL.md +1 -1
- package/templates/skills/agentia-cicd/references/promotions.md +1 -1
- package/templates/skills/agentia-cicd/references/work.md +7 -8
|
@@ -240,7 +240,42 @@ async function workPush(args = {}) {
|
|
|
240
240
|
skipNestedMetadataDetection: args.skipNestedMetadataDetection,
|
|
241
241
|
});
|
|
242
242
|
}
|
|
243
|
+
async function promoteWorkItemDone(args = {}) {
|
|
244
|
+
const { branch, workItem } = await requireFeatureBranchWorkItem();
|
|
245
|
+
await requireCleanTrackedTree('work submit');
|
|
246
|
+
let pushResult;
|
|
247
|
+
const { needsPush } = await resolveWorkPushNeed(branch);
|
|
248
|
+
if (needsPush) {
|
|
249
|
+
const pushContext = await resolveWorkPushContext();
|
|
250
|
+
pushResult = await performWorkPush({
|
|
251
|
+
...pushContext,
|
|
252
|
+
hooks: silentWorkPushHooks,
|
|
253
|
+
skipNestedMetadataDetection: args.skipNestedMetadataDetection,
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
const doneBody = { workItem };
|
|
257
|
+
const done = await CicdGateway.call({
|
|
258
|
+
body: doneBody,
|
|
259
|
+
endpoint: workDoneEndpoint(),
|
|
260
|
+
headers: {
|
|
261
|
+
'Content-Type': 'application/json',
|
|
262
|
+
},
|
|
263
|
+
method: 'POST',
|
|
264
|
+
});
|
|
265
|
+
return {
|
|
266
|
+
branch,
|
|
267
|
+
done,
|
|
268
|
+
push: pushResult,
|
|
269
|
+
pushed: needsPush,
|
|
270
|
+
workItem,
|
|
271
|
+
};
|
|
272
|
+
}
|
|
243
273
|
async function workSubmit(args = {}) {
|
|
274
|
+
if (args.done === true) {
|
|
275
|
+
return promoteWorkItemDone({
|
|
276
|
+
skipNestedMetadataDetection: args.skipNestedMetadataDetection,
|
|
277
|
+
});
|
|
278
|
+
}
|
|
244
279
|
const { branch, workItem } = await requireFeatureBranchWorkItem();
|
|
245
280
|
await requireCleanTrackedTree('work submit');
|
|
246
281
|
let qualityGates;
|
|
@@ -461,35 +496,12 @@ async function workPromote(args = {}) {
|
|
|
461
496
|
});
|
|
462
497
|
return { ...result, workItemId };
|
|
463
498
|
}
|
|
499
|
+
/** Compatibility alias of agentia_work_submit with done=true. Prefer agentia_work_submit({ done: true }). */
|
|
464
500
|
async function workDone(args = {}) {
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
const { needsPush } = await resolveWorkPushNeed(branch);
|
|
469
|
-
if (needsPush) {
|
|
470
|
-
const pushContext = await resolveWorkPushContext();
|
|
471
|
-
pushResult = await performWorkPush({
|
|
472
|
-
...pushContext,
|
|
473
|
-
hooks: silentWorkPushHooks,
|
|
474
|
-
skipNestedMetadataDetection: args.skipNestedMetadataDetection,
|
|
475
|
-
});
|
|
476
|
-
}
|
|
477
|
-
const doneBody = { workItem };
|
|
478
|
-
const done = await CicdGateway.call({
|
|
479
|
-
body: doneBody,
|
|
480
|
-
endpoint: workDoneEndpoint(),
|
|
481
|
-
headers: {
|
|
482
|
-
'Content-Type': 'application/json',
|
|
483
|
-
},
|
|
484
|
-
method: 'POST',
|
|
501
|
+
return workSubmit({
|
|
502
|
+
done: true,
|
|
503
|
+
skipNestedMetadataDetection: args.skipNestedMetadataDetection,
|
|
485
504
|
});
|
|
486
|
-
return {
|
|
487
|
-
branch,
|
|
488
|
-
done,
|
|
489
|
-
push: pushResult,
|
|
490
|
-
pushed: needsPush,
|
|
491
|
-
workItem,
|
|
492
|
-
};
|
|
493
505
|
}
|
|
494
506
|
export const agentiaMcpWorkToolHandlers = {
|
|
495
507
|
workCommit,
|
|
@@ -596,16 +608,16 @@ export function registerAgentiaMcpWorkTools(server) {
|
|
|
596
608
|
title: 'Agentia Work Set',
|
|
597
609
|
}, (args) => safelyHandleTool(() => workSet(args)));
|
|
598
610
|
server.registerTool('agentia_work_push', {
|
|
599
|
-
description: 'Push the current feature/<lastWorkItem> branch and register commits with Copado. Requires a clean working tree, lastBaseBranch, and lastDevOrgBranch from config.user.json. Applies Copado environment-variable then yaml replacements when needed, commits both as a single follow-up commit, sends lastPermissionSelected and the permissions argument plus the nested metadata of the changed profiles and permission sets as
|
|
611
|
+
description: 'Push the current feature/<lastWorkItem> branch and register commits with Copado. Requires a clean working tree, lastBaseBranch, and lastDevOrgBranch from config.user.json. Applies Copado environment-variable then yaml replacements when needed, commits both as a single follow-up commit, sends one headless push changeListUpdate list of Action:MetadataType:MetadataName corrections (lastPermissionSelected and the permissions argument plus the nested metadata of the changed profiles and permission sets as RetrieveOnly so Copado registers that metadata with the Retrieve Only commit action, lastFullMetadataSelected and the fullMetadata argument plus brand-new nested parent files as fullMetadata, the ignored nested parents as unchanged, the nested metadata the branch deleted as Del, and the remaining nested metadata as Add). The changed profiles and permission sets themselves are never sent as corrections, so they stay in the change list and deploy only the permissions their RetrieveOnly entries select; brand-new nested parent files are sent as fullMetadata instead. Merges the feature branch into the recorded dev org branch after headless push.',
|
|
600
612
|
inputSchema: {
|
|
601
613
|
fullMetadata: z
|
|
602
614
|
.string()
|
|
603
615
|
.optional()
|
|
604
|
-
.describe('Comma-separated type-prefixed metadata such as Profile:Sales_User,PermissionSet:Sales_Onboarding, added to lastFullMetadataSelected for this push and sent as
|
|
616
|
+
.describe('Comma-separated type-prefixed metadata such as Profile:Sales_User,PermissionSet:Sales_Onboarding, added to lastFullMetadataSelected for this push and sent as headless push fullMetadata corrections. The named metadata is committed as a complete file and is never decomposed into nested metadata. Not stored.'),
|
|
605
617
|
permissions: z
|
|
606
618
|
.string()
|
|
607
619
|
.optional()
|
|
608
|
-
.describe('Comma-separated type-prefixed metadata such as CustomField:Account.SLA__c,ApexClass:AccountService, added to lastPermissionSelected for this push and sent as
|
|
620
|
+
.describe('Comma-separated type-prefixed metadata such as CustomField:Account.SLA__c,ApexClass:AccountService, added to lastPermissionSelected for this push and sent as headless push RetrieveOnly corrections. Not stored.'),
|
|
609
621
|
skipNestedMetadataDetection: skipNestedMetadataDetectionSchema,
|
|
610
622
|
},
|
|
611
623
|
title: 'Agentia Work Push',
|
|
@@ -640,7 +652,7 @@ export function registerAgentiaMcpWorkTools(server) {
|
|
|
640
652
|
fullMetadata: z
|
|
641
653
|
.string()
|
|
642
654
|
.optional()
|
|
643
|
-
.describe('Local commit only. Comma-separated type-prefixed metadata such as Profile:Sales_User,PermissionSet:Sales_Onboarding, stored as lastFullMetadataSelected and sent as
|
|
655
|
+
.describe('Local commit only. Comma-separated type-prefixed metadata such as Profile:Sales_User,PermissionSet:Sales_Onboarding, stored as lastFullMetadataSelected and sent as work push fullMetadata corrections. The named metadata is committed as a complete file, so every permission it contains is applied instead of only the permissions selected with permissions. Empty string clears it.'),
|
|
644
656
|
id: z.string().optional().describe('Cloud commit only. User story Id. Defaults to the active work item from work set.'),
|
|
645
657
|
local: z
|
|
646
658
|
.boolean()
|
|
@@ -658,7 +670,7 @@ export function registerAgentiaMcpWorkTools(server) {
|
|
|
658
670
|
permissions: z
|
|
659
671
|
.string()
|
|
660
672
|
.optional()
|
|
661
|
-
.describe('Local commit only. Comma-separated type-prefixed metadata such as CustomField:Account.SLA__c,ApexClass:AccountService, stored as lastPermissionSelected and sent as
|
|
673
|
+
.describe('Local commit only. Comma-separated type-prefixed metadata such as CustomField:Account.SLA__c,ApexClass:AccountService, stored as lastPermissionSelected and sent as work push RetrieveOnly corrections. The named metadata is not committed or deployed; it filters which permissions are updated inside the committed permission sets and profiles so other permissions are not overwritten. Empty string clears it.'),
|
|
662
674
|
platformExperience: z
|
|
663
675
|
.enum(WORK_COMMIT_PLATFORM_EXPERIENCES)
|
|
664
676
|
.optional()
|
|
@@ -703,12 +715,16 @@ export function registerAgentiaMcpWorkTools(server) {
|
|
|
703
715
|
title: 'Agentia Work Promote',
|
|
704
716
|
}, (args) => safelyHandleTool(() => workPromote(args || {})));
|
|
705
717
|
server.registerTool('agentia_work_submit', {
|
|
706
|
-
description: 'Submit the current feature/US-XXXX work item for pipeline quality gates and validation. Runs project-root .agentia_quality_gates.sh (macOS/Linux) or .agentia_quality_gates.cmd (Windows) when present, then pushes and registers commits when the branch is ahead of origin.',
|
|
718
|
+
description: 'Submit the current feature/US-XXXX work item for pipeline quality gates and validation. Runs project-root .agentia_quality_gates.sh (macOS/Linux) or .agentia_quality_gates.cmd (Windows) when present, then pushes and registers commits when the branch is ahead of origin. With done=true, matches Copado UI Submit when promoting (headless work/done). Prefer this over agentia_work_done.',
|
|
707
719
|
inputSchema: {
|
|
708
720
|
apexTestClasses: z
|
|
709
721
|
.string()
|
|
710
722
|
.optional()
|
|
711
723
|
.describe('Comma-separated Apex test class names passed to local quality gates as AGENTIA_APEX_TEST_CLASSES.'),
|
|
724
|
+
done: z
|
|
725
|
+
.boolean()
|
|
726
|
+
.optional()
|
|
727
|
+
.describe('Promote instead of validate-only (Copado UI Submit promote). Honors skipNestedMetadataDetection.'),
|
|
712
728
|
skipLocalTests: z
|
|
713
729
|
.boolean()
|
|
714
730
|
.optional()
|
|
@@ -732,7 +748,7 @@ export function registerAgentiaMcpWorkTools(server) {
|
|
|
732
748
|
title: 'Agentia Work Test',
|
|
733
749
|
}, (args) => safelyHandleTool(() => workTest(args || {})));
|
|
734
750
|
server.registerTool('agentia_work_done', {
|
|
735
|
-
description: '
|
|
751
|
+
description: 'Compatibility alias of agentia_work_submit with done=true (Copado UI Submit promote). Prefer agentia_work_submit({ done: true }).',
|
|
736
752
|
inputSchema: {
|
|
737
753
|
skipNestedMetadataDetection: skipNestedMetadataDetectionSchema,
|
|
738
754
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"work-tools.js","sourceRoot":"","sources":["../../../src/lib/mcp/work-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"work-tools.js","sourceRoot":"","sources":["../../../src/lib/mcp/work-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,19 +4,44 @@ export type NestedMetadataSelection = {
|
|
|
4
4
|
name: string;
|
|
5
5
|
type: string;
|
|
6
6
|
};
|
|
7
|
+
/** Whether the nested XML block appeared, changed, or disappeared between the two revisions. */
|
|
8
|
+
export type NestedMetadataChangeKind = 'added' | 'modified' | 'removed';
|
|
9
|
+
export type NestedMetadataChange = NestedMetadataSelection & {
|
|
10
|
+
changeKind: NestedMetadataChangeKind;
|
|
11
|
+
};
|
|
7
12
|
export type NestedMetadataChanges = {
|
|
13
|
+
/**
|
|
14
|
+
* Subset of `nestedChildren` whose XML block is gone at `HEAD`. `cicd work push` sends the
|
|
15
|
+
* non-permission ones as `Del` corrections so the gateway registers them as deletions instead of
|
|
16
|
+
* additions.
|
|
17
|
+
*/
|
|
18
|
+
deletedNestedChildren: NestedMetadataSelection[];
|
|
19
|
+
/**
|
|
20
|
+
* Nested parent files that are brand new on the branch (absent at the merge base, present at
|
|
21
|
+
* `HEAD`). `cicd work push` sends them as `fullMetadata` so the complete file travels instead of
|
|
22
|
+
* being decomposed into nested children.
|
|
23
|
+
*/
|
|
24
|
+
fullMetadataParents: NestedMetadataSelection[];
|
|
8
25
|
/**
|
|
9
26
|
* Parent components that were decomposed into nested children. The parent XML aggregates members
|
|
10
27
|
* owned by other work, so the parent itself is excluded in favour of `nestedChildren`.
|
|
28
|
+
* Profile and PermissionSet parents are never listed here; see `permissionParents`.
|
|
11
29
|
*/
|
|
12
30
|
ignoredParents: NestedMetadataSelection[];
|
|
13
31
|
/** Child components resolved from the nested XML blocks that actually changed. */
|
|
14
32
|
nestedChildren: NestedMetadataSelection[];
|
|
15
33
|
/**
|
|
16
34
|
* Subset of `nestedChildren` owned by a Profile or PermissionSet parent. These are permissions,
|
|
17
|
-
* not components the branch deploys, so `cicd work push` sends them as `
|
|
35
|
+
* not components the branch deploys, so `cicd work push` sends them as `RetrieveOnly`.
|
|
18
36
|
*/
|
|
19
37
|
permissionNestedChildren: NestedMetadataSelection[];
|
|
38
|
+
/**
|
|
39
|
+
* Profile and PermissionSet parents whose permissions changed. Unlike `ignoredParents` they are
|
|
40
|
+
* kept in the story change list — they are the components that carry the permissions — and
|
|
41
|
+
* `cicd work push` sends no correction for them at all. The `RetrieveOnly` entries in
|
|
42
|
+
* `permissionNestedChildren` narrow them to the permissions this branch touched.
|
|
43
|
+
*/
|
|
44
|
+
permissionParents: NestedMetadataSelection[];
|
|
20
45
|
};
|
|
21
46
|
export type NestedParentCandidate = NestedMetadataSelection & {
|
|
22
47
|
filePath: string;
|
|
@@ -25,6 +50,12 @@ export type NestedParentCandidate = NestedMetadataSelection & {
|
|
|
25
50
|
/** Reads a repository file as it exists at a git ref, or `''` when it is absent. */
|
|
26
51
|
export type NestedFileReader = (filePath: string) => Promise<string>;
|
|
27
52
|
export declare function formatNestedMetadataSelection(selection: NestedMetadataSelection): string;
|
|
53
|
+
/**
|
|
54
|
+
* Deleted nested children that may be registered as deletions. Profile and PermissionSet children
|
|
55
|
+
* are excluded: their blocks grant permissions, so removing one revokes access rather than deleting
|
|
56
|
+
* the component it points at.
|
|
57
|
+
*/
|
|
58
|
+
export declare function listDeletableNestedChildren(changes: NestedMetadataChanges): NestedMetadataSelection[];
|
|
28
59
|
/**
|
|
29
60
|
* Changed files whose metadata type aggregates nested children, paired with the rules that describe
|
|
30
61
|
* the nested XML blocks to diff. Paths that do not resolve to Salesforce metadata are dropped.
|
|
@@ -32,15 +63,22 @@ export declare function formatNestedMetadataSelection(selection: NestedMetadataS
|
|
|
32
63
|
export declare function listNestedParentCandidates(filePaths: readonly string[], registry?: NestedRegistry): NestedParentCandidate[];
|
|
33
64
|
/** Composite key Copado uses for layout assignments: `<layout base>--<recordType>`. */
|
|
34
65
|
export declare function layoutRecordTypeKey(layout: string, recordType: string): string;
|
|
35
|
-
export declare function nestedChildName(element: Element, rule: NestedRule): string | undefined;
|
|
66
|
+
export declare function nestedChildName(element: Element, rule: NestedRule, parentName?: string): string | undefined;
|
|
36
67
|
/**
|
|
37
68
|
* Nested children whose XML block was added, removed, or edited between the two parent revisions.
|
|
69
|
+
* `parentName` scopes the child names Copado tracks per object, such as a workflow rule.
|
|
38
70
|
*/
|
|
39
|
-
export declare function diffNestedChildren(baseXml: string, headXml: string, rules: readonly NestedRule[]):
|
|
71
|
+
export declare function diffNestedChildren(baseXml: string, headXml: string, rules: readonly NestedRule[], parentName?: string): NestedMetadataChange[];
|
|
40
72
|
/**
|
|
41
73
|
* Translates changed nested-parent files into the parents to ignore and the nested children that
|
|
42
74
|
* represent the actual change. A parent is only ignored when at least one of its nested blocks
|
|
43
75
|
* changed; parents whose top-level fields alone changed still need to be deployed as a whole.
|
|
76
|
+
*
|
|
77
|
+
* A parent file that is absent at the base revision and present at `HEAD` is brand new: it is
|
|
78
|
+
* reported as `fullMetadataParents` and is not decomposed, so the complete file travels.
|
|
79
|
+
*
|
|
80
|
+
* Profile and PermissionSet parents are reported separately and are never ignored: dropping them
|
|
81
|
+
* would leave nothing to deploy the permissions their changed blocks describe.
|
|
44
82
|
*/
|
|
45
83
|
export declare function detectNestedMetadataChanges(options: {
|
|
46
84
|
filePaths: readonly string[];
|
|
@@ -11,6 +11,15 @@ function compareSelections(left, right) {
|
|
|
11
11
|
export function formatNestedMetadataSelection(selection) {
|
|
12
12
|
return selectionKey(selection);
|
|
13
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* Deleted nested children that may be registered as deletions. Profile and PermissionSet children
|
|
16
|
+
* are excluded: their blocks grant permissions, so removing one revokes access rather than deleting
|
|
17
|
+
* the component it points at.
|
|
18
|
+
*/
|
|
19
|
+
export function listDeletableNestedChildren(changes) {
|
|
20
|
+
const permissionChildren = new Set(changes.permissionNestedChildren.map((child) => selectionKey(child)));
|
|
21
|
+
return changes.deletedNestedChildren.filter((child) => !permissionChildren.has(selectionKey(child)));
|
|
22
|
+
}
|
|
14
23
|
/**
|
|
15
24
|
* Changed files whose metadata type aggregates nested children, paired with the rules that describe
|
|
16
25
|
* the nested XML blocks to diff. Paths that do not resolve to Salesforce metadata are dropped.
|
|
@@ -56,7 +65,42 @@ export function layoutRecordTypeKey(layout, recordType) {
|
|
|
56
65
|
const base = layout.includes('-') ? layout.split('-')[0] : layout;
|
|
57
66
|
return recordType ? `${base}--${recordType}` : base;
|
|
58
67
|
}
|
|
59
|
-
|
|
68
|
+
/**
|
|
69
|
+
* The object a parent component belongs to. Object-scoped parents carry it as the first segment of
|
|
70
|
+
* their own name, before the record type (`Account.Business`) or the language (`Account-en_US`).
|
|
71
|
+
*/
|
|
72
|
+
function objectOfParentName(parentName) {
|
|
73
|
+
return parentName.split(/[.-]/)[0] ?? '';
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Prefix the nested block does not carry itself. Nested names Copado tracks per object stay
|
|
77
|
+
* ambiguous without it: a `Notify_Owner` workflow rule exists on any number of objects.
|
|
78
|
+
*/
|
|
79
|
+
function nameScopePrefix(rule, parentName) {
|
|
80
|
+
switch (rule.nameScope) {
|
|
81
|
+
case 'object': {
|
|
82
|
+
return objectOfParentName(parentName);
|
|
83
|
+
}
|
|
84
|
+
case 'parent': {
|
|
85
|
+
return parentName;
|
|
86
|
+
}
|
|
87
|
+
default: {
|
|
88
|
+
return '';
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
export function nestedChildName(element, rule, parentName = '') {
|
|
93
|
+
const name = unscopedNestedChildName(element, rule);
|
|
94
|
+
if (name === undefined) {
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
97
|
+
const prefix = nameScopePrefix(rule, parentName);
|
|
98
|
+
if (prefix.length === 0 || name.startsWith(`${prefix}.`)) {
|
|
99
|
+
return name;
|
|
100
|
+
}
|
|
101
|
+
return `${prefix}.${name}`;
|
|
102
|
+
}
|
|
103
|
+
function unscopedNestedChildName(element, rule) {
|
|
60
104
|
if (rule.keyStyle === 'layoutRecordType') {
|
|
61
105
|
const layout = textOfField(element, rule.nameFields[0] ?? 'layout');
|
|
62
106
|
if (!layout) {
|
|
@@ -86,7 +130,7 @@ function parseXml(xml) {
|
|
|
86
130
|
function normalizeBlock(serialized) {
|
|
87
131
|
return serialized.replaceAll(/>\s+</g, '><').replaceAll(/\s+/g, ' ').trim();
|
|
88
132
|
}
|
|
89
|
-
function collectNestedBlocks(root, rule) {
|
|
133
|
+
function collectNestedBlocks(root, rule, parentName) {
|
|
90
134
|
const blocks = new Map();
|
|
91
135
|
if (!root) {
|
|
92
136
|
return blocks;
|
|
@@ -96,7 +140,7 @@ function collectNestedBlocks(root, rule) {
|
|
|
96
140
|
if (localName(element) !== rule.xmlElement) {
|
|
97
141
|
continue;
|
|
98
142
|
}
|
|
99
|
-
const name = nestedChildName(element, rule);
|
|
143
|
+
const name = nestedChildName(element, rule, parentName);
|
|
100
144
|
if (name === undefined) {
|
|
101
145
|
continue;
|
|
102
146
|
}
|
|
@@ -104,22 +148,45 @@ function collectNestedBlocks(root, rule) {
|
|
|
104
148
|
}
|
|
105
149
|
return blocks;
|
|
106
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* A child that is present under one rule or parent and gone under another still exists on the
|
|
153
|
+
* branch, so anything but a removal wins: only children removed everywhere can be deleted.
|
|
154
|
+
*/
|
|
155
|
+
function mergeChangeKind(current, next) {
|
|
156
|
+
return current === 'removed' ? next : current;
|
|
157
|
+
}
|
|
158
|
+
function recordChange(changes, change) {
|
|
159
|
+
const key = selectionKey(change);
|
|
160
|
+
const current = changes.get(key);
|
|
161
|
+
changes.set(key, current === undefined
|
|
162
|
+
? change
|
|
163
|
+
: { ...current, changeKind: mergeChangeKind(current.changeKind, change.changeKind) });
|
|
164
|
+
}
|
|
107
165
|
/**
|
|
108
166
|
* Nested children whose XML block was added, removed, or edited between the two parent revisions.
|
|
167
|
+
* `parentName` scopes the child names Copado tracks per object, such as a workflow rule.
|
|
109
168
|
*/
|
|
110
|
-
export function diffNestedChildren(baseXml, headXml, rules) {
|
|
169
|
+
export function diffNestedChildren(baseXml, headXml, rules, parentName = '') {
|
|
111
170
|
const baseRoot = parseXml(baseXml);
|
|
112
171
|
const headRoot = parseXml(headXml);
|
|
113
172
|
const changes = new Map();
|
|
114
173
|
for (const rule of rules) {
|
|
115
|
-
const baseBlocks = collectNestedBlocks(baseRoot, rule);
|
|
116
|
-
const headBlocks = collectNestedBlocks(headRoot, rule);
|
|
174
|
+
const baseBlocks = collectNestedBlocks(baseRoot, rule, parentName);
|
|
175
|
+
const headBlocks = collectNestedBlocks(headRoot, rule, parentName);
|
|
117
176
|
for (const name of new Set([...baseBlocks.keys(), ...headBlocks.keys()])) {
|
|
118
|
-
|
|
177
|
+
const before = baseBlocks.get(name);
|
|
178
|
+
const after = headBlocks.get(name);
|
|
179
|
+
if (before === after) {
|
|
119
180
|
continue;
|
|
120
181
|
}
|
|
121
|
-
|
|
122
|
-
|
|
182
|
+
let changeKind = 'modified';
|
|
183
|
+
if (after === undefined) {
|
|
184
|
+
changeKind = 'removed';
|
|
185
|
+
}
|
|
186
|
+
else if (before === undefined) {
|
|
187
|
+
changeKind = 'added';
|
|
188
|
+
}
|
|
189
|
+
recordChange(changes, { changeKind, name, type: rule.childType });
|
|
123
190
|
}
|
|
124
191
|
}
|
|
125
192
|
return [...changes.values()];
|
|
@@ -128,13 +195,21 @@ export function diffNestedChildren(baseXml, headXml, rules) {
|
|
|
128
195
|
* Translates changed nested-parent files into the parents to ignore and the nested children that
|
|
129
196
|
* represent the actual change. A parent is only ignored when at least one of its nested blocks
|
|
130
197
|
* changed; parents whose top-level fields alone changed still need to be deployed as a whole.
|
|
198
|
+
*
|
|
199
|
+
* A parent file that is absent at the base revision and present at `HEAD` is brand new: it is
|
|
200
|
+
* reported as `fullMetadataParents` and is not decomposed, so the complete file travels.
|
|
201
|
+
*
|
|
202
|
+
* Profile and PermissionSet parents are reported separately and are never ignored: dropping them
|
|
203
|
+
* would leave nothing to deploy the permissions their changed blocks describe.
|
|
131
204
|
*/
|
|
132
205
|
export async function detectNestedMetadataChanges(options) {
|
|
133
206
|
const { filePaths, readBase, readHead } = options;
|
|
134
207
|
const candidates = listNestedParentCandidates(filePaths, options.registry);
|
|
208
|
+
const fullMetadataParents = new Map();
|
|
135
209
|
const ignoredParents = new Map();
|
|
136
210
|
const nestedChildren = new Map();
|
|
137
211
|
const permissionNestedChildren = new Map();
|
|
212
|
+
const permissionParents = new Map();
|
|
138
213
|
for (const candidate of candidates) {
|
|
139
214
|
// eslint-disable-next-line no-await-in-loop -- git reads are cheap and kept sequential on purpose
|
|
140
215
|
const [baseXml, headXml] = await Promise.all([
|
|
@@ -144,23 +219,42 @@ export async function detectNestedMetadataChanges(options) {
|
|
|
144
219
|
if (baseXml.length === 0 && headXml.length === 0) {
|
|
145
220
|
continue;
|
|
146
221
|
}
|
|
147
|
-
const
|
|
222
|
+
const parent = { name: candidate.name, type: candidate.type };
|
|
223
|
+
// Brand-new nested parent file: keep the whole component rather than listing every nested block.
|
|
224
|
+
if (baseXml.length === 0 && headXml.length > 0) {
|
|
225
|
+
fullMetadataParents.set(selectionKey(parent), parent);
|
|
226
|
+
continue;
|
|
227
|
+
}
|
|
228
|
+
const children = diffNestedChildren(baseXml, headXml, candidate.rules, candidate.name);
|
|
148
229
|
if (children.length === 0) {
|
|
149
230
|
continue;
|
|
150
231
|
}
|
|
151
|
-
const
|
|
152
|
-
|
|
232
|
+
const isPermissionParent = isPermissionNestedParentType(candidate.type);
|
|
233
|
+
if (isPermissionParent) {
|
|
234
|
+
permissionParents.set(selectionKey(parent), parent);
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
ignoredParents.set(selectionKey(parent), parent);
|
|
238
|
+
}
|
|
153
239
|
for (const child of children) {
|
|
154
|
-
nestedChildren
|
|
155
|
-
if (
|
|
156
|
-
|
|
240
|
+
recordChange(nestedChildren, child);
|
|
241
|
+
if (isPermissionParent) {
|
|
242
|
+
const { name, type } = child;
|
|
243
|
+
permissionNestedChildren.set(selectionKey(child), { name, type });
|
|
157
244
|
}
|
|
158
245
|
}
|
|
159
246
|
}
|
|
247
|
+
const changed = [...nestedChildren.values()];
|
|
160
248
|
return {
|
|
249
|
+
deletedNestedChildren: changed
|
|
250
|
+
.filter((child) => child.changeKind === 'removed')
|
|
251
|
+
.map(({ name, type }) => ({ name, type }))
|
|
252
|
+
.sort(compareSelections),
|
|
253
|
+
fullMetadataParents: [...fullMetadataParents.values()].sort(compareSelections),
|
|
161
254
|
ignoredParents: [...ignoredParents.values()].sort(compareSelections),
|
|
162
|
-
nestedChildren:
|
|
255
|
+
nestedChildren: changed.map(({ name, type }) => ({ name, type })).sort(compareSelections),
|
|
163
256
|
permissionNestedChildren: [...permissionNestedChildren.values()].sort(compareSelections),
|
|
257
|
+
permissionParents: [...permissionParents.values()].sort(compareSelections),
|
|
164
258
|
};
|
|
165
259
|
}
|
|
166
260
|
//# sourceMappingURL=nested-metadata-changes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nested-metadata-changes.js","sourceRoot":"","sources":["../../src/lib/nested-metadata-changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAA2B,aAAa,EAAC,MAAM,gBAAgB,CAAA;AAEhF,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EAGxB,kBAAkB,GACnB,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAA;AAE5D,MAAM,YAAY,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"nested-metadata-changes.js","sourceRoot":"","sources":["../../src/lib/nested-metadata-changes.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
* Copado tracks as standalone components. Each rule maps a repeated top-level XML element of the
|
|
4
4
|
* parent file to the child metadata type it represents.
|
|
5
5
|
*/
|
|
6
|
+
/**
|
|
7
|
+
* How much of the child's Copado name the nested XML block carries on its own.
|
|
8
|
+
*
|
|
9
|
+
* - `global` (default): the nested fields already hold the complete name, the way a profile
|
|
10
|
+
* `fieldPermissions` block names `Account.Rating`.
|
|
11
|
+
* - `parent`: the name is scoped by the parent component, so a `Notify_Owner` rule under
|
|
12
|
+
* `Workflow:Account` is `WorkflowRule:Account.Notify_Owner`.
|
|
13
|
+
* - `object`: the name is scoped by the object the parent itself belongs to, so an `Industry`
|
|
14
|
+
* picklist under `RecordType:Account.Business` is `CustomField:Account.Industry`.
|
|
15
|
+
*/
|
|
16
|
+
export type NestedNameScope = 'global' | 'object' | 'parent';
|
|
6
17
|
export type NestedRule = {
|
|
7
18
|
childType: string;
|
|
8
19
|
/**
|
|
@@ -11,12 +22,13 @@ export type NestedRule = {
|
|
|
11
22
|
*/
|
|
12
23
|
keyStyle?: 'default' | 'layoutRecordType';
|
|
13
24
|
nameFields: string[];
|
|
25
|
+
nameScope?: NestedNameScope;
|
|
14
26
|
xmlElement: string;
|
|
15
27
|
};
|
|
16
28
|
export type NestedRegistry = Readonly<Record<string, readonly NestedRule[]>>;
|
|
17
29
|
/**
|
|
18
30
|
* Parents whose nested children are permissions rather than deployable components on their own.
|
|
19
|
-
* Their changed children are pushed as `
|
|
31
|
+
* Their changed children are pushed as `RetrieveOnly`, the same way `lastPermissionSelected` is.
|
|
20
32
|
*/
|
|
21
33
|
export declare const PERMISSION_NESTED_PARENT_TYPES: ReadonlySet<string>;
|
|
22
34
|
export declare function isPermissionNestedParentType(type: string): boolean;
|