feat: Phase 1 — extract the client (web SPA + desktop) to dtoro/oikos-web
Problem: the hexagonal refactor churns the backend tree for nine more phases; the UI delivery stack (web/ SPA, cmd/desktop Wails wrapper, compose/web image) must move to its own repo first so doc/layout rewrites land once on a backend-only tree. Change: - New repo git.hubris.network/dtoro/oikos-web (v0.33.0): web/, desktop/ (updateURL repointed to oikos-web releases), compose/, own CI (web + desktop jobs), own deploy script (CI-green gate, TOCTOU guard, version-tagged images, prune-to-3), own webhook receiver on :9798 + launchd unit, own compose project publishing the same 8091:80. - Cutover executed on mac-mini in order: oikos stack's web service stopped+removed, oikos-web project brought up on 8091; outer Caddy untouched (targets the published port) — serving + Authentik flow + /wails 404 quirk verified post-cutover. - Stripped from oikos: web/, cmd/desktop/, compose/web/, desktop CI workflow, ci.yml web job, Makefile ui/desktop/desktop-package/install targets, the compose web service, oikos-web from deploy.sh's fallback prune list; wails + go-keyring dropped from go.mod, vendor synced. - README / CONTRIBUTING / AGENTS.md / .agents dev+operations docs now point at the new repo; mbse + mascot design docs carry a path note. Risk: production SPA serving depends on the new pipeline now; rollback is versioned-image re-up of the old web service from a pre-split checkout (port 8091). Desktop builds installed before the split still check dtoro/oikos releases — one manual reinstall, noted in the oikos-web release notes. Verification: go vet, make test (race), make generate-check, golangci (no new findings; baseline down 400→365); post-cutover curls — localhost:8091 200, /wails/runtime.js 404, outer Caddy 302 Authentik.
This commit is contained in:
63
web/node_modules/vitest/dist/browser.d.ts
generated
vendored
Normal file
63
web/node_modules/vitest/dist/browser.d.ts
generated
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
import { C as CoverageProvider, b as CoverageProviderModule } from './chunks/reporters.nr4dxCkA.js';
|
||||
import { a as SerializedCoverageConfig, S as SerializedConfig } from './chunks/config.Cy0C388Z.js';
|
||||
import * as spy$1 from '@vitest/spy';
|
||||
import { DiffOptions } from '@vitest/expect';
|
||||
import { VitestExecutor } from './execute.js';
|
||||
export { collectTests, processError, startTests } from '@vitest/runner';
|
||||
import './chunks/environment.LoooBwUu.js';
|
||||
import 'node:stream';
|
||||
import 'vite';
|
||||
import '@vitest/utils';
|
||||
import '@vitest/pretty-format';
|
||||
import '@vitest/snapshot';
|
||||
import 'vite-node';
|
||||
import 'chai';
|
||||
import '@vitest/utils/source-map';
|
||||
import 'vite-node/client';
|
||||
import 'vite-node/server';
|
||||
import './chunks/benchmark.geERunq4.js';
|
||||
import '@vitest/runner/utils';
|
||||
import 'tinybench';
|
||||
import '@vitest/snapshot/manager';
|
||||
import 'node:fs';
|
||||
import '@vitest/snapshot/environment';
|
||||
import './chunks/worker.tN5KGIih.js';
|
||||
import 'node:vm';
|
||||
import '@vitest/mocker';
|
||||
import './chunks/mocker.cRtM890J.js';
|
||||
|
||||
function _mergeNamespaces(n, m) {
|
||||
m.forEach(function (e) {
|
||||
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
|
||||
if (k !== 'default' && !(k in n)) {
|
||||
var d = Object.getOwnPropertyDescriptor(e, k);
|
||||
Object.defineProperty(n, k, d.get ? d : {
|
||||
enumerable: true,
|
||||
get: function () { return e[k]; }
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
return Object.freeze(n);
|
||||
}
|
||||
|
||||
var spy = /*#__PURE__*/_mergeNamespaces({
|
||||
__proto__: null
|
||||
}, [spy$1]);
|
||||
|
||||
interface Loader {
|
||||
executeId: (id: string) => Promise<{
|
||||
default: CoverageProviderModule;
|
||||
}>;
|
||||
isBrowser?: boolean;
|
||||
}
|
||||
declare function getCoverageProvider(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<CoverageProvider | null>;
|
||||
declare function startCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
|
||||
declare function takeCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
|
||||
declare function stopCoverageInsideWorker(options: SerializedCoverageConfig | undefined, loader: Loader): Promise<unknown>;
|
||||
|
||||
declare function setupCommonEnv(config: SerializedConfig): Promise<void>;
|
||||
declare function loadDiffConfig(config: SerializedConfig, executor: VitestExecutor): Promise<DiffOptions | undefined>;
|
||||
declare function loadSnapshotSerializers(config: SerializedConfig, executor: VitestExecutor): Promise<void>;
|
||||
|
||||
export { spy as SpyModule, getCoverageProvider, loadDiffConfig, loadSnapshotSerializers, setupCommonEnv, startCoverageInsideWorker, stopCoverageInsideWorker, takeCoverageInsideWorker };
|
||||
Reference in New Issue
Block a user