@lotics/cli 0.90.0 → 0.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/src/cli.js CHANGED
@@ -30642,7 +30642,7 @@ import { spawn as spawn2 } from "node:child_process";
30642
30642
  import { tmpdir } from "node:os";
30643
30643
 
30644
30644
  // src/starter_template.ts
30645
- var STARTER_FALLBACK_UI_VERSION = "6.1.0";
30645
+ var STARTER_FALLBACK_UI_VERSION = "12.1.0";
30646
30646
  var STARTER_FALLBACK_SDK_VERSION = "0.52.0";
30647
30647
  var STARTER_REACT_NATIVE_VERSION = "0.85.3";
30648
30648
  var VITEST_SETUP_FILENAME = "vitest.setup.ts";
@@ -30795,6 +30795,7 @@ function buildStarterTemplate(args) {
30795
30795
  import { defineConfig } from "vite";
30796
30796
  import type { Plugin } from "vite";
30797
30797
  import react from "@vitejs/plugin-react";
30798
+ import { loticsOptimizeDeps } from "@lotics/ui/vite";
30798
30799
 
30799
30800
  // @lotics/ui/icon.tsx deep-imports \`lucide-react-native/dist/esm/icons/<name>\`.
30800
30801
  // lucide-react-native's \`exports\` map lists only "." and "./icons", so a strict
@@ -30855,43 +30856,15 @@ export default defineConfig({
30855
30856
  dedupe: ["react", "react-dom", "react-native-web"],
30856
30857
  },
30857
30858
  optimizeDeps: {
30858
- // \`react-native-svg\` (used by @lotics/ui's svg charts \u2014 PieChart, LineChart,
30859
- // Sparkline, RingGauge) ships a named-export entry Vite's dev optimizer won't
30860
- // resolve unbundled ("does not provide an export named 'parse'"), blanking the
30861
- // iframe the moment one of those charts renders. Pre-bundling it fixes the
30862
- // interop. Production build (rollup) resolves it without this \u2014 dev-only.
30863
- //
30864
- // react-native-web itself is force-prebundled (folds its core CJS deps like
30865
- // @react-native/normalize-colors into one interop'd chunk), and the deep
30866
- // subpaths it reaches via *default* imports (e.g. @react-native-picker's web
30867
- // <select> build) are each pre-bundled into an ESM shim \u2014 Vite's dev optimizer
30868
- // otherwise serves them without a synthesized default export ("does not
30869
- // provide an export named 'default'"), blanking the iframe. (Production/rollup
30870
- // resolves the interop already, so this is dev-only.)
30871
- //
30872
- // \`react-markdown\` (@lotics/ui's Markdown renderer, reached by AgentRun and
30873
- // any markdown surface) pulls a transitive CJS dep, \`style-to-js\`, whose
30874
- // default export the dev optimizer won't synthesize unbundled ("does not
30875
- // provide an export named 'default'") \u2014 blanking the iframe the moment a
30876
- // markdown component mounts. Pre-bundling react-markdown folds the whole
30877
- // subtree (incl. style-to-js) into one interop'd chunk. It is a regular dep
30878
- // of @lotics/ui (hoisted), so it needs no package.json entry here. (The GFM
30879
- // plugin @lotics/ui composes is pure ESM \u2014 no CJS interop to force.)
30880
- include: [
30881
- "react-native-svg",
30882
- "react-markdown",
30883
- "react-native-web", "@react-native/normalize-colors",
30884
- "inline-style-prefixer/lib/createPrefixer",
30885
- "inline-style-prefixer/lib/plugins/crossFade",
30886
- "inline-style-prefixer/lib/plugins/imageSet",
30887
- "inline-style-prefixer/lib/plugins/logical",
30888
- "inline-style-prefixer/lib/plugins/position",
30889
- "inline-style-prefixer/lib/plugins/sizing",
30890
- "inline-style-prefixer/lib/plugins/transition",
30891
- "postcss-value-parser", "fbjs/lib/invariant", "fbjs/lib/warning",
30892
- "styleq", "styleq/transform-localize-style",
30893
- "react", "react-dom", "react-dom/client", "nullthrows",
30894
- ],
30859
+ // The dev dep-optimizer must pre-bundle @lotics/ui's RN-ecosystem + markdown
30860
+ // CJS-interop deps or \`lotics app dev\` blanks the iframe ("does not provide an
30861
+ // export named 'default'/'parse'"). Dev-ONLY: the prod rollup build resolves the
30862
+ // interop without it, so typecheck/lint/build stay green while the dev iframe
30863
+ // goes blank. The canonical list ships WITH @lotics/ui as \`loticsOptimizeDeps\`
30864
+ // (imported above) so it can never drift from what the kit's transitive deps
30865
+ // require across a major bump \u2014 the per-family rationale lives in that module.
30866
+ // To add app-specific entries, spread: include: [...loticsOptimizeDeps, "my-dep"].
30867
+ include: loticsOptimizeDeps,
30895
30868
  // The dep optimizer pre-bundles deps with a SEPARATE esbuild pass that
30896
30869
  // top-level \`define\` doesn't always reach, so a pre-bundled RN dep can
30897
30870
  // still hit \`__DEV__ is not defined\` under \`lotics app dev\`. Define it
@@ -86,7 +86,9 @@ question without ever loading the rest. Structure your content so it works:
86
86
 
87
87
  Send only the fields you're changing. Content edits are **diffs**, not a full rewrite: pass an
88
88
  `edits` array (replace / insert / append operations) plus the `expected_version` you got from
89
- `read_knowledge` (optimistic concurrency — a stale version is rejected). Refine structure as you
89
+ `read_knowledge` (optimistic concurrency — a stale version is rejected). Over the CLI, the default
90
+ `read_knowledge` text output omits the version — read `current_version` from `lotics run read_knowledge … --json`.
91
+ Refine structure as you
90
92
  learn what users actually ask: add the synonym that failed to match, split the section that was
91
93
  too coarse to grep. See `lotics tools update_knowledge` for the edit shape.
92
94
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lotics/cli",
3
- "version": "0.90.0",
3
+ "version": "0.91.0",
4
4
  "description": "Lotics SDK and CLI for AI agents",
5
5
  "type": "module",
6
6
  "bin": {