@skaile/workspaces 4.23.3 → 4.25.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/CHANGELOG.md +14 -0
- package/dist/{asset-feeds-FINEX7SP.js → asset-feeds-72RJOE4E.js} +4 -4
- package/dist/{asset-feeds-FINEX7SP.js.map → asset-feeds-72RJOE4E.js.map} +1 -1
- package/dist/asset-manager/index.js +1 -1
- package/dist/{chunk-C2TJPNP2.js → chunk-253427M3.js} +3 -3
- package/dist/{chunk-C2TJPNP2.js.map → chunk-253427M3.js.map} +1 -1
- package/dist/{chunk-5CT42FXA.js → chunk-2JGUFDKZ.js} +3 -3
- package/dist/{chunk-5CT42FXA.js.map → chunk-2JGUFDKZ.js.map} +1 -1
- package/dist/{chunk-D5MX76BA.js → chunk-2N6NQUVB.js} +12 -8
- package/dist/chunk-2N6NQUVB.js.map +1 -0
- package/dist/{chunk-MC2MF4U5.js → chunk-2OLNNQKT.js} +2 -2
- package/dist/chunk-2OLNNQKT.js.map +1 -0
- package/dist/{chunk-KES5T25I.js → chunk-EZOFQW3G.js} +773 -240
- package/dist/chunk-EZOFQW3G.js.map +1 -0
- package/dist/{chunk-SDUVIZPA.js → chunk-H4XNX2FG.js} +2 -2
- package/dist/{chunk-SDUVIZPA.js.map → chunk-H4XNX2FG.js.map} +1 -1
- package/dist/{chunk-PPMHNT6A.js → chunk-IHFQTKUP.js} +2 -2
- package/dist/{chunk-PPMHNT6A.js.map → chunk-IHFQTKUP.js.map} +1 -1
- package/dist/{chunk-FYLDR3RQ.js → chunk-OQRSSFTU.js} +3 -3
- package/dist/{chunk-FYLDR3RQ.js.map → chunk-OQRSSFTU.js.map} +1 -1
- package/dist/{chunk-SY2QGPRX.js → chunk-SB4U7HLP.js} +6 -6
- package/dist/{chunk-SY2QGPRX.js.map → chunk-SB4U7HLP.js.map} +1 -1
- package/dist/{chunk-EVH2X3QF.js → chunk-SSODNBSC.js} +3 -3
- package/dist/{chunk-EVH2X3QF.js.map → chunk-SSODNBSC.js.map} +1 -1
- package/dist/{chunk-246NSTR7.js → chunk-XZCRIPWT.js} +3 -3
- package/dist/{chunk-246NSTR7.js.map → chunk-XZCRIPWT.js.map} +1 -1
- package/dist/{chunk-OCZGKA2Q.js → chunk-YR3CLEQG.js} +6 -6
- package/dist/{chunk-OCZGKA2Q.js.map → chunk-YR3CLEQG.js.map} +1 -1
- package/dist/cli/index.js +29 -29
- package/dist/connectors/config.js +1 -1
- package/dist/connectors/index.js +2 -2
- package/dist/connectors/src/connector-manager.d.ts +4 -4
- package/dist/connectors/src/connector-manager.d.ts.map +1 -1
- package/dist/connectors/src/connector-prompt.d.ts.map +1 -1
- package/dist/connectors/src/connector-types.d.ts +7 -0
- package/dist/connectors/src/connector-types.d.ts.map +1 -1
- package/dist/{ensure-sources-LJH3SLWG.js → ensure-sources-HEOQJ4CS.js} +4 -4
- package/dist/{ensure-sources-LJH3SLWG.js.map → ensure-sources-HEOQJ4CS.js.map} +1 -1
- package/dist/factory-assets/connectors/box.js +2 -2
- package/dist/factory-assets/connectors/deploy.js +2 -2
- package/dist/factory-assets/connectors/devserver.js +2 -2
- package/dist/factory-assets/connectors/flow/adapter.js +2 -2
- package/dist/factory-assets/connectors/flow/run-flow.js +3 -3
- package/dist/factory-assets/connectors/flow.js +2 -2
- package/dist/factory-assets/connectors/git/CONNECTOR.md +63 -6
- package/dist/factory-assets/connectors/git/driver.d.ts +111 -27
- package/dist/factory-assets/connectors/git/driver.d.ts.map +1 -1
- package/dist/factory-assets/connectors/git.js +2 -2
- package/dist/factory-assets/connectors/gmail.js +2 -2
- package/dist/factory-assets/connectors/googledrive.js +2 -2
- package/dist/factory-assets/connectors/local.js +2 -2
- package/dist/factory-assets/connectors/mattermost.js +2 -2
- package/dist/factory-assets/connectors/memory.js +2 -2
- package/dist/factory-assets/connectors/minio.js +2 -2
- package/dist/factory-assets/connectors/postgres.js +2 -2
- package/dist/factory-assets/connectors/s3.js +2 -2
- package/dist/factory-assets/connectors/sharepoint.js +2 -2
- package/dist/factory-assets/connectors/sqlite.js +2 -2
- package/dist/factory-assets/connectors/static-server.js +2 -2
- package/dist/factory-assets/connectors/tunnel.js +2 -2
- package/dist/factory-assets/connectors/webdav.js +2 -2
- package/dist/factory-assets/connectors/xstate-store.js +2 -2
- package/dist/factory-assets/connectors/xstate.js +2 -2
- package/dist/{helpers-HGDT6O4S.js → helpers-VZJCQSLY.js} +4 -4
- package/dist/{helpers-HGDT6O4S.js.map → helpers-VZJCQSLY.js.map} +1 -1
- package/dist/{library-publish-B3OVNRMC.js → library-publish-VBLSTO7S.js} +6 -6
- package/dist/{library-publish-B3OVNRMC.js.map → library-publish-VBLSTO7S.js.map} +1 -1
- package/dist/{open-library-DFK6L43P.js → open-library-SJ54ZBGJ.js} +5 -5
- package/dist/{open-library-DFK6L43P.js.map → open-library-SJ54ZBGJ.js.map} +1 -1
- package/dist/{project-JTPQ5R7E.js → project-GLZR4SLT.js} +5 -5
- package/dist/{project-JTPQ5R7E.js.map → project-GLZR4SLT.js.map} +1 -1
- package/dist/runner/index.js +5 -5
- package/dist/runner/src/serve.d.ts +4 -1
- package/dist/runner/src/serve.d.ts.map +1 -1
- package/dist/sdk/asset-manager.js +1 -1
- package/dist/sdk/index.js +5 -5
- package/dist/sdk/runner.js +5 -5
- package/dist/{setup-IVBCYLJ4.js → setup-X73AWRMD.js} +5 -5
- package/dist/{setup-IVBCYLJ4.js.map → setup-X73AWRMD.js.map} +1 -1
- package/dist/{source-AK3GBWT7.js → source-HYXJO2IE.js} +6 -6
- package/dist/{source-AK3GBWT7.js.map → source-HYXJO2IE.js.map} +1 -1
- package/dist/{source-manifest-publish-4LPTEJOW.js → source-manifest-publish-V5LCVOYZ.js} +7 -7
- package/dist/{source-manifest-publish-4LPTEJOW.js.map → source-manifest-publish-V5LCVOYZ.js.map} +1 -1
- package/dist/tui/index.js +5 -5
- package/dist/workspace-plugin/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-D5MX76BA.js.map +0 -1
- package/dist/chunk-KES5T25I.js.map +0 -1
- package/dist/chunk-MC2MF4U5.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { ClassifierSubpromptRunner, FlowAdapter, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, buildFlowPromptEvent, classifierQuestion, createConnector, describeFlowOperations, driveOrchestratorTurn } from '../../chunk-
|
|
1
|
+
export { ClassifierSubpromptRunner, FlowAdapter, SessionInlineSubFlowRunner, SessionNodeExecutor, SessionSubpromptRunner, buildFlowPromptEvent, classifierQuestion, createConnector, describeFlowOperations, driveOrchestratorTurn } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -121,9 +121,57 @@ field (default off):
|
|
|
121
121
|
|
|
122
122
|
| Tier | When | What the agent sees |
|
|
123
123
|
|---|---|---|
|
|
124
|
-
| Tier 1 (default) | `exposeAccessToken: false` | No
|
|
124
|
+
| Tier 1 (default) | `exposeAccessToken: false` | No credential. The driver writes the token nowhere on disk: `origin` holds the plain URL, and the driver's own git gets the token per command (see below). The agent's `git push` / `git pull` against the remote fail with "could not read Username"; the agent pushes and pulls through the `push` / `pull` / `fetch` ops instead (see Operations). A clone made by an older driver, whose `origin` URL still carries `x-access-token:<token>@`, is rewritten to the plain URL on the next connect. |
|
|
125
125
|
| Tier 2 (opt-in) | `exposeAccessToken: true` | Short-lived access token written to `<workspace>/.skaile/managed-gitconfig` + `git-credentials`. Agent native git CLI works for the mount's host. |
|
|
126
126
|
|
|
127
|
+
**How the driver's own git authenticates (both tiers).** Every clone, fetch, pull, push,
|
|
128
|
+
`ls-remote` and submodule update the driver runs gets the token only in that child process's
|
|
129
|
+
environment: `GIT_CONFIG_COUNT` / `GIT_CONFIG_KEY_n` / `GIT_CONFIG_VALUE_n` set
|
|
130
|
+
`http.<scheme>://<host>/.extraHeader` to `Authorization: Basic <x-access-token:token>`. The
|
|
131
|
+
header is scoped to the declared remote's host (not its path, so a relative submodule on the
|
|
132
|
+
same host authenticates too). Those commands also carry `-c credential.helper=`,
|
|
133
|
+
`-c core.hooksPath=/dev/null`, `-c core.askPass=`, `-c core.fsmonitor=false`,
|
|
134
|
+
`-c core.alternateRefsCommand=`, `-c push.gpgSign=false`, `-c gc.auto=0`,
|
|
135
|
+
`-c maintenance.auto=false`, `GIT_ALLOW_PROTOCOL=https` (so an `insteadOf` rule cannot turn
|
|
136
|
+
origin into an `ext::` command, or a file / ssh URL with its `uploadpack` / `sshCommand`),
|
|
137
|
+
`GIT_TERMINAL_PROMPT=0` and an empty `GIT_ASKPASS`, because `.git/config` is agent-writable
|
|
138
|
+
and each of those would otherwise run an agent-chosen program inside a git child that holds the
|
|
139
|
+
token in its environment. The header's host scope protects the token only while TLS is
|
|
140
|
+
verified, so when a config file outside system scope sets `http.[<url>.]sslVerify`,
|
|
141
|
+
`sslCAInfo` or `sslCAPath`, the driver sends no token at all and logs a warning naming the
|
|
142
|
+
key; the command then fails on a private remote. Submodule git dirs are checked too, since fetch, pull and submodule update recurse into
|
|
143
|
+
them: every git dir under `.git/modules/` and every git dir a submodule's `.git` file points at,
|
|
144
|
+
each read through `git --git-dir=<dir> config --includes` so `includeIf` resolves as it will
|
|
145
|
+
in that submodule. Only a missing path counts as "no submodules"; a listing error, a filesystem
|
|
146
|
+
deadline or an oversized tree withholds the token. The driver's clone, fetch, pull, push and
|
|
147
|
+
submodule update also carry
|
|
148
|
+
`-c submodule.recurse=false -c fetch.recurseSubmodules=false -c push.recurseSubmodules=no`, so
|
|
149
|
+
they never recurse into a gitlink `.gitmodules` does not list (one the scan does not see), even
|
|
150
|
+
when `.git/config` or a submodule's own config turns recursion on (`-c` reaches the fetch git
|
|
151
|
+
runs inside a submodule through `GIT_CONFIG_PARAMETERS`). Submodule content still arrives through the explicit
|
|
152
|
+
`submodule update` the driver runs after every ref-changing operation. Because hooks are off, a driver push does not
|
|
153
|
+
run git-lfs's `pre-push` either (git-lfs is not in the agent image today).
|
|
154
|
+
|
|
155
|
+
**Steps that run repo-controlled programs never hold the token.** A checkout or a merge runs
|
|
156
|
+
the programs the config and `.gitattributes` name (smudge / clean filters, merge drivers), so
|
|
157
|
+
the driver splits them off the network command: a pull is `git fetch origin <branch>` with the
|
|
158
|
+
token, then `git merge --no-edit FETCH_HEAD` without it (a clean divergence is merged, where a
|
|
159
|
+
bare `git pull` without `pull.rebase` would refuse; a conflicting one is aborted, see **sync**);
|
|
160
|
+
the first clone is `--no-checkout`, followed by
|
|
161
|
+
a tokenless `git checkout -f <branch>` and the submodule update. The submodule update is the one
|
|
162
|
+
network command that also checks out: it runs with `--checkout`, which overrides a
|
|
163
|
+
`submodule.<name>.update` (whose `!command` form would otherwise run, nested submodules
|
|
164
|
+
included), and the driver withholds the token from it when a config outside system scope,
|
|
165
|
+
including a submodule's, defines any `filter.<name>.smudge` / `clean` / `process` (git-lfs's
|
|
166
|
+
included: git runs the value through `sh -c`, so a git-lfs-looking value can carry more) or a
|
|
167
|
+
git-lfs transfer agent (`lfs.customtransfer.<name>.path`, `lfs.standalonetransferagent`). With
|
|
168
|
+
a token, `GIT_ALLOW_PROTOCOL=https` also applies to submodules: one declared with an `ssh://`,
|
|
169
|
+
`git@host:`, `http://` or `file://` URL fails with "transport not allowed", which the submodule
|
|
170
|
+
update only logs as a warning, so the checkout comes up without it. A submodule that fails on
|
|
171
|
+
the first clone no longer fails the connect either; it is logged, as on every later sync. Not covered: the environment of a running git child is readable by a process of
|
|
172
|
+
the same uid (`/proc/<pid>/environ`); and the TLS and filter checks read the config just before
|
|
173
|
+
each command, so a change made between that read and the command is not seen.
|
|
174
|
+
|
|
127
175
|
`auth:` is **required** to use a provider-prefixed grammar:
|
|
128
176
|
|
|
129
177
|
| Syntax | Refresh capability |
|
|
@@ -142,20 +190,29 @@ migration error pointing at this doc.
|
|
|
142
190
|
- **reused local session branch**: When the local session branch already exists (a warm checkout) and origin has the branch, the driver sets the upstream to `origin/<sessionBranch>` and then:
|
|
143
191
|
- fast-forwards the local branch (`merge --ff-only`) when it is an ancestor of `origin/<sessionBranch>` (another node pushed newer work);
|
|
144
192
|
- keeps the local branch and logs a warning when it has commits that origin does not have. The driver never rewrites it. When origin also has commits that the local branch does not have (the branches diverged, for example after an older driver rewrote the branch), the driver merges `origin/<sessionBranch>` in.
|
|
145
|
-
When origin does not have the branch, the local branch is used as it is. For Tier-
|
|
193
|
+
When origin does not have the branch, the local branch is used as it is. For Tier-2, a failed first fetch is retried after origin is aligned with the declared URL, and the retry applies the same rules.
|
|
146
194
|
- **periodic fetch with `sync.autoRebase`**: The driver keeps the session branch current with `origin/<base>`, but it never rewrites published commits. Each tick fetches the session branch from origin. Only when origin does not have it is the branch rebased onto `origin/<base>`, as before. In all other cases (origin has it, or the fetch failed) the driver merges `origin/<base>` in. A merge can run with uncommitted changes that do not touch the merged files, where a rebase refuses. Merge conflicts are handled as on close: keep "ours" and save "theirs" as `.conflict` files. When a refspec names a branch that origin does not have (other than the base), the tick removes that refspec and its stale tracking ref, then fetches again. Until the branch is pushed, `sync_status` then reports `hasUpstream: false`.
|
|
147
195
|
- **driver push of a session branch** (hibernate, close, auto-commit): When `origin/<sessionBranch>` holds commits that the local branch does not have, the driver first merges them in. The push is then a fast-forward and never needs a force.
|
|
148
|
-
- **unmount**: Stops periodic fetch
|
|
149
|
-
- **sync**: Pulls from origin on the active branch.
|
|
196
|
+
- **unmount**: Stops periodic fetch, auto-commit and credential-refresh timers. Tier-2 removes its managed-gitconfig block; Tier-1 has nothing on disk to remove. A refresh still minting at that point is dropped when it returns.
|
|
197
|
+
- **sync**: Pulls from origin on the active branch. When both sides have new commits, the driver merges origin in (never a rebase). When that merge conflicts, the driver aborts it and the sync fails with an error that names the conflicting files. The checkout is left as it was before the sync: same `HEAD`, no conflict markers, uncommitted changes kept. The periodic `sync.autoPull` tick and the base-branch pull before `mergeOnClose` behave the same way.
|
|
198
|
+
- **no commit over an unfinished merge or rebase**: Auto-commit, hibernate and close do not commit while the checkout has `MERGE_HEAD`, `CHERRY_PICK_HEAD`, `REVERT_HEAD`, a rebase in progress, or unmerged paths. They log a warning and skip the commit. Their `add -A` would otherwise stage conflict markers as content and conclude the merge. The check fails closed: when the git dir cannot be resolved, or one of those entries cannot be checked for a reason other than "does not exist", it counts as unfinished. The driver's own pulls, merges and rebases (sync, the periodic tick, the merge before a push, the merge on close) do not start in that state either: the sync fails naming the reason, and the others log a warning and skip. So the driver never aborts or resolves a merge the agent started. The agent's own git can leave such a state; the agent (or the user) must finish or abort it. A driver merge or rebase that fails without a conflict is aborted, so it does not block these commits.
|
|
150
199
|
- **watch**: Uses chokidar with `.git/**` ignored. Resets the auto-commit idle timer on changes.
|
|
151
200
|
- **onHibernate**: Commits and optionally pushes all changes. With nothing new to commit, it still pushes commits that are only local (the agent committed its own work, or an earlier push failed): "unpushed" means ahead of the upstream, or, with no upstream, ahead of `origin/<base>`, as the platform's hibernate save gate reads `sync_status`.
|
|
152
|
-
- **base branch push**: Before the driver pushes the base branch (a main session working on it directly), it fetches `origin/<base>` and merges it in, a fast-forward when the local branch has no commits of its own. A merge, never a rebase. When that merge conflicts, the driver aborts it and the push fails with an error that names the conflicting files; nothing is pushed. The merge is skipped (and the push runs as before) when the checkout is not on the base branch, or when a merge, rebase, cherry-pick or revert is unfinished, so the driver never merges into the agent's other branch or aborts the agent's own merge. Applies to auto-commit, hibernate and close pushes.
|
|
201
|
+
- **base branch push**: Before the driver pushes the base branch (a main session working on it directly), it fetches `origin/<base>` (authenticated per command, like every driver fetch) and merges it in, a fast-forward when the local branch has no commits of its own. A merge, never a rebase. When that merge conflicts, the driver aborts it and the push fails with an error that names the conflicting files; nothing is pushed. The merge is skipped (and the push runs as before) when the checkout is not on the base branch, or when a merge, rebase, cherry-pick or revert is unfinished, so the driver never merges into the agent's other branch or aborts the agent's own merge. Applies to auto-commit, hibernate and close pushes.
|
|
153
202
|
- **onSessionClose**: Commits, pushes, and optionally merges the session branch into the base branch. Handles merge conflicts by keeping "ours" and saving "theirs" as `.conflict` files. Always tears down the credential afterwards (as on unmount), even when the final push fails.
|
|
203
|
+
- **one job at a time per mount**: sync, the periodic fetch tick, hibernate, the auto-commit tick, session close and the `push` / `pull` / `fetch` ops queue behind each other on a per-mount lock, so no two of them run git against the checkout at once. `sync_status` does not take it (no network, no index write).
|
|
154
204
|
|
|
155
205
|
### Operations (tool face)
|
|
156
206
|
|
|
157
207
|
| Operation | Access | Description |
|
|
158
208
|
|---|---|---|
|
|
209
|
+
| `push` | write | Pushes the mount's branch (the session branch on a branching mount) to origin with the mount's credential, per command as for the driver's own push, with an explicit `refs/heads/<b>:refs/heads/<b>` refspec so a `remote.origin.push` entry cannot change the destination or add a `+`. Commits only — the agent commits with its git CLI first. Never forces. The checkout must be on the mount's branch, so the agent cannot push another branch with the mount's credential. Returns `{ op, branch, status, message?, sync }` with `status` `pushed` or `rejected` (non-fast-forward, or a `[remote rejected]` refusal such as a protected branch); auth and network failures throw. |
|
|
210
|
+
| `pull` | read | Fetches origin (and the session branch) and merges `origin/<branch>` into the mount's branch — a merge, never a rebase, like the driver's merge before a session-branch push. `status` is `merged`, `up-to-date`, `no-upstream` (origin lacks the branch), `conflict` (the merge was aborted, the checkout is as before, `conflicts` lists the files, and the fetched commits stay at `origin/<branch>` for a local `git merge`), or `blocked` (the merge did not start, e.g. uncommitted changes it would overwrite, or a merge or rebase already in progress, which the pull leaves untouched). Submodules are not fetched: a submodule fetch reads its URL from the agent-writable config and would carry the host-scoped credential to any repo named there, so pins whose commits are already local are checked out (without the token) and the rest wait for the next driver sync; `message` names them. Until then the driver's own commits (auto-commit, hibernate, close) leave a lagging submodule out, so they never move its pin backwards. Read access: it changes nothing on the remote. |
|
|
211
|
+
| `fetch` | read | Fetches origin (and the session branch) with the mount's credential; updates remote-tracking refs only. `status: fetched`. |
|
|
159
212
|
| `sync_status` | read | Returns a JSON snapshot of the mount's git sync status: `{ branch, dirty, ahead, behind, hasUpstream, mainAhead, mainBehind, commitSha }`. `ahead`/`behind` are measured against the upstream tracking ref; `mainAhead`/`mainBehind` against `origin/<baseBranch>`. Read-only — performs no network fetch, so counts reflect locally-known remote-tracking refs ("since last sync"). |
|
|
160
213
|
|
|
161
|
-
|
|
214
|
+
All three refuse when `origin` no longer resolves to the mount's own URL for fetch or push (`git remote get-url [--push] origin`, which applies `pushurl`, `insteadOf` and `pushInsteadOf`): the config is agent-writable. Because the agent can change that config between the check and the command, these three ops also scope the header to the mount's repository URL (`http.<repo-url>.extraHeader`) rather than its host, so a same-host redirect set in that window gets no credential. The driver's own commands keep the host scope, which relative submodules on the same host need.
|
|
215
|
+
|
|
216
|
+
The agent reaches `push`, `pull` and `fetch` as the `git_push`, `git_pull` and `git_fetch` tools of the `skaile-connectors` MCP server (argument `connector_id`), emitted whenever a git mount is registered. `skaile connector run <id> push` does not reach them: that CLI starts its own connector manager from `skaile.yaml`, without the live mount or its credential. They exist for Tier-1 mounts, whose agent CLI has no credential; on Tier-2 they work too. `gh` and pull requests have no op: they need Tier 2.
|
|
217
|
+
|
|
218
|
+
`sync_status` backs the platform's git sync-status badge for **in-container** sources (Git / SharePoint / Empty), whose host workspace dir is empty even while the container is awake — the platform dispatches `sync_status` to the live agent rather than reading the host filesystem.
|
|
@@ -70,7 +70,7 @@ export declare const REFRESH_LEAD_MS: number;
|
|
|
70
70
|
* {@link REFRESH_LEAD_MS} would otherwise be asked for a new one every second.
|
|
71
71
|
* A token living under this floor lapses until the next tick: Tier-2 recovers
|
|
72
72
|
* sooner through the reactive retry-401 path, Tier-1 (no helper) waits for the
|
|
73
|
-
* tick to
|
|
73
|
+
* tick to put a fresh token in state.
|
|
74
74
|
*/
|
|
75
75
|
export declare const MIN_REFRESH_DELAY_MS = 30000;
|
|
76
76
|
/**
|
|
@@ -79,6 +79,54 @@ export declare const MIN_REFRESH_DELAY_MS = 30000;
|
|
|
79
79
|
* runner's AI-credential scheduler uses.
|
|
80
80
|
*/
|
|
81
81
|
export declare const MAX_REARM_MS: number;
|
|
82
|
+
/**
|
|
83
|
+
* The remote a network git command authenticates against. `GitState` satisfies
|
|
84
|
+
* it, and is passed as-is so a rotated token is read at spawn time.
|
|
85
|
+
*/
|
|
86
|
+
interface GitRemoteAuth {
|
|
87
|
+
url: string;
|
|
88
|
+
token?: string;
|
|
89
|
+
/**
|
|
90
|
+
* Scope the header to this repository's URL instead of its host. For the
|
|
91
|
+
* agent's ops: a same-host `pushurl` / `insteadOf` the agent sets after the
|
|
92
|
+
* origin check then gets no header. Off for the driver's own commands, whose
|
|
93
|
+
* relative submodules on the same host need it.
|
|
94
|
+
*/
|
|
95
|
+
repoScoped?: boolean;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* `auth.url` without userinfo when a token will authenticate it — the URL that
|
|
99
|
+
* goes into `origin`. Without a token the declared URL is used unchanged.
|
|
100
|
+
*/
|
|
101
|
+
declare function plainRemoteUrl(auth: GitRemoteAuth): string;
|
|
102
|
+
/**
|
|
103
|
+
* Child environment for a network git command: the token as an
|
|
104
|
+
* `http.<origin>.extraHeader` through `GIT_CONFIG_COUNT`, so it reaches git
|
|
105
|
+
* without touching `.git/config`, a credentials file, or the argv (which
|
|
106
|
+
* `/proc/<pid>/cmdline` and git's own error messages expose).
|
|
107
|
+
*
|
|
108
|
+
* Scoped to scheme, host and port, not the repository path: a relative
|
|
109
|
+
* submodule on the same host needs it too, and git does not send it to a host
|
|
110
|
+
* that `origin` or an `insteadOf` rule was re-pointed at.
|
|
111
|
+
*/
|
|
112
|
+
declare function networkGitEnv(auth: GitRemoteAuth | undefined, base?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
113
|
+
/**
|
|
114
|
+
* Run a git command that talks to a remote, authenticated for this one
|
|
115
|
+
* command only. Every clone, fetch, pull, push, ls-remote and submodule update
|
|
116
|
+
* of this driver goes through here.
|
|
117
|
+
*/
|
|
118
|
+
declare function runRemoteGit(args: string[], auth: GitRemoteAuth | undefined, options: {
|
|
119
|
+
cwd?: string;
|
|
120
|
+
safeDir: string;
|
|
121
|
+
timeout: number;
|
|
122
|
+
env?: NodeJS.ProcessEnv;
|
|
123
|
+
}): Promise<string>;
|
|
124
|
+
/**
|
|
125
|
+
* An https remote without userinfo, query or fragment (as `origin` is written
|
|
126
|
+
* on either tier); any other URL unchanged. Used to compare remotes and as the
|
|
127
|
+
* repository scope of a header.
|
|
128
|
+
*/
|
|
129
|
+
declare function comparableRemoteUrl(url: string): string;
|
|
82
130
|
/**
|
|
83
131
|
* Snapshot returned by the `sync_status` tool op. JSON-serialised over the
|
|
84
132
|
* transport; the platform overlays `available`/`containerAwake`/`reason`
|
|
@@ -106,6 +154,23 @@ export interface GitSyncStatusResult {
|
|
|
106
154
|
/** Current HEAD commit SHA, or `null` when unavailable. */
|
|
107
155
|
commitSha: string | null;
|
|
108
156
|
}
|
|
157
|
+
/**
|
|
158
|
+
* Result of the agent-facing `push`, `pull` and `fetch` tool ops, JSON-serialised.
|
|
159
|
+
* An expected outcome the agent must act on (a rejected push, a conflicting
|
|
160
|
+
* pull) is a `status`, not a thrown error; auth or network failures throw.
|
|
161
|
+
*/
|
|
162
|
+
export interface GitRemoteOpResult {
|
|
163
|
+
op: "push" | "pull" | "fetch";
|
|
164
|
+
/** The mount's branch the op acted on (the session branch on a branching mount). */
|
|
165
|
+
branch: string;
|
|
166
|
+
status: "pushed" | "rejected" | "fetched" | "merged" | "up-to-date" | "no-upstream" | "conflict" | "blocked";
|
|
167
|
+
/** What happened and what to do next, in words the agent can act on. */
|
|
168
|
+
message?: string;
|
|
169
|
+
/** Files that conflicted, for `status: "conflict"` (the merge itself was aborted). */
|
|
170
|
+
conflicts?: string[];
|
|
171
|
+
/** Sync status after the op. */
|
|
172
|
+
sync: GitSyncStatusResult;
|
|
173
|
+
}
|
|
109
174
|
/**
|
|
110
175
|
* Read git sync status for an in-container checkout. Pure and never throws —
|
|
111
176
|
* every git call degrades to a safe default. No network fetch:
|
|
@@ -137,6 +202,24 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
137
202
|
readonly tools: ToolFace;
|
|
138
203
|
private _describeOperations;
|
|
139
204
|
private _executeOp;
|
|
205
|
+
/**
|
|
206
|
+
* Run `fn` after every earlier job on this mount has settled. Network git and
|
|
207
|
+
* index-writing git on one checkout must not overlap: two of them contend for
|
|
208
|
+
* `.git/index.lock`, and a push racing a pull can push a half-merged branch.
|
|
209
|
+
* Not re-entrant — a job must never wait on the lock it runs under.
|
|
210
|
+
*/
|
|
211
|
+
private withMountLock;
|
|
212
|
+
/**
|
|
213
|
+
* The agent's network git: the driver runs it with the mount's credential, so
|
|
214
|
+
* an agent on a mount without `exposeAccessToken` can push and pull without
|
|
215
|
+
* ever holding the token. Acts only on the mount's own branch, never forces.
|
|
216
|
+
*/
|
|
217
|
+
private agentRemoteOp;
|
|
218
|
+
/** Fetch origin's base branch and, on a branching mount, the session branch. */
|
|
219
|
+
private fetchActiveBranch;
|
|
220
|
+
private agentFetch;
|
|
221
|
+
private agentPush;
|
|
222
|
+
private agentPull;
|
|
140
223
|
connect(declaration: ConnectorDeclaration, ctx: ConnectContext): Promise<ConnectorHandle>;
|
|
141
224
|
/**
|
|
142
225
|
* Bring `targetDir` into a usable checkout state for `connect()`.
|
|
@@ -343,7 +426,7 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
343
426
|
* The intent is to preserve whatever the agent last had on disk. We
|
|
344
427
|
* therefore:
|
|
345
428
|
* - `git init` — creates `.git/`; does not modify any existing file.
|
|
346
|
-
* - `git remote add origin <
|
|
429
|
+
* - `git remote add origin <remoteUrl>` — wires up the remote so the
|
|
347
430
|
* normal lifecycle hooks (`pushOnHibernate`, `pushAfterCommit`)
|
|
348
431
|
* have a target.
|
|
349
432
|
*
|
|
@@ -355,14 +438,12 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
355
438
|
* user's last on-disk state. The agent or autocommit reconciles
|
|
356
439
|
* with the remote later.
|
|
357
440
|
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
360
|
-
* handling is external to this method (managed-gitconfig credential
|
|
361
|
-
* helper refresh in Tier-2 connectors).
|
|
441
|
+
* `remoteUrl` carries no credential; network commands authenticate per
|
|
442
|
+
* command (see `runRemoteGit`).
|
|
362
443
|
*/
|
|
363
444
|
private initInPlace;
|
|
364
445
|
/**
|
|
365
|
-
* Count `refs/heads/*` on
|
|
446
|
+
* Count `refs/heads/*` on the remote, optionally narrowed to one `branch`.
|
|
366
447
|
*
|
|
367
448
|
* Returns `null` when the probe itself fails (network, auth, bad URL).
|
|
368
449
|
* "Cannot tell" must never collapse into "no refs": the empty-remote
|
|
@@ -419,11 +500,8 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
419
500
|
* `reset --hard`. Files that do not conflict with the remote stay
|
|
420
501
|
* exactly where they are.
|
|
421
502
|
*
|
|
422
|
-
*
|
|
423
|
-
*
|
|
424
|
-
* after token rotation. This persists the token in `.git/config`
|
|
425
|
-
* the same way `git clone <authUrl>` does — token-rotation handling
|
|
426
|
-
* is external to this connector method.
|
|
503
|
+
* A pre-existing `origin` is replaced with the declared URL, which also
|
|
504
|
+
* drops a token an older driver wrote into it.
|
|
427
505
|
*/
|
|
428
506
|
private bootstrapFromOrigin;
|
|
429
507
|
/**
|
|
@@ -442,7 +520,6 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
442
520
|
* bootstrap.
|
|
443
521
|
*/
|
|
444
522
|
private preserveConflictingUntracked;
|
|
445
|
-
private authUrl;
|
|
446
523
|
/**
|
|
447
524
|
* Align `origin` with the exact sanitized URL used by the Tier-2 helper.
|
|
448
525
|
* Git does not normalize query/fragment data, path case, or `.git` aliases
|
|
@@ -451,19 +528,16 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
451
528
|
*/
|
|
452
529
|
private alignRemoteWithCredentialScope;
|
|
453
530
|
/**
|
|
454
|
-
*
|
|
455
|
-
*
|
|
456
|
-
*
|
|
457
|
-
*
|
|
458
|
-
*
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
* `origin` carries none, or nothing was baked (no token, non-https remote).
|
|
465
|
-
*/
|
|
466
|
-
private stripRemoteAuth;
|
|
531
|
+
* Point `origin` at the declared URL, without a credential in it.
|
|
532
|
+
*
|
|
533
|
+
* Clones made before the driver authenticated per command hold
|
|
534
|
+
* `https://x-access-token:<token>@…` in `.git/config`, where the agent can
|
|
535
|
+
* read it; this is what removes it, on the first connect after an upgrade.
|
|
536
|
+
* With a token in hand `origin` is set to the declared URL, as the old
|
|
537
|
+
* re-bake did. Without one only a token-bearing origin is rewritten: a URL
|
|
538
|
+
* the user declared with their own userinfo is theirs to keep.
|
|
539
|
+
*/
|
|
540
|
+
private reconcileRemoteUrl;
|
|
467
541
|
private startPeriodicFetch;
|
|
468
542
|
/** One periodic-fetch tick. Bails out at each resumption point once disconnected. */
|
|
469
543
|
private runPeriodicFetch;
|
|
@@ -482,6 +556,12 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
482
556
|
* save "theirs" as `.conflict` files.
|
|
483
557
|
*/
|
|
484
558
|
private mergeBaseIntoSessionBranch;
|
|
559
|
+
/**
|
|
560
|
+
* True (and logged) when a merge or rebase is already open in the checkout,
|
|
561
|
+
* so a driver merge must not start: its failure path would abort or resolve
|
|
562
|
+
* the agent's own operation.
|
|
563
|
+
*/
|
|
564
|
+
private skipOverUnfinishedOperation;
|
|
485
565
|
/**
|
|
486
566
|
* Attempt to resolve merge/rebase conflicts by keeping "ours" and copying
|
|
487
567
|
* "theirs" to a .conflict file. If resolution fails entirely, abort.
|
|
@@ -503,9 +583,13 @@ export declare class GitConnector extends AbstractConnector {
|
|
|
503
583
|
* @docLink packages/factory-assets/api-reference#git-connector-factory
|
|
504
584
|
*/
|
|
505
585
|
export declare function createConnector(): GitConnector;
|
|
506
|
-
/** Test-only surface
|
|
586
|
+
/** Test-only surface for unit assertions. */
|
|
507
587
|
export declare const __test: {
|
|
508
588
|
resolveGitConfig: typeof resolveGitConfig;
|
|
589
|
+
networkGitEnv: typeof networkGitEnv;
|
|
590
|
+
plainRemoteUrl: typeof plainRemoteUrl;
|
|
591
|
+
runRemoteGit: typeof runRemoteGit;
|
|
592
|
+
comparableRemoteUrl: typeof comparableRemoteUrl;
|
|
509
593
|
};
|
|
510
594
|
export {};
|
|
511
595
|
//# sourceMappingURL=driver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../factory-assets/connectors/git/driver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EAEf,cAAc,EAMd,QAAQ,EAER,WAAW,EACX,YAAY,EACb,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EACL,iBAAiB,EAelB,MAAM,+BAA+B,CAAC;AAOvC,UAAU,gBAAgB;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,aAAa;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,kBAAkB;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,qFAAqF;IACrF,gBAAgB,EAAE,MAAM,CAAC;IACzB,6CAA6C;IAC7C,eAAe,EAAE,OAAO,CAAC;IACzB;4EACwE;IACxE,eAAe,EAAE,OAAO,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../../../factory-assets/connectors/git/driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { GitConnector, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, REFRESH_LEAD_MS, __test, createConnector5 as createConnector, readGitSyncStatus } from '../../chunk-
|
|
1
|
+
export { GitConnector, MAX_REARM_MS, MIN_REFRESH_DELAY_MS, REFRESH_LEAD_MS, __test, createConnector5 as createConnector, readGitSyncStatus } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { GmailConnector, createConnector6 as createConnector } from '../../chunk-
|
|
1
|
+
export { GmailConnector, createConnector6 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { GoogleDriveConnector, createConnector7 as createConnector } from '../../chunk-
|
|
1
|
+
export { GoogleDriveConnector, createConnector7 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { LocalConnector, createConnector8 as createConnector } from '../../chunk-
|
|
1
|
+
export { LocalConnector, createConnector8 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { MattermostConnector, createConnector9 as createConnector } from '../../chunk-
|
|
1
|
+
export { MattermostConnector, createConnector9 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { MemoryConnector, createConnector10 as createConnector } from '../../chunk-
|
|
1
|
+
export { MemoryConnector, createConnector10 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { MinIOConnector, createConnector11 as createConnector } from '../../chunk-
|
|
1
|
+
export { MinIOConnector, createConnector11 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { PostgresConnector, createConnector12 as createConnector } from '../../chunk-
|
|
1
|
+
export { PostgresConnector, createConnector12 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { S3Connector, S3FetchStoppedError, S3PresignedRequestError, S3_PRESIGN_BATCH, createConnector13 as createConnector, parseListObjectsV2, presignScopePrefix, presignableKey } from '../../chunk-
|
|
1
|
+
export { S3Connector, S3FetchStoppedError, S3PresignedRequestError, S3_PRESIGN_BATCH, createConnector13 as createConnector, parseListObjectsV2, presignScopePrefix, presignableKey } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { SharePointConnector, createConnector14 as createConnector } from '../../chunk-
|
|
1
|
+
export { SharePointConnector, createConnector14 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { SQLiteConnector, createConnector15 as createConnector } from '../../chunk-
|
|
1
|
+
export { SQLiteConnector, createConnector15 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { StaticServerConnector, createConnector16 as createConnector } from '../../chunk-
|
|
1
|
+
export { StaticServerConnector, createConnector16 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { TunnelConnector, createConnector17 as createConnector } from '../../chunk-
|
|
1
|
+
export { TunnelConnector, createConnector17 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { WebDAVConnector, createConnector18 as createConnector } from '../../chunk-
|
|
1
|
+
export { WebDAVConnector, createConnector18 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { XStateStoreConnector, createConnector20 as createConnector } from '../../chunk-
|
|
1
|
+
export { XStateStoreConnector, createConnector20 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { XStateConnector, createConnector19 as createConnector } from '../../chunk-
|
|
1
|
+
export { XStateConnector, createConnector19 as createConnector } from '../../chunk-EZOFQW3G.js';
|
|
2
2
|
import '../../chunk-KVWSBQNP.js';
|
|
3
|
-
import '../../chunk-
|
|
3
|
+
import '../../chunk-2OLNNQKT.js';
|
|
4
4
|
import '../../chunk-IN466NSZ.js';
|
|
5
5
|
import '../../chunk-6S5KL76M.js';
|
|
6
6
|
import '../../chunk-LOO5CB5M.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { KIND_COL_WIDTH, S, bareSoftDepName, colorRef, fitWidth, formatRelativeTime, formatSoftDepAddPreview, formatSoftDepHint, formatSoftDepRemovePreview, formatSoftDepSection, kindColor, kindColorPad, logErr, logInfo, logOk, logWarn } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { KIND_COL_WIDTH, S, bareSoftDepName, colorRef, fitWidth, formatRelativeTime, formatSoftDepAddPreview, formatSoftDepHint, formatSoftDepRemovePreview, formatSoftDepSection, kindColor, kindColorPad, logErr, logInfo, logOk, logWarn } from './chunk-SSODNBSC.js';
|
|
2
|
+
import './chunk-IHFQTKUP.js';
|
|
3
3
|
import './chunk-UFWADBG6.js';
|
|
4
4
|
import './chunk-HGPSZXZP.js';
|
|
5
5
|
import './chunk-VOEBLPXO.js';
|
|
@@ -28,5 +28,5 @@ import './chunk-UQ6LFBPZ.js';
|
|
|
28
28
|
import './chunk-DKCFWSVW.js';
|
|
29
29
|
import './chunk-N7B3LZ7V.js';
|
|
30
30
|
import './chunk-NSBPE2FW.js';
|
|
31
|
-
//# sourceMappingURL=helpers-
|
|
32
|
-
//# sourceMappingURL=helpers-
|
|
31
|
+
//# sourceMappingURL=helpers-VZJCQSLY.js.map
|
|
32
|
+
//# sourceMappingURL=helpers-VZJCQSLY.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"helpers-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"helpers-VZJCQSLY.js"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { makeHttpPublisherClient, bareName, refFor, formatNamespaceAvailability, preflightNamespace, publishToStore } from './chunk-
|
|
1
|
+
import { makeHttpPublisherClient, bareName, refFor, formatNamespaceAvailability, preflightNamespace, publishToStore } from './chunk-2JGUFDKZ.js';
|
|
2
2
|
import { isStoreAuthenticated } from './chunk-IJTEDXWQ.js';
|
|
3
|
-
import { openLibraryManager } from './chunk-
|
|
4
|
-
import { logErr, logInfo, logOk, S } from './chunk-
|
|
3
|
+
import { openLibraryManager } from './chunk-XZCRIPWT.js';
|
|
4
|
+
import { logErr, logInfo, logOk, S } from './chunk-SSODNBSC.js';
|
|
5
5
|
import './chunk-KTCMBEEB.js';
|
|
6
6
|
import './chunk-ALLCAFHQ.js';
|
|
7
7
|
import './chunk-V4RGCKYC.js';
|
|
8
8
|
import './chunk-DHMBE5J7.js';
|
|
9
|
-
import './chunk-
|
|
9
|
+
import './chunk-IHFQTKUP.js';
|
|
10
10
|
import './chunk-UFWADBG6.js';
|
|
11
11
|
import './chunk-HGPSZXZP.js';
|
|
12
12
|
import './chunk-VOEBLPXO.js';
|
|
@@ -277,5 +277,5 @@ async function runLibraryYank(name, opts, client) {
|
|
|
277
277
|
}
|
|
278
278
|
|
|
279
279
|
export { runLibraryPublish, runLibraryRegister, runLibraryYank };
|
|
280
|
-
//# sourceMappingURL=library-publish-
|
|
281
|
-
//# sourceMappingURL=library-publish-
|
|
280
|
+
//# sourceMappingURL=library-publish-VBLSTO7S.js.map
|
|
281
|
+
//# sourceMappingURL=library-publish-VBLSTO7S.js.map
|