@aryacode/dsh-aryacode-polish 0.4.4 → 0.6.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 +58 -2
- package/README.md +4 -1
- package/client/face.js +646 -5
- package/client/switches.json +13 -1
- package/docs/github-workspaces.md +81 -0
- package/docs/workspace-folder.md +6 -0
- package/entries/folders.js +115 -0
- package/entries/github.js +347 -0
- package/entries/registry.js +16 -0
- package/lib/client.js +659 -6
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,61 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.6.0] - 2026-10-28
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- **Adding a workspace moved into the Workspaces "+" menu.** A new switch
|
|
8
|
+
(`workspaceSources`) occupies `sidebar.workspaces.directoryFlow`, which is what
|
|
9
|
+
makes the Shell's **Add workspace…** row appear at all, and stands in for the
|
|
10
|
+
folder picker with the source menu the owner asked for: **On this PC** (a folder
|
|
11
|
+
browser driven by this bundle's own `api/polish.folders` route) and **GitHub
|
|
12
|
+
repository…** (the existing dialog). A finished clone hands its path to the
|
|
13
|
+
flow's `onPicked`, so the Shell creates the workspace exactly as it does for a
|
|
14
|
+
picked folder.
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- The sidebar foot now carries the GitHub sign-in state next to the balance
|
|
19
|
+
(`GitHub · <login>` / `GitHub · signed out`); clicking it opens the repository
|
|
20
|
+
dialog. It replaced the foot's add-workspace row, which the "+" menu supersedes.
|
|
21
|
+
|
|
22
|
+
### Fixed
|
|
23
|
+
|
|
24
|
+
- "On this PC" lists folders instead of waiting on a chooser that cannot open. A
|
|
25
|
+
composed directory picker serves one capability, `browse` or `native`, and the
|
|
26
|
+
browser build composes the one with no chooser to show, so the previous
|
|
27
|
+
`directoryPicker.pick()` call simply never settled. The flow now walks folders
|
|
28
|
+
through its own route: roots, a `..` row for going back, directories only, and
|
|
29
|
+
hidden or system entries filtered out.
|
|
30
|
+
|
|
31
|
+
## [0.5.0] - 2026-10-27
|
|
32
|
+
|
|
33
|
+
### Added
|
|
34
|
+
|
|
35
|
+
- **Add a workspace from GitHub.** A new switch (`githubWorkspace`) adds an
|
|
36
|
+
**Add workspace from GitHub** entry to the sidebar foot. It lists the
|
|
37
|
+
repositories the GitHub CLI session can clone, clones the chosen one into
|
|
38
|
+
`<home>\AryaCode\<owner>\<repo>`, and registers that folder as a workspace
|
|
39
|
+
through the same controller call the "+" menu uses. The token never reaches the
|
|
40
|
+
browser: the Host reads it with `gh auth token` and hands it to git as an
|
|
41
|
+
`http.extraHeader` in git's environment, so it stays out of the URL, the
|
|
42
|
+
command line, and any stored remote. See
|
|
43
|
+
[`docs/github-workspaces.md`](docs/github-workspaces.md).
|
|
44
|
+
|
|
45
|
+
### Fixed
|
|
46
|
+
|
|
47
|
+
- **A clone would have failed on a real machine.** `cloneRepo` spawned the
|
|
48
|
+
argument list without the `git` command name and passed the token as an option
|
|
49
|
+
the runner never read, so the clone carried no authentication at all. It now
|
|
50
|
+
spawns `git` with the token in `GIT_CONFIG_*`, which is what GitHub's git
|
|
51
|
+
server accepts, and `test/github.spec.mjs` pins the spawn shape.
|
|
52
|
+
- **The signed-out reason told you nothing you could act on.** It now names the
|
|
53
|
+
command that fixes it (`gh auth login`).
|
|
54
|
+
|
|
55
|
+
### Changed
|
|
56
|
+
|
|
57
|
+
- `pnpm test` also runs `test/github.spec.mjs`; the suite is 87 tests.
|
|
58
|
+
|
|
3
59
|
## [0.4.4] - 2026-10-27
|
|
4
60
|
|
|
5
61
|
### Fixed
|
|
@@ -232,8 +288,8 @@
|
|
|
232
288
|
|
|
233
289
|
### Fixed
|
|
234
290
|
|
|
235
|
-
- The pill's `≈` was stored as cp1252 mojibake (
|
|
236
|
-
|
|
291
|
+
- The pill's `≈` was stored as cp1252 mojibake (`≈`), so a real turn rendered
|
|
292
|
+
`≈$0.003` instead of `≈$0.003`. Same cause as the two strings repaired in
|
|
237
293
|
0.2.1 — a PowerShell round-trip over the face source — and the last of that
|
|
238
294
|
damage. Verified against a real turn in Dev AryaCode.
|
|
239
295
|
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ installed into and patches nothing. It is one package, one Plugins row, and one
|
|
|
7
7
|
switch per feature, so a refinement that turns out to be wrong for a machine can
|
|
8
8
|
be turned off without uninstalling anything.
|
|
9
9
|
|
|
10
|
-
Status: **
|
|
10
|
+
Status: **five features shipped.** The version is the package's, and the card
|
|
11
11
|
header already shows it.
|
|
12
12
|
|
|
13
13
|
## What it is
|
|
@@ -33,6 +33,8 @@ Configure page automatically.
|
|
|
33
33
|
| **Estimated session cost** (`sessionCost`) | On | A `≈$0.39` pill in the composer dock that opens a breakdown card — cache hit, uncached input, cached input, output, requests, and the estimate — priced from the session's recorded usage at the published DeepSeek rates. |
|
|
34
34
|
| **Account balance** (`accountBalance`) | On | The account's remaining wallet (`$17.33`) in the sidebar foot, above the account row. Renders nothing when the Host exposes no wallet, so it never shows a number nobody gave it. |
|
|
35
35
|
| **Open workspace folder** (`openWorkspaceFolder`) | On | An **Open workspace folder** row in a Session's "…" menu that opens the Session's workspace in Explorer/Finder. Renders nothing when the Session has no workspace or the Host cannot open a path. See [Open a workspace folder](docs/workspace-folder.md) for why the request had to land here instead of on the workspace row itself. |
|
|
36
|
+
| **Add a workspace from GitHub** (`githubWorkspace`) | On | Adds the GitHub half of the workspace sources: the dialog lists the repositories your GitHub CLI session can clone, and cloning one creates the workspace. The token never enters the browser — it is read on the Host, used only as git's http auth header, and never stored. The sidebar foot carries the sign-in state (`GitHub · <login>`). See [GitHub workspaces](docs/github-workspaces.md). |
|
|
37
|
+
| **Add a workspace from this PC or GitHub** (`workspaceSources`) | On | The Workspaces **+** button gets a source menu: **On this PC** (the Host's OS chooser, or a folder list when the composition has no native chooser) and **GitHub repository…**. Off, the **+** button goes back to the shipped folder picker. |
|
|
36
38
|
|
|
37
39
|
### How the cost is computed
|
|
38
40
|
|
|
@@ -122,6 +124,7 @@ entries/polish.js the row: Config derived from the registry, apply()
|
|
|
122
124
|
entries/registry.js the feature list — the one place a feature is declared
|
|
123
125
|
entries/usage.js the fold: model-attributed usage out of the session log
|
|
124
126
|
entries/cost.js the polishCost projection: rates, pricing, host mount
|
|
127
|
+
entries/github.js the GitHub route: gh token, repository list, clone, workspace
|
|
125
128
|
entries/config.js volatile-reference accessors (resolve/flag/list/text)
|
|
126
129
|
lib/index.js mount point re-exporting the row
|
|
127
130
|
client/face.js browser face source: the Configure page and every surface
|