Compare commits
2
Commits
a154e6c26e
...
2d9797856d
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2d9797856d | ||
|
|
cc464afdfb |
No files matched your search
@@ -28,3 +28,6 @@ tsconfig.focus.json
|
|||||||
|
|
||||||
# Subagent-driven-development scratch (ledger, briefs, review packages)
|
# Subagent-driven-development scratch (ledger, briefs, review packages)
|
||||||
.superpowers/
|
.superpowers/
|
||||||
|
|
||||||
|
# Scratch modules written by tests that must resolve this workspace.
|
||||||
|
.tmp-tests/
|
||||||
@@ -237,7 +237,7 @@
|
|||||||
},
|
},
|
||||||
"packages/auth": {
|
"packages/auth": {
|
||||||
"name": "@wrnexus/auth",
|
"name": "@wrnexus/auth",
|
||||||
"version": "0.8.29",
|
"version": "0.8.32",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/authz": "workspace:*",
|
"@wrnexus/authz": "workspace:*",
|
||||||
"@wrnexus/captcha": "workspace:*",
|
"@wrnexus/captcha": "workspace:*",
|
||||||
@@ -322,7 +322,7 @@
|
|||||||
},
|
},
|
||||||
"packages/cli": {
|
"packages/cli": {
|
||||||
"name": "@wrnexus/cli",
|
"name": "@wrnexus/cli",
|
||||||
"version": "0.8.66",
|
"version": "0.8.70",
|
||||||
"bin": {
|
"bin": {
|
||||||
"wrnexus": "src/index.ts",
|
"wrnexus": "src/index.ts",
|
||||||
},
|
},
|
||||||
@@ -350,7 +350,7 @@
|
|||||||
},
|
},
|
||||||
"packages/compiler": {
|
"packages/compiler": {
|
||||||
"name": "@wrnexus/compiler",
|
"name": "@wrnexus/compiler",
|
||||||
"version": "0.8.27",
|
"version": "0.8.29",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/csr": "workspace:*",
|
"@wrnexus/csr": "workspace:*",
|
||||||
"@wrnexus/store": "workspace:*",
|
"@wrnexus/store": "workspace:*",
|
||||||
@@ -368,11 +368,11 @@
|
|||||||
},
|
},
|
||||||
"packages/core": {
|
"packages/core": {
|
||||||
"name": "@wrnexus/core",
|
"name": "@wrnexus/core",
|
||||||
"version": "0.8.13",
|
"version": "0.8.15",
|
||||||
},
|
},
|
||||||
"packages/csr": {
|
"packages/csr": {
|
||||||
"name": "@wrnexus/csr",
|
"name": "@wrnexus/csr",
|
||||||
"version": "0.8.38",
|
"version": "0.8.40",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
},
|
},
|
||||||
@@ -387,7 +387,7 @@
|
|||||||
},
|
},
|
||||||
"packages/dev-server": {
|
"packages/dev-server": {
|
||||||
"name": "@wrnexus/dev-server",
|
"name": "@wrnexus/dev-server",
|
||||||
"version": "0.8.62",
|
"version": "0.8.65",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/authz": "workspace:*",
|
"@wrnexus/authz": "workspace:*",
|
||||||
"@wrnexus/cache": "workspace:*",
|
"@wrnexus/cache": "workspace:*",
|
||||||
@@ -590,7 +590,7 @@
|
|||||||
},
|
},
|
||||||
"packages/payment": {
|
"packages/payment": {
|
||||||
"name": "@wrnexus/payment",
|
"name": "@wrnexus/payment",
|
||||||
"version": "0.8.6",
|
"version": "0.8.8",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/db": "workspace:*",
|
"@wrnexus/db": "workspace:*",
|
||||||
"@wrnexus/plugin": "workspace:*",
|
"@wrnexus/plugin": "workspace:*",
|
||||||
@@ -621,7 +621,7 @@
|
|||||||
},
|
},
|
||||||
"packages/pwa": {
|
"packages/pwa": {
|
||||||
"name": "@wrnexus/pwa",
|
"name": "@wrnexus/pwa",
|
||||||
"version": "0.8.9",
|
"version": "0.8.11",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/bun": "^1.3.14",
|
"@types/bun": "^1.3.14",
|
||||||
"typescript": "^6.0.3",
|
"typescript": "^6.0.3",
|
||||||
@@ -704,7 +704,7 @@
|
|||||||
},
|
},
|
||||||
"packages/ssr": {
|
"packages/ssr": {
|
||||||
"name": "@wrnexus/ssr",
|
"name": "@wrnexus/ssr",
|
||||||
"version": "0.8.9",
|
"version": "0.8.11",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
"@wrnexus/security": "workspace:*",
|
"@wrnexus/security": "workspace:*",
|
||||||
@@ -717,7 +717,7 @@
|
|||||||
},
|
},
|
||||||
"packages/styles": {
|
"packages/styles": {
|
||||||
"name": "@wrnexus/styles",
|
"name": "@wrnexus/styles",
|
||||||
"version": "0.8.20",
|
"version": "0.8.22",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
"@wrnexus/plugin": "workspace:*",
|
"@wrnexus/plugin": "workspace:*",
|
||||||
@@ -730,7 +730,10 @@
|
|||||||
},
|
},
|
||||||
"packages/test": {
|
"packages/test": {
|
||||||
"name": "@wrnexus/test",
|
"name": "@wrnexus/test",
|
||||||
"version": "0.8.12",
|
"version": "0.8.15",
|
||||||
|
"dependencies": {
|
||||||
|
"@wrnexus/core": "workspace:*",
|
||||||
|
},
|
||||||
},
|
},
|
||||||
"packages/tracking": {
|
"packages/tracking": {
|
||||||
"name": "@wrnexus/tracking",
|
"name": "@wrnexus/tracking",
|
||||||
@@ -746,7 +749,7 @@
|
|||||||
},
|
},
|
||||||
"packages/ui": {
|
"packages/ui": {
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.76",
|
"version": "0.8.80",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/core": "workspace:*",
|
"@wrnexus/core": "workspace:*",
|
||||||
},
|
},
|
||||||
@@ -781,7 +784,7 @@
|
|||||||
},
|
},
|
||||||
"packages/viewer": {
|
"packages/viewer": {
|
||||||
"name": "@wrnexus/viewer",
|
"name": "@wrnexus/viewer",
|
||||||
"version": "0.8.9",
|
"version": "0.8.12",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@wrnexus/block-editor": "workspace:*",
|
"@wrnexus/block-editor": "workspace:*",
|
||||||
"@wrnexus/plugin": "workspace:*",
|
"@wrnexus/plugin": "workspace:*",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/auth",
|
"name": "@wrnexus/auth",
|
||||||
"version": "0.8.29",
|
"version": "0.8.32",
|
||||||
"description": "Complete authentication, account security, MFA, passkeys, recovery, devices, risk, and audit system for WRNexusJS.",
|
"description": "Complete authentication, account security, MFA, passkeys, recovery, devices, risk, and audit system for WRNexusJS.",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"sideEffects": false,
|
"sideEffects": false,
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/cli",
|
"name": "@wrnexus/cli",
|
||||||
"version": "0.8.66",
|
"version": "0.8.70",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
".": "./src/index.ts",
|
".": "./src/index.ts",
|
||||||
"./workspace": "./src/workspace.ts",
|
"./workspace": "./src/workspace.ts",
|
||||||
|
"./runtime-connections": "./src/runtime-connections.ts",
|
||||||
"./test-setup": "./src/test-setup.ts"
|
"./test-setup": "./src/test-setup.ts"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/compiler",
|
"name": "@wrnexus/compiler",
|
||||||
"version": "0.8.27",
|
"version": "0.8.29",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,29 +1,20 @@
|
|||||||
import { afterEach, expect, test } from "bun:test";
|
import { afterEach, expect, test } from "bun:test";
|
||||||
import { mkdirSync, mkdtempSync, rmSync, symlinkSync, writeFileSync } from "node:fs";
|
import { mkdirSync, mkdtempSync, rmSync, writeFileSync } from "node:fs";
|
||||||
import { tmpdir } from "node:os";
|
import { tmpdir } from "node:os";
|
||||||
import { join } from "node:path";
|
import { join } from "node:path";
|
||||||
import { parse } from "@wrnexus/syntax";
|
import { parse } from "@wrnexus/syntax";
|
||||||
import { runWithRequestContext } from "@wrnexus/core";
|
import { runWithRequestContext } from "@wrnexus/core";
|
||||||
import { generate } from "../src/codegen.ts";
|
import { generate } from "../src/codegen.ts";
|
||||||
|
|
||||||
// The generated module dynamically imported below is written to an OS
|
// The generated module dynamically imported below resolves "@wrnexus/core"
|
||||||
// tmpdir with no node_modules of its own, so Node's bare-specifier
|
// by walking up from its own directory, so it is written inside the repo
|
||||||
// resolution for "@wrnexus/core" would otherwise walk up to whatever
|
// rather than an OS tmpdir: the walk then reaches this workspace's
|
||||||
// (possibly stale, globally-installed) copy happens to sit outside the
|
// node_modules and loads the very same module instance the test itself
|
||||||
// workspace. Symlink the workspace package in so it resolves to the real,
|
// holds. That identity is what these tests rest on -- the request context
|
||||||
// currently-built `@wrnexus/core` — the same one every other package in
|
// lives in an AsyncLocalStorage inside `@wrnexus/core`, and a second copy of
|
||||||
// this repo gets via its own `node_modules/@wrnexus/core` symlink.
|
// the package (which is what a junction from another volume produced) has a
|
||||||
const WORKSPACE_CORE = join(import.meta.dir, "../../core");
|
// store of its own that the test could never populate.
|
||||||
|
const WORKSPACE_TMP = join(import.meta.dir, "../../../.tmp-tests");
|
||||||
function linkWorkspaceCore(root: string): void {
|
|
||||||
const scopeDir = join(root, "node_modules", "@wrnexus");
|
|
||||||
mkdirSync(scopeDir, { recursive: true });
|
|
||||||
symlinkSync(
|
|
||||||
WORKSPACE_CORE,
|
|
||||||
join(scopeDir, "core"),
|
|
||||||
process.platform === "win32" ? "junction" : "dir",
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
const ROOT_TSCONFIG = join(import.meta.dir, "../../../tsconfig.json").replace(/\\/g, "/");
|
const ROOT_TSCONFIG = join(import.meta.dir, "../../../tsconfig.json").replace(/\\/g, "/");
|
||||||
// The repo's own tsc, not a `bunx`-fetched one — `bunx tsc` can resolve an
|
// The repo's own tsc, not a `bunx`-fetched one — `bunx tsc` can resolve an
|
||||||
@@ -69,10 +60,9 @@ function typecheckGenerated(source: string): { ok: boolean; output: string } {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function importServerModule(source: string): Promise<any> {
|
async function importServerModule(source: string): Promise<any> {
|
||||||
const root = mkdtempSync(join(tmpdir(), "wrnexus-apis-server-exec-"));
|
mkdirSync(WORKSPACE_TMP, { recursive: true });
|
||||||
|
const root = mkdtempSync(join(WORKSPACE_TMP, "apis-server-exec-"));
|
||||||
roots.push(root);
|
roots.push(root);
|
||||||
mkdirSync(root, { recursive: true });
|
|
||||||
linkWorkspaceCore(root);
|
|
||||||
const file = join(root, "page.ts");
|
const file = join(root, "page.ts");
|
||||||
writeFileSync(file, source);
|
writeFileSync(file, source);
|
||||||
return import(`${file.replace(/\\/g, "/")}?t=${Date.now()}`);
|
return import(`${file.replace(/\\/g, "/")}?t=${Date.now()}`);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/core",
|
"name": "@wrnexus/core",
|
||||||
"version": "0.8.13",
|
"version": "0.8.15",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/csr",
|
"name": "@wrnexus/csr",
|
||||||
"version": "0.8.38",
|
"version": "0.8.40",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/dev-server",
|
"name": "@wrnexus/dev-server",
|
||||||
"version": "0.8.62",
|
"version": "0.8.65",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/payment",
|
"name": "@wrnexus/payment",
|
||||||
"version": "0.8.6",
|
"version": "0.8.8",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/pwa",
|
"name": "@wrnexus/pwa",
|
||||||
"version": "0.8.9",
|
"version": "0.8.11",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"description": "Service workers, manifests, offline queues, background sync, push, and conflict resolution for WRNexusJS.",
|
"description": "Service workers, manifests, offline queues, background sync, push, and conflict resolution for WRNexusJS.",
|
||||||
"main": "./src/index.ts",
|
"main": "./src/index.ts",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/ssr",
|
"name": "@wrnexus/ssr",
|
||||||
"version": "0.8.9",
|
"version": "0.8.11",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/styles",
|
"name": "@wrnexus/styles",
|
||||||
"version": "0.8.20",
|
"version": "0.8.22",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
"exports": {
|
"exports": {
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/test",
|
"name": "@wrnexus/test",
|
||||||
"version": "0.8.12",
|
"version": "0.8.15",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
"dependencies": {
|
||||||
|
"@wrnexus/core": "workspace:*"
|
||||||
|
},
|
||||||
"exports": {
|
"exports": {
|
||||||
".": "./src/index.ts"
|
".": "./src/index.ts"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/ui",
|
"name": "@wrnexus/ui",
|
||||||
"version": "0.8.76",
|
"version": "0.8.80",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "@wrnexus/viewer",
|
"name": "@wrnexus/viewer",
|
||||||
"version": "0.8.9",
|
"version": "0.8.12",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
|
"sideEffects": true,
|
||||||
"description": "Read-only file previews with bounded loading and graceful fallback.",
|
"description": "Read-only file previews with bounded loading and graceful fallback.",
|
||||||
"main": "./src/index.ts",
|
"main": "./src/index.ts",
|
||||||
"types": "./src/index.ts",
|
"types": "./src/index.ts",
|
||||||
|
|||||||
Reference in new issue
Block a user