@zenwave360/workspace-mcp 1.0.0-next.18.1 → 1.0.0-next.20.1

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/README.md CHANGED
@@ -434,6 +434,32 @@ Candidate and reference construction remains non-blocking on the common loader.
434
434
  `ManifestResolvedResource.referenceUri()` when a consumer needs a single URI-like reference,
435
435
  including a resource stored inside an archive.
436
436
 
437
+ ## Browsers and Web Workers
438
+
439
+ `manifest-core` and `manifest-graph` load and run in a browser or Web Worker with no Node runtime.
440
+ Supply the means of reading content: every manifest, `$ref`, document and artifact read goes
441
+ through the `DocumentLoader`s you pass, and nothing else is needed to load the library.
442
+
443
+ ```kotlin
444
+ val loader = ZenWaveManifestLoader(documentLoaders = listOf(myHostReader), archiveEntryLoader = null)
445
+ val manifest = loader.load("https://example.com/zenwave-architecture.yml")
446
+ val graph = ArchitectureGraphBuilder(loader).build(manifest).graph
447
+ ```
448
+
449
+ Ask what the platform offers before presenting a feature; asking never fails:
450
+
451
+ - `ManifestPlatform.capabilities()` / `isAvailable(ManifestPlatform.ARCHIVE_EXTRACTION)`: reading an
452
+ entry inside an archive (Maven Central/GitHub Packages JARs). Available on the JVM; not on JS unless
453
+ the host passes its own `ManifestArchiveEntryLoader`.
454
+ - `ManifestPlatform.name`: `"jvm"`, `"node"` or `"browser"`.
455
+ - `RefParserPlatform` (from `json-schema-ref-parser-kmp`): filesystem, classpath and HTTP reads,
456
+ reported separately by that library and with its own `CapabilityUnavailableException`.
457
+
458
+ A candidate that needs an unavailable manifest capability fails with
459
+ `ManifestCapabilityUnavailableException`, and the next content-resolution candidate is tried; if none
460
+ succeeds, the `ManifestResourceLoadException` names the capability. The build runs the JS test suites in headless Chromium (`jsBrowserTest`, part of
461
+ `check`; set `CHROME_BIN` if no Chrome, Chromium or Edge is found in a standard location).
462
+
437
463
  ## Kotlin module and verification
438
464
 
439
465
  `manifest-core` contains common parsing, diagnostics, interpolation, and candidate construction for JVM and JavaScript. JVM also provides Maven Central JAR entry extraction; JavaScript hosts can supply an archive-entry loader.