veryfront 0.1.1113 → 0.1.1115

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.
Files changed (42) hide show
  1. package/esm/cli/commands/deploy/command.d.ts +3 -0
  2. package/esm/cli/commands/deploy/command.d.ts.map +1 -1
  3. package/esm/cli/commands/deploy/command.js +4 -4
  4. package/esm/cli/commands/up/command.d.ts +3 -0
  5. package/esm/cli/commands/up/command.d.ts.map +1 -1
  6. package/esm/cli/commands/up/command.js +4 -2
  7. package/esm/cli/skills/loader.d.ts +4 -4
  8. package/esm/cli/skills/loader.d.ts.map +1 -1
  9. package/esm/cli/skills/loader.js +6 -6
  10. package/esm/deno.js +1 -1
  11. package/esm/src/agent/project/agent-runtime.d.ts +1 -1
  12. package/esm/src/agent/project/agent-runtime.d.ts.map +1 -1
  13. package/esm/src/agent/project/agent-runtime.js +2 -1
  14. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  15. package/esm/src/agent/runtime/index.js +4 -8
  16. package/esm/src/data/server-data-fetcher.d.ts.map +1 -1
  17. package/esm/src/data/server-data-fetcher.js +5 -1
  18. package/esm/src/discovery/import-rewriter.d.ts +0 -6
  19. package/esm/src/discovery/import-rewriter.d.ts.map +1 -1
  20. package/esm/src/discovery/import-rewriter.js +79 -47
  21. package/esm/src/html/hydration-script-builder/templates/router.d.ts.map +1 -1
  22. package/esm/src/html/hydration-script-builder/templates/router.js +87 -24
  23. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  24. package/esm/src/rendering/orchestrator/pipeline.js +26 -8
  25. package/esm/src/rendering/script-page-handling.js +1 -1
  26. package/esm/src/routing/api/module-loader/external-import-rewriter.js +1 -1
  27. package/esm/src/sandbox/lazy-sandbox.d.ts +5 -3
  28. package/esm/src/sandbox/lazy-sandbox.d.ts.map +1 -1
  29. package/esm/src/sandbox/lazy-sandbox.js +116 -51
  30. package/esm/src/sandbox/proxy-routes.d.ts +3 -0
  31. package/esm/src/sandbox/proxy-routes.d.ts.map +1 -0
  32. package/esm/src/sandbox/proxy-routes.js +28 -0
  33. package/esm/src/sandbox/sandbox.d.ts.map +1 -1
  34. package/esm/src/sandbox/sandbox.js +43 -30
  35. package/esm/src/server/handlers/request/module/page-data-endpoint-handler.d.ts.map +1 -1
  36. package/esm/src/server/handlers/request/module/page-data-endpoint-handler.js +6 -3
  37. package/esm/src/transforms/npm-import-rewrites.d.ts +3 -3
  38. package/esm/src/transforms/npm-import-rewrites.d.ts.map +1 -1
  39. package/esm/src/transforms/npm-import-rewrites.js +29 -14
  40. package/esm/src/utils/version-constant.d.ts +1 -1
  41. package/esm/src/utils/version-constant.js +1 -1
  42. package/package.json +5 -5
@@ -12,6 +12,7 @@ import { type ApiClient } from "../../shared/config.js";
12
12
  * Schema factory for deploy command arguments
13
13
  */
14
14
  export declare const getDeployArgsSchema: () => import("../../../src/internal-agents/schema.js").Schema<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
15
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
15
16
  branch: import("../../../src/internal-agents/schema.js").Schema<string>;
16
17
  env: import("../../../src/internal-agents/schema.js").Schema<string>;
17
18
  releaseName: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
@@ -21,6 +22,7 @@ export declare const getDeployArgsSchema: () => import("../../../src/internal-ag
21
22
  quiet: import("../../../src/internal-agents/schema.js").Schema<boolean>;
22
23
  }>>;
23
24
  export declare const DeployArgsSchema: import("../../../src/internal-agents/schema.js").Schema<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
25
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
24
26
  branch: import("../../../src/internal-agents/schema.js").Schema<string>;
25
27
  env: import("../../../src/internal-agents/schema.js").Schema<string>;
26
28
  releaseName: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
@@ -37,6 +39,7 @@ export type DeployOptions = InferSchema<ReturnType<typeof getDeployArgsSchema>>;
37
39
  * Parse CLI arguments into validated DeployOptions
38
40
  */
39
41
  export declare const parseDeployArgs: (args: import("../../shared/types.js").ParsedArgs) => import("../../shared/args.js").SafeParseResult<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
42
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
40
43
  branch: import("../../../src/internal-agents/schema.js").Schema<string>;
41
44
  env: import("../../../src/internal-agents/schema.js").Schema<string>;
