dsh-xdpool 0.0.0-stage → 2.1.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.
@@ -0,0 +1,49 @@
1
+ # Register the WorkBuddy XD Pool provider. Discovery is read-only: the plugin
2
+ # reuses the WorkBuddy desktop app's own sign-in files and never starts a
3
+ # separate OAuth flow. Requests rotate across every discovered account.
4
+ - insert:
5
+ - id: llm-xdpool
6
+ name: dsh-xdpool
7
+ # Bring up billion-context alongside us, so the card's billion page has a live
8
+ # compressor to read instead of asking the user to install a second plugin.
9
+ #
10
+ # WHY THIS ROW LIVES HERE
11
+ #
12
+ # billion-context is a full plugin in its own right: it owns a loopback proxy, a
13
+ # compaction lane and its own CLI. Nothing about it is a feature of this pool, and
14
+ # this layer must never configure it — the row below only asks the host to mount
15
+ # the package, and every other decision stays billion-context's.
16
+ #
17
+ # WHY IT IS NOT A DEPENDENCY OF OURS IN THE USUAL SENSE
18
+ #
19
+ # `dependencies` would make this a transitive requirement of the pool: upgrading
20
+ # the pool would silently move the compressor's version under a user who only
21
+ # ever installed the pool, and uninstalling the pool would take a feature the user
22
+ # may still be using. Declaring it optional keeps both directions under the
23
+ # user's control while still letting the host install it.
24
+ #
25
+ # THE DUPLICATE-MOUNT HAZARD, AND WHY IT IS SAFE HERE
26
+ #
27
+ # Mounting billion-context twice throws. The proxy provides a cordis service
28
+ # under its own name, and the host refuses a second registration
29
+ # (`service "…" has been registered at <…>`) rather than handing back the first
30
+ # one, so the loser dies inside its own `apply`. That is exactly the failure this
31
+ # pool already hit once with the shared sign-in channel pack, and it is why
32
+ # `src/index.ts` checks the loader for a live entry before mounting anything.
33
+ #
34
+ # This row does not need that guard of its own: the host's own loader disables a
35
+ # row whose module is already mounted elsewhere rather than letting it collide,
36
+ # and the row id is unique to this layer. If a user has already added
37
+ # billion-context to their profile themselves, this row is simply a second copy
38
+ # of an existing layer and the host resolves that, not us.
39
+ #
40
+ # THE ID IS OURS AND MUST STAY OURS
41
+ #
42
+ # `bili-native` is declared by billion-context's own patch. A non-insert patch
43
+ # replaces a row's whole config with no deep merge, so we must not restate its
44
+ # config here — we only ever insert a row, which is additive and safe. Naming
45
+ # this row `billion-context-xdpool` rather than `bili-native` keeps the two layers
46
+ # from ever addressing the same entry.
47
+ - insert:
48
+ - id: billion-context-xdpool
49
+ name: billion-context