@ethlete/agent-rules 0.1.0-next.12 → 0.1.0-next.13
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 +7 -0
- package/README.md +12 -20
- package/content/skills/api-source/SKILL.md +5 -2
- package/content/skills/sdk-local-build/SKILL.md +1 -1
- package/content/skills/sdk-source/SKILL.md +4 -1
- package/package.json +1 -1
- package/src/lib/config.d.ts +13 -10
- package/src/lib/config.js +14 -10
- package/src/lib/config.js.map +1 -1
- package/src/lib/plan.js +5 -61
- package/src/lib/plan.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# @ethlete/agent-rules
|
|
2
2
|
|
|
3
|
+
## 0.1.0-next.13
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`b6fe4be`](https://github.com/ethlete-io/ethdk/commit/b6fe4beae010aaa2e0e367d636f6759442983395) Thanks [@TomTomB](https://github.com/TomTomB)! - `sdkSourcePath`, `apiRepoPaths` and `apiRepoBranches` moved to `ethlete.config.local.json`, owned by
|
|
8
|
+
`@ethlete/cli`. The old file is still read, and reports where they went.
|
|
9
|
+
|
|
3
10
|
## 0.1.0-next.12
|
|
4
11
|
|
|
5
12
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -393,15 +393,13 @@ from `AGENTS.md`, which `sync` already writes.
|
|
|
393
393
|
|
|
394
394
|
## Per-machine local config
|
|
395
395
|
|
|
396
|
-
A gitignored `ethlete-agents.config.local.json` at the repo root holds the
|
|
397
|
-
|
|
396
|
+
A gitignored `ethlete-agents.config.local.json` at the repo root holds the agent behaviour
|
|
397
|
+
that differs per developer, without touching any committed file:
|
|
398
398
|
|
|
399
399
|
```json
|
|
400
400
|
{
|
|
401
401
|
"disableHooks": true,
|
|
402
|
-
"
|
|
403
|
-
"apiRepoPaths": { "hub": "../fut-hub-backend", "*": "../shared-backend" },
|
|
404
|
-
"apiRepoBranches": { "hub": "develop", "*": "main" }
|
|
402
|
+
"disableAutoHandoffSave": true
|
|
405
403
|
}
|
|
406
404
|
```
|
|
407
405
|
|
|
@@ -411,26 +409,20 @@ differ per developer, without touching any committed file:
|
|
|
411
409
|
- **`disableAutoHandoffSave`** - keeps the `context-warning` hook's tiered warnings but
|
|
412
410
|
drops the auto-mode escalation: at the critical tier it recommends `/ethlete-handoff`
|
|
413
411
|
instead of saving the handoff file itself.
|
|
414
|
-
- **`sdkSourcePath`** - a local `ethlete-sdk` checkout. The `sdk-source` and
|
|
415
|
-
`sdk-local-build` skills read it when the agent needs the SDK's own sources, or has to
|
|
416
|
-
build the SDK and install it here through a `file:` dependency. A relative path is
|
|
417
|
-
resolved from the repo root.
|
|
418
|
-
- **`apiRepoPaths`** - one checkout per app, keyed by the app's project name
|
|
419
|
-
(`{ "hub": "../fut-hub-backend" }`). The `api-source` skill reads it to confirm a
|
|
420
|
-
response shape, a status code or an enum in the API's own source instead of guessing it
|
|
421
|
-
from the client. Relative paths resolve from the repo root. Matching is exact; use the
|
|
422
|
-
explicit `"*"` key only when apps intentionally share a checkout.
|
|
423
|
-
- **`apiRepoBranches`** - the expected backend branch per app. It uses the same exact-key
|
|
424
|
-
and explicit `"*"` fallback rules. Omit it when branch identity is not part of the
|
|
425
|
-
environment contract; the source guide then treats the current branch as context.
|
|
426
412
|
|
|
427
413
|
Everything in this file is read at runtime, never by `sync`: the generated files stay
|
|
428
414
|
identical on every machine and in CI, which is what lets `check` diff them. That is also
|
|
429
|
-
why the file takes nothing beyond these keys - `sync`/`check` warn about unknown keys
|
|
430
|
-
about an `sdkSourcePath` that is missing or is not an SDK checkout, and about an
|
|
431
|
-
`apiRepoPaths` entry that is not a directory, and invalid `apiRepoBranches` values. Add
|
|
415
|
+
why the file takes nothing beyond these keys - `sync`/`check` warn about unknown keys. Add
|
|
432
416
|
the filename to your repo's `.gitignore`.
|
|
433
417
|
|
|
418
|
+
### Where the sibling checkouts live
|
|
419
|
+
|
|
420
|
+
`sdkSourcePath`, `apiRepoPaths` and `apiRepoBranches` used to live in the file above. They
|
|
421
|
+
moved to `ethlete.config.local.json`, which [`@ethlete/cli`](../cli/README.md) owns, because
|
|
422
|
+
`et api` needs the same values the skills do. `sync`/`check` still read that file and warn
|
|
423
|
+
about a path that is missing or is not the checkout it claims to be, and they tell you to
|
|
424
|
+
move any of the three keys still found in the agents file.
|
|
425
|
+
|
|
434
426
|
## Authoring content
|
|
435
427
|
|
|
436
428
|
`content/rules/<name>.md` for short, always-loaded rules; `content/skills/<name>/SKILL.md`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: api-source
|
|
3
|
-
description: How to read the source of the API an app in this repo talks to, from a local backend checkout named in ethlete
|
|
3
|
+
description: How to read the source of the API an app in this repo talks to, from a local backend checkout named in ethlete.config.local.json. Read when a response shape, a status code, an error body, an enum or an auth rule has to be confirmed rather than guessed - and never edit that checkout as part of work in this repo.
|
|
4
4
|
kind: skill
|
|
5
5
|
scope: consumer
|
|
6
6
|
---
|
|
@@ -26,7 +26,7 @@ the checkout is not deployed until the API team ships it.
|
|
|
26
26
|
|
|
27
27
|
One repository can hold several apps, each with its own API, so the paths are a map from
|
|
28
28
|
app to checkout. They are per machine, so the map lives in the gitignored
|
|
29
|
-
`ethlete
|
|
29
|
+
`ethlete.config.local.json` at the repo root:
|
|
30
30
|
|
|
31
31
|
```json
|
|
32
32
|
{
|
|
@@ -41,6 +41,9 @@ app to checkout. They are per machine, so the map lives in the gitignored
|
|
|
41
41
|
}
|
|
42
42
|
```
|
|
43
43
|
|
|
44
|
+
Older checkouts still keep these keys in `ethlete-agents.config.local.json`. Read that file as a
|
|
45
|
+
fallback when `ethlete.config.local.json` is absent.
|
|
46
|
+
|
|
44
47
|
Read that file before searching anywhere. The rules:
|
|
45
48
|
|
|
46
49
|
- **The key is the app** as this repo names it - the workspace project name, which is
|
|
@@ -17,7 +17,7 @@ published yet, or when you are iterating on it.
|
|
|
17
17
|
|
|
18
18
|
## 1. Prerequisites
|
|
19
19
|
|
|
20
|
-
- The checkout path comes from `sdkSourcePath` in `ethlete
|
|
20
|
+
- The checkout path comes from `sdkSourcePath` in `ethlete.config.local.json`;
|
|
21
21
|
{%skill:sdk-source%} covers resolving it and what to check before trusting it.
|
|
22
22
|
- The checkout has its dependencies installed (`yarn install` in the checkout root - the
|
|
23
23
|
SDK repo is a Yarn 4 workspace).
|
|
@@ -21,7 +21,7 @@ first. Reach for the source when the docs genuinely cannot answer the question:
|
|
|
21
21
|
|
|
22
22
|
## 1. Resolve the checkout
|
|
23
23
|
|
|
24
|
-
The path is per machine, so it lives in the gitignored `ethlete
|
|
24
|
+
The path is per machine, so it lives in the gitignored `ethlete.config.local.json`
|
|
25
25
|
at the repo root:
|
|
26
26
|
|
|
27
27
|
```json
|
|
@@ -30,6 +30,9 @@ at the repo root:
|
|
|
30
30
|
}
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
+
Older checkouts still keep this key in `ethlete-agents.config.local.json`. Read that file as a
|
|
34
|
+
fallback when `ethlete.config.local.json` is absent.
|
|
35
|
+
|
|
33
36
|
Read that file before searching anywhere. A relative path is resolved from the repo root.
|
|
34
37
|
|
|
35
38
|
If the file or the key is missing, **do not guess a path** and do not clone the
|
package/package.json
CHANGED
package/src/lib/config.d.ts
CHANGED
|
@@ -43,13 +43,9 @@ export type SyncConfig = {
|
|
|
43
43
|
* - `disableAutoHandoffSave: true` keeps the context-warning hook's normal tiered messages (including
|
|
44
44
|
* in auto mode), but at the critical tier in auto mode it falls back to just recommending
|
|
45
45
|
* a handoff instead of writing the handoff file automatically.
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* "../fut-hub-backend" }`), which the api-source skill reads to answer a question about the
|
|
50
|
-
* server instead of guessing it from the client.
|
|
51
|
-
* - `apiRepoBranches` optionally maps each app to the backend branch that should represent its
|
|
52
|
-
* deployed development environment. Both maps may use `"*"` as an explicit shared fallback.
|
|
46
|
+
*
|
|
47
|
+
* Where the sibling checkouts live (`sdkSourcePath`, `apiRepoPaths`, `apiRepoBranches`) is not here:
|
|
48
|
+
* it moved to `@ethlete/cli`'s `ethlete.config.local.json`, because `et` reads the same values.
|
|
53
49
|
*
|
|
54
50
|
* No secret belongs here any more. Jira is reached through the Timetrack app, which holds the token
|
|
55
51
|
* in the machine's keychain — one secret per machine rather than one per checkout.
|
|
@@ -57,9 +53,6 @@ export type SyncConfig = {
|
|
|
57
53
|
export type LocalConfig = {
|
|
58
54
|
disableHooks?: boolean | string[];
|
|
59
55
|
disableAutoHandoffSave?: boolean;
|
|
60
|
-
sdkSourcePath?: string;
|
|
61
|
-
apiRepoPaths?: Record<string, string>;
|
|
62
|
-
apiRepoBranches?: Record<string, string>;
|
|
63
56
|
};
|
|
64
57
|
export type LocalConfigState = {
|
|
65
58
|
exists: false;
|
|
@@ -71,7 +64,17 @@ export type LocalConfigState = {
|
|
|
71
64
|
valid: true;
|
|
72
65
|
config: LocalConfig;
|
|
73
66
|
unknownKeys: string[];
|
|
67
|
+
movedKeys: string[];
|
|
74
68
|
};
|
|
69
|
+
export declare const LOCAL_CONFIG_KEYS: (keyof LocalConfig)[];
|
|
70
|
+
/**
|
|
71
|
+
* Repo topology moved to `@ethlete/cli`'s `ethlete.config.local.json`, because `et` needs it too.
|
|
72
|
+
* Still recognised here so a checkout that has not moved them yet gets told where they went
|
|
73
|
+
* instead of an "unsupported key" warning.
|
|
74
|
+
*/
|
|
75
|
+
export declare const MOVED_LOCAL_CONFIG_KEYS: string[];
|
|
76
|
+
/** Named only to point a migration at it. `@ethlete/cli` owns the file and validates its values. */
|
|
77
|
+
export declare const TOPOLOGY_CONFIG_FILE_NAME = "ethlete.config.local.json";
|
|
75
78
|
export declare const readLocalConfig: (root: string) => LocalConfigState;
|
|
76
79
|
/**
|
|
77
80
|
* Emit for the agents a repo already uses. `codex` is always included: `AGENTS.md` is the
|
package/src/lib/config.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadConfig = exports.detectTargets = exports.readLocalConfig = exports.LOCAL_CONFIG_FILE_NAME = exports.CONFIG_FILE_NAME = exports.AGENT_TARGETS = void 0;
|
|
3
|
+
exports.loadConfig = exports.detectTargets = exports.readLocalConfig = exports.TOPOLOGY_CONFIG_FILE_NAME = exports.MOVED_LOCAL_CONFIG_KEYS = exports.LOCAL_CONFIG_KEYS = exports.LOCAL_CONFIG_FILE_NAME = exports.CONFIG_FILE_NAME = exports.AGENT_TARGETS = void 0;
|
|
4
4
|
const fs_1 = require("fs");
|
|
5
5
|
const path_1 = require("path");
|
|
6
6
|
const commitlint_1 = require("./commitlint");
|
|
@@ -15,13 +15,15 @@ const readRawConfig = (root) => {
|
|
|
15
15
|
return {};
|
|
16
16
|
return JSON.parse((0, fs_1.readFileSync)(path, 'utf8'));
|
|
17
17
|
};
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
];
|
|
18
|
+
exports.LOCAL_CONFIG_KEYS = ['disableHooks', 'disableAutoHandoffSave'];
|
|
19
|
+
/**
|
|
20
|
+
* Repo topology moved to `@ethlete/cli`'s `ethlete.config.local.json`, because `et` needs it too.
|
|
21
|
+
* Still recognised here so a checkout that has not moved them yet gets told where they went
|
|
22
|
+
* instead of an "unsupported key" warning.
|
|
23
|
+
*/
|
|
24
|
+
exports.MOVED_LOCAL_CONFIG_KEYS = ['sdkSourcePath', 'apiRepoPaths', 'apiRepoBranches'];
|
|
25
|
+
/** Named only to point a migration at it. `@ethlete/cli` owns the file and validates its values. */
|
|
26
|
+
exports.TOPOLOGY_CONFIG_FILE_NAME = 'ethlete.config.local.json';
|
|
25
27
|
const readLocalConfig = (root) => {
|
|
26
28
|
const path = (0, path_1.join)(root, exports.LOCAL_CONFIG_FILE_NAME);
|
|
27
29
|
if (!(0, fs_1.existsSync)(path))
|
|
@@ -36,8 +38,10 @@ const readLocalConfig = (root) => {
|
|
|
36
38
|
if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed))
|
|
37
39
|
return { exists: true, valid: false };
|
|
38
40
|
const config = parsed;
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
+
const keys = Object.keys(config);
|
|
42
|
+
const movedKeys = keys.filter((key) => exports.MOVED_LOCAL_CONFIG_KEYS.includes(key));
|
|
43
|
+
const unknownKeys = keys.filter((key) => !exports.LOCAL_CONFIG_KEYS.includes(key) && !movedKeys.includes(key));
|
|
44
|
+
return { exists: true, valid: true, config, unknownKeys, movedKeys };
|
|
41
45
|
};
|
|
42
46
|
exports.readLocalConfig = readLocalConfig;
|
|
43
47
|
/**
|
package/src/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../libs/agent-rules/src/lib/config.ts"],"names":[],"mappings":";;;AAAA,2BAA8C;AAC9C,+BAA4B;AAC5B,6CAAuE;AAEvE,yCAAmF;AACnF,iDAAiD;AAEpC,QAAA,aAAa,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAIlE,QAAA,gBAAgB,GAAG,4BAA4B,CAAC;AAEhD,QAAA,sBAAsB,GAAG,kCAAkC,CAAC;AA6CzE,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;IACrC,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,IAAI,EAAE,wBAAgB,CAAC,CAAC;IAE1C,IAAI,CAAC,IAAA,eAAU,EAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAc,CAAC;AAC7D,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../libs/agent-rules/src/lib/config.ts"],"names":[],"mappings":"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"}
|
package/src/lib/plan.js
CHANGED
|
@@ -67,63 +67,6 @@ const claudeMdImportsAgentsMd = (root) => {
|
|
|
67
67
|
return /^@AGENTS\.md\s*$/m.test((0, fs_1.readFileSync)(path, 'utf8'));
|
|
68
68
|
};
|
|
69
69
|
exports.claudeMdImportsAgentsMd = claudeMdImportsAgentsMd;
|
|
70
|
-
/** Marks a directory as an `ethlete-sdk` checkout rather than some other folder. */
|
|
71
|
-
const SDK_CHECKOUT_MARKERS = ['libs/components', 'libs/core', 'libs/agent-rules'];
|
|
72
|
-
const describeSdkSourcePath = (options) => {
|
|
73
|
-
const { root, value } = options;
|
|
74
|
-
if (value === undefined)
|
|
75
|
-
return [];
|
|
76
|
-
if (typeof value !== 'string' || value.trim().length === 0) {
|
|
77
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "sdkSourcePath" — use a path to an ethlete-sdk checkout.`];
|
|
78
|
-
}
|
|
79
|
-
const absolute = (0, path_1.resolve)(root, value);
|
|
80
|
-
if (!(0, fs_1.existsSync)(absolute)) {
|
|
81
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} points "sdkSourcePath" at ${absolute}, which does not exist.`];
|
|
82
|
-
}
|
|
83
|
-
if (SDK_CHECKOUT_MARKERS.some((marker) => !(0, fs_1.existsSync)((0, path_1.join)(absolute, marker)))) {
|
|
84
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} points "sdkSourcePath" at ${absolute}, which is not an ethlete-sdk checkout.`];
|
|
85
|
-
}
|
|
86
|
-
return [];
|
|
87
|
-
};
|
|
88
|
-
/**
|
|
89
|
-
* An API repo can be any stack, so there is no marker to check the way an SDK checkout has one —
|
|
90
|
-
* only that every entry names an app and points at a directory that is there.
|
|
91
|
-
*/
|
|
92
|
-
const describeApiRepoPaths = (options) => {
|
|
93
|
-
const { root, value } = options;
|
|
94
|
-
if (value === undefined)
|
|
95
|
-
return [];
|
|
96
|
-
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
97
|
-
return [
|
|
98
|
-
`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "apiRepoPaths" value — use an object mapping an app name to its API repo path.`,
|
|
99
|
-
];
|
|
100
|
-
}
|
|
101
|
-
return Object.entries(value).flatMap(([app, path]) => {
|
|
102
|
-
if (typeof path !== 'string' || path.trim().length === 0) {
|
|
103
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "apiRepoPaths.${app}" value — use a path to the API repo.`];
|
|
104
|
-
}
|
|
105
|
-
const absolute = (0, path_1.resolve)(root, path);
|
|
106
|
-
if (!(0, fs_1.existsSync)(absolute)) {
|
|
107
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} points "apiRepoPaths.${app}" at ${absolute}, which does not exist.`];
|
|
108
|
-
}
|
|
109
|
-
if (!(0, fs_1.statSync)(absolute).isDirectory()) {
|
|
110
|
-
return [`${config_1.LOCAL_CONFIG_FILE_NAME} points "apiRepoPaths.${app}" at ${absolute}, which is not a directory.`];
|
|
111
|
-
}
|
|
112
|
-
return [];
|
|
113
|
-
});
|
|
114
|
-
};
|
|
115
|
-
const describeApiRepoBranches = (value) => {
|
|
116
|
-
if (value === undefined)
|
|
117
|
-
return [];
|
|
118
|
-
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
119
|
-
return [
|
|
120
|
-
`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "apiRepoBranches" value — use an object mapping an app name to its expected API branch.`,
|
|
121
|
-
];
|
|
122
|
-
}
|
|
123
|
-
return Object.entries(value).flatMap(([app, branch]) => typeof branch === 'string' && branch.trim().length > 0
|
|
124
|
-
? []
|
|
125
|
-
: [`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "apiRepoBranches.${app}" value — use a non-empty branch name.`]);
|
|
126
|
-
};
|
|
127
70
|
/**
|
|
128
71
|
* The local file only affects runtime behavior, never sync output — so the warnings here are about
|
|
129
72
|
* the mistakes that would otherwise fail silently: a file the hooks can't parse, a key that
|
|
@@ -139,11 +82,12 @@ const collectLocalConfigWarnings = (root) => {
|
|
|
139
82
|
}
|
|
140
83
|
const warnings = [];
|
|
141
84
|
if (local.unknownKeys.length > 0) {
|
|
142
|
-
warnings.push(`${config_1.LOCAL_CONFIG_FILE_NAME} contains unsupported key(s): ${local.unknownKeys.join(', ')} — the local file supports
|
|
85
|
+
warnings.push(`${config_1.LOCAL_CONFIG_FILE_NAME} contains unsupported key(s): ${local.unknownKeys.join(', ')} — the local file supports ${config_1.LOCAL_CONFIG_KEYS.map((key) => `"${key}"`).join(' and ')}; it never changes what sync writes.`);
|
|
86
|
+
}
|
|
87
|
+
if (local.movedKeys.length > 0) {
|
|
88
|
+
warnings.push(`${config_1.LOCAL_CONFIG_FILE_NAME} still holds ${local.movedKeys.map((key) => `"${key}"`).join(', ')} — move ` +
|
|
89
|
+
`${local.movedKeys.length === 1 ? 'it' : 'them'} to ${config_1.TOPOLOGY_CONFIG_FILE_NAME}, which \`et\` reads too.`);
|
|
143
90
|
}
|
|
144
|
-
warnings.push(...describeSdkSourcePath({ root, value: local.config.sdkSourcePath }));
|
|
145
|
-
warnings.push(...describeApiRepoPaths({ root, value: local.config.apiRepoPaths }));
|
|
146
|
-
warnings.push(...describeApiRepoBranches(local.config.apiRepoBranches));
|
|
147
91
|
const disable = local.config.disableHooks;
|
|
148
92
|
if (disable !== undefined && typeof disable !== 'boolean' && !Array.isArray(disable)) {
|
|
149
93
|
warnings.push(`${config_1.LOCAL_CONFIG_FILE_NAME} has an invalid "disableHooks" value — use true or an array of hook names; hooks stay enabled.`);
|
package/src/lib/plan.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../../libs/agent-rules/src/lib/plan.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../../libs/agent-rules/src/lib/plan.ts"],"names":[],"mappings":"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"}
|