42
45
  releaseName: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deploy/command.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ import { computeSourceDigest, getProjectTarget, normalizeControlPlane, readPushR
19
19
  * Schema factory for deploy command arguments
20
20
  */
21
21
  export const getDeployArgsSchema = defineSchema((v) => v.object({
22
+ projectDir: v.string().optional(),
22
23
  branch: v.string().min(1).default("main"),
23
24
  env: v.string().min(1).default("production"),
24
25
  releaseName: v.string().min(1).optional(),
@@ -32,6 +33,7 @@ export const DeployArgsSchema = lazySchema(getDeployArgsSchema);
32
33
  * Parse CLI arguments into validated DeployOptions
33
34
  */
34
35
  export const parseDeployArgs = createArgParser(DeployArgsSchema, {
36
+ projectDir: CommonArgs.projectDir,
35
37
  branch: CommonArgs.branch,
36
38
  env: CommonArgs.env,
37
39
  releaseName: CommonArgs.releaseName,
@@ -270,11 +272,10 @@ export async function resolvePushedSource(input) {
270
272
  * Create a release and deploy to an environment
271
273
  */
272
274
  export async function deployCommand(options) {
273
- const { branch, env, releaseName, dryRun, force, quiet } = options;
275
+ const { projectDir = cwd(), branch, env, releaseName, dryRun, force, quiet } = options;
274
276
  if (isJsonMode()) {
275
277
  return deployCommandJson(options);
276
278
  }
277
- const projectDir = cwd();
278
279
  let spinner = quiet ? createNoopSpinner() : createSpinner("Resolving configuration...");
279
280
  const config = await resolveConfigWithAuth(projectDir);
280
281
  const client = createApiClient(config);
@@ -377,7 +378,7 @@ export async function deployCommand(options) {
377
378
  console.log(getPostDeployTips());
378
379
  }
379
380
  async function deployCommandJson(options) {
380
- const { branch, env, releaseName, dryRun, force } = options;
381
+ const { projectDir = cwd(), branch, env, releaseName, dryRun, force } = options;
381
382
  try {
382
383
  // JSON mode requires --force or --yes to prevent accidental deploys
383
384
  if (requiresExplicitDeployConfirmation(force)) {
@@ -391,7 +392,6 @@ async function deployCommandJson(options) {
391
392
  return;
392
393
  }
393
394
  streamJsonLine({ type: "step", name: "resolve-config", status: "started" });
394
- const projectDir = cwd();
395
395
  const config = await resolveConfigWithAuth(projectDir);
396
396
  const client = createApiClient(config);
397
397
  streamJsonLine({ type: "step", name: "resolve-config", status: "completed" });
@@ -1,15 +1,18 @@
1
1
  import type { InferSchema } from "../../../src/extensions/schema/index.js";
2
2
  import { type EnvironmentConfig } from "../../../src/config/index.js";
3
3
  export declare const getUpArgsSchema: () => import("../../../src/internal-agents/schema.js").Schema<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
4
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
4
5
  force: import("../../../src/internal-agents/schema.js").Schema<boolean>;
5
6
  dryRun: import("../../../src/internal-agents/schema.js").Schema<boolean>;
6
7
  }>>;
7
8
  export declare const UpArgsSchema: import("../../../src/internal-agents/schema.js").Schema<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
9
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
8
10
  force: import("../../../src/internal-agents/schema.js").Schema<boolean>;
9
11
  dryRun: import("../../../src/internal-agents/schema.js").Schema<boolean>;
10
12
  }>>;
11
13
  export type UpOptions = InferSchema<ReturnType<typeof getUpArgsSchema>>;
12
14
  export declare const parseUpArgs: (args: import("../../shared/types.js").ParsedArgs) => import("../../shared/args.js").SafeParseResult<import("../../../src/extensions/schema/schema-validator.js").InferShape<{
15
+ projectDir: import("../../../src/internal-agents/schema.js").Schema<string | undefined>;
13
16
  force: import("../../../src/internal-agents/schema.js").Schema<boolean>;
14
17
  dryRun: import("../../../src/internal-agents/schema.js").Schema<boolean>;
15
18
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/up/command.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAO3E,OAAO,EAAE,KAAK,iBAAiB,EAAwB,MAAM,8BAA8B,CAAC;AAS5F,eAAO,MAAM,eAAe;;;GAK3B,CAAC;AAEF,eAAO,MAAM,YAAY;;;GAA8B,CAAC;AAExD,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC;AAExE,eAAO,MAAM,WAAW;;;GAGtB,CAAC;AAyEH,wBAAsB,SAAS,CAC7B,OAAO,GAAE,OAAO,CAAC,SAAS,CAAM,EAChC,GAAG,GAAE,iBAA0C,GAC9C,OAAO,CAAC,IAAI,CAAC,CA+Gf"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/up/command.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AAO3E,OAAO,EAAE,KAAK,iBAAiB,EAAwB,MAAM,8BAA8B,CAAC;AAS5F,eAAO,MAAM,eAAe;;;;GAM3B,CAAC;AAEF,eAAO,MAAM,YAAY;;;;GAA8B,CAAC;AAExD,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC;AAExE,eAAO,MAAM,WAAW;;;;GAItB,CAAC;AAyEH,wBAAsB,SAAS,CAC7B,OAAO,GAAE,OAAO,CAAC,SAAS,CAAM,EAChC,GAAG,GAAE,iBAA0C,GAC9C,OAAO,CAAC,IAAI,CAAC,CA8Gf"}
@@ -14,11 +14,13 @@ import { resolveCliApiUrl } from "../../shared/constants.js";
14
14
  import { pushCommand } from "../push/index.js";
15
15
  import { deployCommand } from "../deploy/index.js";
16
16
  export const getUpArgsSchema = defineSchema((v) => v.object({
17
+ projectDir: v.string().optional(),
17
18
  force: v.boolean().default(false),
18
19
  dryRun: v.boolean().default(false),
19
20
  }));
20
21
  export const UpArgsSchema = lazySchema(getUpArgsSchema);
21
22
  export const parseUpArgs = createArgParser(UpArgsSchema, {
23
+ projectDir: CommonArgs.projectDir,
22
24
  force: CommonArgs.force,
23
25
  dryRun: CommonArgs.dryRun,
24
26
  });
@@ -74,10 +76,9 @@ async function saveConfig(projectDir, config) {
74
76
  await fs.writeTextFile(join(projectDir, "veryfront.json"), `${JSON.stringify(config, null, 2)}\n`);
75
77
  }
76
78
  export async function upCommand(options = {}, env = getEnvironmentConfig()) {
77
- const { force = false, dryRun = false } = options;
79
+ const { projectDir = cwd(), force = false, dryRun = false } = options;
78
80
  const useColor = shouldUseColor();
79
81
  const c = (fn, s) => (useColor ? fn(s) : s);
80
- const projectDir = cwd();
81
82
  const userInfo = await ensureAuthenticated(env);
82
83
  if (!userInfo)
83
84
  return;
@@ -154,6 +155,7 @@ export async function upCommand(options = {}, env = getEnvironmentConfig()) {
154
155
  cliLogger.info("");
155
156
  try {
156
157
  await deployCommand({
158
+ projectDir,
157
159
  branch: "main",
158
160
  env: "preview",
159
161
  force: true,
@@ -2,12 +2,12 @@ import type { LoadedSkill } from "./types.js";
2
2
  export declare function loadSkill(directory: string): Promise<LoadedSkill | null>;
3
3
  export declare function listCoreSkills(): Promise<LoadedSkill[]>;
4
4
  /**
5
- * Scan the current working directory for local skill directories.
5
+ * Scan the provided project directory for local skill directories.
6
6
  * A local skill is any skills/<id>/ directory containing a SKILL.md file.
7
7
  */
8
- export declare function listLocalSkills(): Promise<LoadedSkill[]>;
8
+ export declare function listLocalSkills(baseDir?: string): Promise<LoadedSkill[]>;
9
9
  /**
10
- * List all skills: core (built-in) + local (in cwd).
10
+ * List all skills: core (built-in) + local (under baseDir).
11
11
  */
12
- export declare function listAllSkills(): Promise<LoadedSkill[]>;
12
+ export declare function listAllSkills(baseDir?: string): Promise<LoadedSkill[]>;
13
13
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/cli/skills/loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAW7B;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAqB7D;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAgB9D;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAqB5D"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/cli/skills/loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAO9C,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAW7B;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAqB7D;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,OAAO,GAAE,MAAc,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAgBrF;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,MAAc,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAqBnF"}
@@ -41,13 +41,13 @@ export async function listCoreSkills() {
41
41
  return skills;
42
42
  }
43
43
  /**
44
- * Scan the current working directory for local skill directories.
44
+ * Scan the provided project directory for local skill directories.
45
45
  * A local skill is any skills/<id>/ directory containing a SKILL.md file.
46
46
  */
47
- export async function listLocalSkills() {
47
+ export async function listLocalSkills(baseDir = cwd()) {
48
48
  const fs = createFileSystem();
49
49
  const skills = [];
50
- const skillsDir = `${cwd()}/skills`;
50
+ const skillsDir = `${baseDir}/skills`;
51
51
  try {
52
52
  for await (const entry of fs.readDir(skillsDir)) {
53
53
  if (!entry.isDirectory)
@@ -63,12 +63,12 @@ export async function listLocalSkills() {
63
63
  return skills;
64
64
  }
65
65
  /**
66
- * List all skills: core (built-in) + local (in cwd).
66
+ * List all skills: core (built-in) + local (under baseDir).
67
67
  */
68
- export async function listAllSkills() {
68
+ export async function listAllSkills(baseDir = cwd()) {
69
69
  const [core, local] = await Promise.all([
70
70
  listCoreSkills(),
71
- listLocalSkills(),
71
+ listLocalSkills(baseDir),
72
72
  ]);
73
73
  // Deduplicate by name, local skills override core
74
74
  const seen = new Set();
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.1113",
3
+ "version": "0.1.1115",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -15,7 +15,7 @@ export type ProjectAgentRuntimeAgentIdCandidates = {
15
15
  /** Input payload for discover project agent runtime. */
16
16
  export type DiscoverProjectAgentRuntimeInput = {
17
17
  projectDir: string;
18
- adapter: RuntimeAdapter;
18
+ adapter?: RuntimeAdapter;
19
19
  config?: VeryfrontConfig | null;
20
20
  fsAdapter?: FileSystemAdapter;
21
21
  cacheKey?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/project/agent-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAKhE,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAIzE,OAAO,KAAK,EACV,8BAA8B,EAE/B,MAAM,gCAAgC,CAAC;AAKxC,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,aAAa,CAAC;AACtD,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,qCAAqC,CAAC;AAO7C,kEAAkE;AAClE,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAE1E,yEAAyE;AACzE,MAAM,MAAM,oCAAoC,GAAG;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,gCAAgC,GAAG;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yFAAyF;IACzF,uBAAuB,CAAC,EAAE,+BAA+B,CAAC;CAC3D,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,4BAA4B,GAAG,eAAe,GAAG;IAC3D,uBAAuB,EAAE,+BAA+B,CAAC;CAC1D,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,OAAO,EAAE,IAAI,CAAC,4BAA4B,EAAE,yBAAyB,CAAC,EACtE,EAAE,EAAE,MAAM,CAAC,GACV,CAAC,CAEH;AA8CD,8CAA8C;AAC9C,wBAAgB,kCAAkC,IAAI,IAAI,CAMzD;AAED,6CAA6C;AAC7C,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,4BAA4B,CAAC,CA+BvC;AAED,4DAA4D;AAC5D,wBAAgB,uCAAuC,CACrD,YAAY,EAAE,KAAK,EACnB,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAOT;AAED,kDAAkD;AAClD,wBAAsB,qCAAqC,CACzD,YAAY,EAAE,KAAK,GAClB,OAAO,CAAC,8BAA8B,CAAC,CA+BzC;AAED,wDAAwD;AACxD,wBAAgB,uCAAuC,CACrD,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,IAAI,GAAG,SAAS,GAClE,oCAAoC,CAgBtC;AAED,iEAAiE;AACjE,wBAAgB,4CAA4C,CAC1D,KAAK,EAAE,oCAAoC,GAC1C,MAAM,CAKR;AAED,sDAAsD;AACtD,wBAAgB,uCAAuC,CAAC,KAAK,EAAE;IAC7D,UAAU,EAAE,oCAAoC,CAAC;IACjD,MAAM,EAAE,8BAA8B,CAAC;CACxC,GAAG,MAAM,GAAG,IAAI,CAiBhB"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/project/agent-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAKhE,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAKzE,OAAO,KAAK,EACV,8BAA8B,EAE/B,MAAM,gCAAgC,CAAC;AAKxC,OAAO,KAAK,EAAE,KAAK,EAAe,MAAM,aAAa,CAAC;AACtD,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,qCAAqC,CAAC;AAO7C,kEAAkE;AAClE,MAAM,MAAM,8BAA8B,GAAG,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;AAE1E,yEAAyE;AACzE,MAAM,MAAM,oCAAoC,GAAG;IACjD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,gCAAgC,GAAG;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,MAAM,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yFAAyF;IACzF,uBAAuB,CAAC,EAAE,+BAA+B,CAAC;CAC3D,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,4BAA4B,GAAG,eAAe,GAAG;IAC3D,uBAAuB,EAAE,+BAA+B,CAAC;CAC1D,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,OAAO,EAAE,IAAI,CAAC,4BAA4B,EAAE,yBAAyB,CAAC,EACtE,EAAE,EAAE,MAAM,CAAC,GACV,CAAC,CAEH;AA8CD,8CAA8C;AAC9C,wBAAgB,kCAAkC,IAAI,IAAI,CAMzD;AAED,6CAA6C;AAC7C,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,4BAA4B,CAAC,CA+BvC;AAED,4DAA4D;AAC5D,wBAAgB,uCAAuC,CACrD,YAAY,EAAE,KAAK,EACnB,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAOT;AAED,kDAAkD;AAClD,wBAAsB,qCAAqC,CACzD,YAAY,EAAE,KAAK,GAClB,OAAO,CAAC,8BAA8B,CAAC,CA+BzC;AAED,wDAAwD;AACxD,wBAAgB,uCAAuC,CACrD,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,IAAI,GAAG,SAAS,GAClE,oCAAoC,CAgBtC;AAED,iEAAiE;AACjE,wBAAgB,4CAA4C,CAC1D,KAAK,EAAE,oCAAoC,GAC1C,MAAM,CAKR;AAED,sDAAsD;AACtD,wBAAgB,uCAAuC,CAAC,KAAK,EAAE;IAC7D,UAAU,EAAE,oCAAoC,CAAC;IACjD,MAAM,EAAE,8BAA8B,CAAC;CACxC,GAAG,MAAM,GAAG,IAAI,CAiBhB"}
@@ -3,6 +3,7 @@ import { clearTrackedAgents } from "../../discovery/discovery-utils.js";
3
3
  import { createProjectDiscoveryConfig } from "../../discovery/project-discovery-config.js";
4
4
  import { clearTranspileCache } from "../../discovery/transpiler.js";
5
5
  import { getConfig } from "../../config/index.js";
6
+ import { getLocalAdapter } from "../../platform/adapters/registry.js";
6
7
  import { clearMCPRegistry } from "../../mcp/index.js";
7
8
  import { workflowRegistry } from "../../workflow/registry.js";
8
9
  import { agentRegistry } from "../composition/index.js";
@@ -60,7 +61,7 @@ export async function discoverProjectAgentRuntime(input) {
60
61
  return await runWithEffectiveSourceIntegrationPolicy(input.sourceIntegrationPolicy, async () => {
61
62
  clearProjectAgentRuntimeRegistries();
62
63
  const config = input.config ??
63
- await getConfig(input.projectDir, input.adapter, input.cacheKey ? { cacheKey: input.cacheKey } : undefined);
64
+ await getConfig(input.projectDir, input.adapter ?? await getLocalAdapter(), input.cacheKey ? { cacheKey: input.cacheKey } : undefined);
64
65
  const discoveryOptions = createProjectDiscoveryConfig({
65
66
  projectDir: input.projectDir,
66
67
  config,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/runtime/index.ts"],"names":[],"mappings":"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"}
@@ -761,7 +761,7 @@ export class AgentRuntime {
761
761
  }
762
762
  this.status = "tool_execution";
763
763
  addSpanEvent(loopSpan, "tool_execution_start", { count: response.toolCalls.length });
764
- let mustLoadSkillFirst = !activeSkillPolicy &&
764
+ const mustLoadSkillFirstForStep = !activeSkillPolicy &&
765
765
  response.toolCalls.some((tc) => tc.toolName === LOAD_SKILL_TOOL_ID);
766
766
  for (const tc of response.toolCalls) {
767
767
  throwIfAborted(abortSignal);
@@ -830,7 +830,7 @@ export class AgentRuntime {
830
830
  toolCalls.push(toolCall);
831
831
  return;
832
832
  }
833
- const policyCheck = enforceSkillPolicy(tc.toolName, activeSkillPolicy, mustLoadSkillFirst, {
833
+ const policyCheck = enforceSkillPolicy(tc.toolName, activeSkillPolicy, mustLoadSkillFirstForStep, {
834
834
  hasSubmittedFormInput: hasSubmittedFormInputInLoop,
835
835
  skillToolAvailability: activeSkillToolAvailability,
836
836
  });
@@ -923,7 +923,6 @@ export class AgentRuntime {
923
923
  activeSkillToolAvailability = extractSkillToolAvailability(result) ??
924
924
  INACTIVE_SKILL_TOOL_AVAILABILITY;
925
925
  activeSkillDelegationOverrides = extractSkillDelegationOverrides(result);
926
- mustLoadSkillFirst = false;
927
926
  }
928
927
  activeSkillPolicy = removeFormInputAfterSubmission(tc.toolName, result, activeSkillId, activeSkillPolicy);
929
928
  if (isSubmittedFormInputExecutionResult(tc.toolName, result)) {
@@ -1163,7 +1162,7 @@ export class AgentRuntime {
1163
1162
  }
1164
1163
  this.status = "tool_execution";
1165
1164
  const streamedToolCalls = Array.from(state.toolCalls.values());
1166
- let mustLoadSkillFirst = !activeSkillPolicy &&
1165
+ const mustLoadSkillFirstForStep = !activeSkillPolicy &&
1167
1166
  streamedToolCalls.some((tc) => tc.name === LOAD_SKILL_TOOL_ID);
1168
1167
  for (const tc of streamedToolCalls) {
1169
1168
  throwIfAborted(abortSignal);
@@ -1220,7 +1219,6 @@ export class AgentRuntime {
1220
1219
  activeSkillToolAvailability = extractSkillToolAvailability(matchingResult.output) ??
1221
1220
  INACTIVE_SKILL_TOOL_AVAILABILITY;
1222
1221
  activeSkillDelegationOverrides = extractSkillDelegationOverrides(matchingResult.output);
1223
- mustLoadSkillFirst = false;
1224
1222
  }
1225
1223
  activeSkillPolicy = removeFormInputAfterSubmission(tc.name, matchingResult.output, activeSkillId, activeSkillPolicy);
1226
1224
  if (isSubmittedFormInputExecutionResult(tc.name, matchingResult.output)) {
@@ -1246,7 +1244,6 @@ export class AgentRuntime {
1246
1244
  activeSkillToolAvailability = extractSkillToolAvailability(persistedResult.result) ??
1247
1245
  INACTIVE_SKILL_TOOL_AVAILABILITY;
1248
1246
  activeSkillDelegationOverrides = extractSkillDelegationOverrides(persistedResult.result);
1249
- mustLoadSkillFirst = false;
1250
1247
  }
1251
1248
  activeSkillPolicy = removeFormInputAfterSubmission(tc.name, persistedResult.result, activeSkillId, activeSkillPolicy);
1252
1249
  if (isSubmittedFormInputExecutionResult(tc.name, persistedResult.result)) {
@@ -1288,7 +1285,7 @@ export class AgentRuntime {
1288
1285
  await this.recordToolError(toolCall, `Invalid tool arguments: ${capturedInput.parseError}`, controller, encoder, currentMessages, toolCalls);
1289
1286
  continue;
1290
1287
  }
1291
- const policyCheck = enforceSkillPolicy(tc.name, activeSkillPolicy, mustLoadSkillFirst, {
1288
+ const policyCheck = enforceSkillPolicy(tc.name, activeSkillPolicy, mustLoadSkillFirstForStep, {
1292
1289
  hasSubmittedFormInput: hasSubmittedFormInputInLoop,
1293
1290
  skillToolAvailability: activeSkillToolAvailability,
1294
1291
  });
@@ -1343,7 +1340,6 @@ export class AgentRuntime {
1343
1340
  activeSkillToolAvailability = extractSkillToolAvailability(result) ??
1344
1341
  INACTIVE_SKILL_TOOL_AVAILABILITY;
1345
1342
  activeSkillDelegationOverrides = extractSkillDelegationOverrides(result);
1346
- mustLoadSkillFirst = false;
1347
1343
  }
1348
1344
  activeSkillPolicy = removeFormInputAfterSubmission(tc.name, result, activeSkillId, activeSkillPolicy);
1349
1345
  if (isSubmittedFormInputExecutionResult(tc.name, result)) {
@@ -1 +1 @@
1
- {"version":3,"file":"server-data-fetcher.d.ts","sourceRoot":"","sources":["../../../src/src/data/server-data-fetcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAcxE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,iBAAiB;IAC5B,KAAK,CACH,UAAU,EAAE,YAAY,EACxB,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,UAAU,CAAC;IAuFtB;;OAEG;YACW,aAAa;IAqE3B;;;OAGG;IACH,OAAO,CAAC,QAAQ;CAGjB"}
1
+ {"version":3,"file":"server-data-fetcher.d.ts","sourceRoot":"","sources":["../../../src/src/data/server-data-fetcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAcxE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,iBAAiB;IAC5B,KAAK,CACH,UAAU,EAAE,YAAY,EACxB,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,UAAU,CAAC;IA2FtB;;OAEG;YACW,aAAa;IAqE3B;;;OAGG;IACH,OAAO,CAAC,QAAQ;CAGjB"}
@@ -15,7 +15,9 @@ export class ServerDataFetcher {
15
15
  }
16
16
  const pathname = context.url?.pathname ?? "unknown";
17
17
  const projectId = context.request?.headers?.get("x-project-id") ?? "default";
18
- const circuitBreaker = getCircuitBreaker(`data-fetch:${projectId}`, {
18
+ const isPrefetch = context.request?.headers?.get("x-veryfront-prefetch") === "1";
19
+ const breakerNamespace = isPrefetch ? "data-prefetch" : "data-fetch";
20
+ const circuitBreaker = getCircuitBreaker(`${breakerNamespace}:${projectId}`, {
19
21
  failureThreshold: 5,
20
22
  resetTimeoutMs: 30_000,
21
23
  successThreshold: 2,
@@ -55,6 +57,7 @@ export class ServerDataFetcher {
55
57
  serverLogger.warn("DATA_FETCH_CIRCUIT_OPEN circuit breaker open, failing fast", {
56
58
  pathname,
57
59
  projectId,
60
+ breakerNamespace,
58
61
  retryAfterMs: error.nextAttemptMs,
59
62
  });
60
63
  throw error;
@@ -79,6 +82,7 @@ export class ServerDataFetcher {
79
82
  "data.pathname": pathname,
80
83
  "data.timeout_ms": DATA_FETCH_TIMEOUT_MS,
81
84
  "data.project_id": projectId,
85
+ "data.prefetch": isPrefetch,
82
86
  "data.isolated": useIsolation,
83
87
  });
84
88
  }
@@ -1,9 +1,3 @@
1
- /**
2
- * Import Rewriter
3
- *
4
- * Transforms import statements for different runtime environments
5
- * (Deno, Node.js) and handles veryfront package resolution.
6
- */
7
1
  import { createFileSystem } from "../platform/compat/fs.js";
8
2
  export declare const DISCOVERY_GLOBAL_VERYFRONT_MODULES: readonly ["veryfront/agent", "veryfront/tool", "veryfront/platform", "veryfront/prompt", "veryfront/resource", "veryfront/embedding", "veryfront/knowledge", "veryfront/workflow", "veryfront/eval", "veryfront/metrics", "veryfront/schemas", "veryfront/integrations", "veryfront/chat/uploads"];
9
3
  interface DenoRewriteOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"import-rewriter.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/import-rewriter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,eAAO,MAAM,kCAAkC,oSAerC,CAAC;AAEX,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;CAClD;AAkHD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,MAAM,CA2BR;AAqFD;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EACvC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CA2PjB"}
1
+ {"version":3,"file":"import-rewriter.d.ts","sourceRoot":"","sources":["../../../src/src/discovery/import-rewriter.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,eAAO,MAAM,kCAAkC,oSAerC,CAAC;AAEX,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;CAClD;AAwHD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,MAAM,CA2BR;AAqFD;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,EAAE,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EACvC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAyRjB"}
@@ -4,6 +4,7 @@
4
4
  * Transforms import statements for different runtime environments
5
5
  * (Deno, Node.js) and handles veryfront package resolution.
6
6
  */
7
+ import * as dntShim from "../../_dnt.shims.js";
7
8
  import { isDenoCompiled } from "../platform/compat/runtime.js";
8
9
  import * as pathHelper from "../platform/compat/path/index.js";
9
10
  import { LRUCache } from "../utils/lru-wrapper.js";
@@ -93,6 +94,12 @@ function isUnprefixedNpmSpecifier(specifier) {
93
94
  // `import type` / `export type` lines reference types only; they get erased
94
95
  // by TypeScript and must not trigger filesystem resolution.
95
96
  const TYPE_ONLY_STATIC_RE = /(?:^|[\s;{}])(?:import|export)\s+type\b/;
97
+ function isNotFoundError(error) {
98
+ const DenoNotFound = dntShim.dntGlobalThis.Deno?.errors?.NotFound;
99
+ if (DenoNotFound && error instanceof DenoNotFound)
100
+ return true;
101
+ return error?.code === "ENOENT";
102
+ }
96
103
  function rewriteBareNpmImportsForDeno(code) {
97
104
  return code
98
105
  // `import x from "spec"`, `export { x } from "spec"`, `export * from "spec"`.
@@ -229,6 +236,7 @@ export async function rewriteDiscoveryImports(code, projectDir, fs, fileDir) {
229
236
  let transformed = code;
230
237
  try {
231
238
  const { pathToFileURL } = await import("node:url");
239
+ const projectRoot = pathHelper.resolve(projectDir);
232
240
  // Handle relative imports
233
241
  transformed = transformed.replace(/from\s+["'](\.\.\/[^"']+)["']/g, (_match, relativePath) => `from "${pathToFileURL(pathHelper.resolve(fileDir, relativePath)).href}"`);
234
242
  // Resolve a bare specifier (optionally with subpath) to a file:// URL,
@@ -238,14 +246,14 @@ export async function rewriteDiscoveryImports(code, projectDir, fs, fileDir) {
238
246
  // so a subsequent `npm install` of the missing dep is picked up
239
247
  // without a process restart.
240
248
  const resolvePackageToFileUrl = async (specifier) => {
241
- const cacheKey = `${projectDir}::${specifier}`;
249
+ const cacheKey = `${projectRoot}::${specifier}`;
242
250
  const cached = resolvedSpecifierCache.get(cacheKey);
243
251
  if (cached !== undefined)
244
252
  return cached;
245
253
  const { name: packageName, subpath } = splitPackageSubpath(specifier);
246
- let searchDir = projectDir;
254
+ let searchDir = projectRoot;
247
255
  for (let i = 0; i < 10; i++) {
248
- const packagePath = pathHelper.join(searchDir, "node_modules", packageName);
256
+ const packagePath = pathHelper.resolve(searchDir, "node_modules", packageName);
249
257
  const packageJsonPath = pathHelper.join(packagePath, "package.json");
250
258
  try {
251
259
  const pkgJson = JSON.parse(await fs.readTextFile(packageJsonPath));
@@ -357,40 +365,53 @@ export async function rewriteDiscoveryImports(code, projectDir, fs, fileDir) {
357
365
  .replace(new RegExp(`from\\s*["']${escapedSpecifier}["']`, "g"), `from "${resolvedUrl}"`)
358
366
  .replace(new RegExp(`import\\s*\\(\\s*["']${escapedSpecifier}["']\\s*\\)`, "g"), `import("${resolvedUrl}")`);
359
367
  };
360
- // Handle veryfront package imports
361
- let vfPackagePath = pathHelper.join(projectDir, "node_modules", "veryfront");
362
- let exportsMap = {};
363
- try {
364
- const vfPackageJsonPath = pathHelper.join(vfPackagePath, "package.json");
365
- const pkgJson = JSON.parse(await fs.readTextFile(vfPackageJsonPath));
366
- exportsMap = pkgJson.exports || {};
367
- }
368
- catch (_) {
369
- /* expected: veryfront package.json not found, fallback to deno.json search */
370
- // Search for deno.json in parent directories
371
- let searchDir = projectDir;
368
+ const findVeryfrontExportSource = async () => {
369
+ const nodePackagePath = pathHelper.resolve(projectRoot, "node_modules", "veryfront");
370
+ const vfPackageJsonPath = pathHelper.join(nodePackagePath, "package.json");
371
+ let hasNodePackagePath = false;
372
+ try {
373
+ await fs.stat(nodePackagePath);
374
+ hasNodePackagePath = true;
375
+ }
376
+ catch (error) {
377
+ if (!isNotFoundError(error)) {
378
+ return { kind: "present", packagePath: nodePackagePath, exportsMap: undefined };
379
+ }
380
+ /* expected: veryfront directory absent, fallback to deno.json search */
381
+ }
382
+ if (hasNodePackagePath) {
383
+ try {
384
+ const packageJsonText = await fs.readTextFile(vfPackageJsonPath);
385
+ const pkgJson = JSON.parse(packageJsonText);
386
+ return { kind: "present", packagePath: nodePackagePath, exportsMap: pkgJson.exports };
387
+ }
388
+ catch (_) {
389
+ return { kind: "present", packagePath: nodePackagePath, exportsMap: undefined };
390
+ }
391
+ }
392
+ // Search for deno.json in parent directories.
393
+ let searchDir = projectRoot;
372
394
  for (let i = 0; i < 5; i++) {
373
395
  try {
374
396
  const denoJsonPath = pathHelper.join(searchDir, "deno.json");
375
397
  const denoJson = JSON.parse(await fs.readTextFile(denoJsonPath));
376
- if (denoJson.name === "veryfront" && denoJson.exports) {
377
- exportsMap = denoJson.exports;
378
- vfPackagePath = searchDir;
379
- break;
398
+ if (denoJson.name === "veryfront" && "exports" in denoJson) {
399
+ return {
400
+ kind: "present",
401
+ packagePath: pathHelper.resolve(searchDir),
402
+ exportsMap: denoJson.exports,
403
+ };
380
404
  }
381
405
  }
382
406
  catch (_) {
383
407
  /* expected: deno.json not found at this level */
384
408
  }
385
- searchDir = pathHelper.dirname(searchDir);
409
+ const parent = pathHelper.dirname(searchDir);
410
+ if (parent === searchDir)
411
+ break;
412
+ searchDir = parent;
386
413
  }
387
- }
388
- const getExportPath = (entry) => {
389
- if (!entry)
390
- return null;
391
- if (typeof entry === "string")
392
- return entry;
393
- return entry.import ?? null;
414
+ return { kind: "absent" };
394
415
  };
395
416
  const veryfrontSpecifiers = new Set();
396
417
  for (const match of transformed.matchAll(/from\s+["'](veryfront(?:\/[^"']+)?)["']/g)) {
@@ -403,29 +424,40 @@ export async function rewriteDiscoveryImports(code, projectDir, fs, fileDir) {
403
424
  if (specifier)
404
425
  veryfrontSpecifiers.add(specifier);
405
426
  }
427
+ const veryfrontExportSource = await findVeryfrontExportSource();
428
+ const resolveVeryfrontExportToFileUrl = (specifier) => {
429
+ if (veryfrontExportSource.kind === "absent")
430
+ return { kind: "rejected" };
431
+ const subpath = specifier === "veryfront" ? "." : "./" + specifier.replace("veryfront/", "");
432
+ const exportPath = resolveExportPath(veryfrontExportSource.exportsMap, subpath);
433
+ if (!exportPath)
434
+ return { kind: "rejected" };
435
+ const packagePath = veryfrontExportSource.packagePath;
436
+ const resolvedPath = pathHelper.resolve(packagePath, exportPath);
437
+ const packagePathPrefix = packagePath.endsWith(pathHelper.SEPARATOR)
438
+ ? packagePath
439
+ : packagePath + pathHelper.SEPARATOR;
440
+ if (resolvedPath !== packagePath && !resolvedPath.startsWith(packagePathPrefix)) {
441
+ return { kind: "rejected" };
442
+ }
443
+ return { kind: "resolved", url: pathToFileURL(resolvedPath).href };
444
+ };
406
445
  for (const specifier of veryfrontSpecifiers) {
407
- const resolvedUrl = resolveRuntimeSpecifierToFileUrl(specifier);
408
- if (resolvedUrl) {
409
- transformed = rewriteResolvedSpecifierImports(transformed, specifier, resolvedUrl);
446
+ if (veryfrontExportSource.kind === "absent")
447
+ continue;
448
+ const result = resolveVeryfrontExportToFileUrl(specifier);
449
+ if (result.kind === "resolved") {
450
+ transformed = rewriteResolvedSpecifierImports(transformed, specifier, result.url);
451
+ }
452
+ }
453
+ if (veryfrontExportSource.kind === "absent") {
454
+ for (const specifier of veryfrontSpecifiers) {
455
+ const resolvedUrl = resolveRuntimeSpecifierToFileUrl(specifier);
456
+ if (resolvedUrl) {
457
+ transformed = rewriteResolvedSpecifierImports(transformed, specifier, resolvedUrl);
458
+ }
410
459
  }
411
460
  }
412
- // Rewrite veryfront subpath imports
413
- transformed = transformed.replace(/from\s+["'](veryfront\/[^"']+)["']/g, (match, fullSpecifier) => {
414
- const subpath = "./" + fullSpecifier.replace("veryfront/", "");
415
- const exportPath = getExportPath(exportsMap[subpath]);
416
- if (!exportPath)
417
- return match;
418
- const resolvedPath = pathHelper.join(vfPackagePath, exportPath);
419
- return `from "${pathToFileURL(resolvedPath).href}"`;
420
- });
421
- // Rewrite bare veryfront import
422
- transformed = transformed.replace(/from\s+["']veryfront["']/g, () => {
423
- const exportPath = getExportPath(exportsMap["."]);
424
- if (!exportPath)
425
- return 'from "veryfront"';
426
- const resolvedPath = pathHelper.join(vfPackagePath, exportPath);
427
- return `from "${pathToFileURL(resolvedPath).href}"`;
428
- });
429
461
  }
430
462
  catch (_) {
431
463
  /* expected: Node.js URL module unavailable in non-Node runtime */
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../../src/src/html/hydration-script-builder/templates/router.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cA6oC3B,CAAC"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../../../src/src/html/hydration-script-builder/templates/router.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cA4sC3B,CAAC"}