throughline 0.8.5 → 0.8.6
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
CHANGED
|
@@ -10,6 +10,15 @@ shipped to npm but were not individually tagged on GitHub.
|
|
|
10
10
|
|
|
11
11
|
## [Unreleased]
|
|
12
12
|
|
|
13
|
+
## [0.8.6] — 2026-07-20
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- Republish the v0.8.5 runtime from a clean worktree after the v0.8.5 npm
|
|
18
|
+
tarball accidentally included one unrelated, uncommitted in-progress
|
|
19
|
+
document written concurrently after the release dry-run. Runtime behavior
|
|
20
|
+
and the database migration contract are unchanged.
|
|
21
|
+
|
|
13
22
|
## [0.8.5] — 2026-07-20
|
|
14
23
|
|
|
15
24
|
### Added
|
|
@@ -1154,7 +1163,8 @@ two attempts, instrument first instead of patching again.
|
|
|
1154
1163
|
|
|
1155
1164
|
---
|
|
1156
1165
|
|
|
1157
|
-
[Unreleased]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.
|
|
1166
|
+
[Unreleased]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.6...HEAD
|
|
1167
|
+
[0.8.6]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.5...v0.8.6
|
|
1158
1168
|
[0.8.5]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.4...v0.8.5
|
|
1159
1169
|
[0.8.4]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.3...v0.8.4
|
|
1160
1170
|
[0.8.3]: https://github.com/kitepon-rgb/Throughline/compare/v0.8.2...v0.8.3
|
|
@@ -141,7 +141,7 @@ schema v4 で PostToolUse (`capture-tool`) は廃止、L2/L3 は Stop 内で一
|
|
|
141
141
|
| **npm 公開 (v0.6.2): factory diagnostics + local runtime error store** | `throughline factory-diagnostics --json` と `throughline runtime-errors ... --json` を追加。collection は canonical dotagents config の `collection.enabled: true` が明示された時だけ有効で既定OFF、store は network I/O を行わない。公開commit `e6ce6e3`、CI `29238704750`、npm `latest`、tag / GitHub Release、registry由来隔離installと診断snapshotを2026-07-13に確認した |
|
|
142
142
|
| **npm 公開 (v0.6.3): Codex diagnostics ready 集約 + Windows bounded observer** | 3 managed Codex hooks が canonical `ready` のとき hook summary / Codex connector を `ready` とし、未検査 Claude connector は明示 `unverified` のまま Codex-only overall から除外する。Windows runtime-error observer は、既存 state の使用前検証と新規 file の ACL 付与・read-back を維持しつつ、同一 mutation 内の重複 PowerShell ACL 検証を除いた。公開commit `fc83ddf`、CI `29284655280`(9/9 green)、npm `throughline@0.6.3`、tag / GitHub Release、npm shasum `4f3fcd2598a75f026358dae7f3eb3165242b580b` を2026-07-14に確認した |
|
|
143
143
|
| **npm 公開 (v0.8.4): Codex handoff host境界の明示化** | `$throughline` skillは現在のCodex UI surfaceからDesktop/VS Code/CLIを選び、`--open-host`を明示する。shell/永続PTYの継承環境はsurface判定に使わない。`codex-handoff-start`は互換の`openHost`を残し、requested / resolved hostをJSONとtextで報告する。古いVS Code由来PTY事故形と配布skillをfocused testで固定し、Claude-facing hook/`/tl`/baton/resume契約は変更しない。公開commit `5b840b6`、CI run `29721583754` 9/9 green、npm `latest` 0.8.4、shasum `1f2c39a22e45f3e02e8739ee5fd6ceefc6a71034`、tag / GitHub Release、registry由来global install、配置skill一致、`doctor --codex` exit 0を2026-07-20に確認した。判断証拠は [ADR 0017](adr/0017-codex-handoff-host-boundary.md) |
|
|
144
|
-
| **
|
|
144
|
+
| **npm公開 (v0.8.6): 製品所有DB migration入口** | `throughline migrate --json` は既存DBだけをproduction migrationで現行schemaへ移行し、versioned bounded JSONを返す。DB不在は作らず`not_applicable`、現行は`already_current`、future schemaと失敗は非0。`factory-diagnostics`のread-only契約は維持する。0.8.5はdry-run後に別作業の未コミット文書が混入したためdeprecateし、同一runtimeをclean worktreeから0.8.6として再公開した。設計判断は [ADR 0018](adr/0018-product-owned-database-migration.md) |
|
|
145
145
|
| **未リリース: Codex current-session 75% trigger** | Codex 自動発火を token-monitor に依存させず、global install が Codex `UserPromptSubmit` / `PostToolUse` hooks も登録する。hook は当該 Codex session の rollout `token_count` を直接読み、verified 75% 以上なら同じ user turn または tool loop 継続前に `$throughline` workflow 実行指示を `additionalContext` で注入する。Stop hook の guarded auto-refresh は残す。`~/.codex/config.toml` は旧 `codex_hooks = true` に加えて現行 `hooks = true` も有効化する |
|
|
146
146
|
| **グローバル E2E 検証** | 2026-04-17 別ディレクトリから `throughline doctor` 全緑を確認 |
|
|
147
147
|
|
package/package.json
CHANGED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# Windows CI・リリース待ち時間改修計画
|
|
2
|
-
|
|
3
|
-
## 目的
|
|
4
|
-
|
|
5
|
-
ThroughlineのWindows CIがLinux/macOSの約1分に対して16〜18分かかり、定型releaseを
|
|
6
|
-
実用不能な長さへ押し上げている。Windows互換性matrixとowner-only ACL契約を維持したまま、
|
|
7
|
-
unit testを5分以内(目標3分以内)へ短縮し、release前の同一candidateに対するCIを1回へ
|
|
8
|
-
集約する。
|
|
9
|
-
|
|
10
|
-
## 現状の実測
|
|
11
|
-
|
|
12
|
-
GitHub Actions run `29722650046`(Windows Node 22.13.0)のTAP計測では、次の3テストだけで
|
|
13
|
-
約26分相当の直列test時間を占めた。実jobはfile単位の重なりがあるため約18分で完了する。
|
|
14
|
-
|
|
15
|
-
| テスト | `duration_ms` |
|
|
16
|
-
|---|---:|
|
|
17
|
-
| observer feed: Claude history floor, host/thread switch, cross-host tie, and opaque cursor | 568,093 ms |
|
|
18
|
-
| completed turn receipt: bounded store drops only oldest receipts | 559,807 ms |
|
|
19
|
-
| completed turn receipt: noisy project cannot evict another project anchor | 436,267 ms |
|
|
20
|
-
|
|
21
|
-
3テストはいずれも256件境界を作るため公開APIを257回呼び、その各mutationでWindows
|
|
22
|
-
PowerShellを複数回起動してdirectory/lock/temporary/final storeのACLを検証している。
|
|
23
|
-
境界計算の反復とACL実機検証が結合されていることが主因で、runner一般の遅さではない。
|
|
24
|
-
|
|
25
|
-
また現行workflowはmainへのpushごとに9 matrixを新規起動し、同じbranchの旧runをcancelしない。
|
|
26
|
-
短時間の段階commitでWindows 18分runが重複する。
|
|
27
|
-
|
|
28
|
-
## 決定
|
|
29
|
-
|
|
30
|
-
1. completed-turn receiptの大量境界テストは、正規schemaの境界直前storeをfixtureとして用意し、
|
|
31
|
-
最後の1 mutationだけ公開APIで実行する。limit超過、history floor、project分離、cursor判定の
|
|
32
|
-
受入条件は変更しない。
|
|
33
|
-
2. Windows owner-only ACLは専用integration testでdirectory、SQLite lock、final storeを
|
|
34
|
-
`windows-acl-test-helper`から外部検証する。大量境界テストからPowerShell反復を除いても、
|
|
35
|
-
production ACL契約の実機coverageを失わない。
|
|
36
|
-
3. CIのunit test stepへ`timeout-minutes: 5`を設定する。5分超は性能劣化としてfail closedにする。
|
|
37
|
-
4. workflowへbranch単位の`concurrency`を設定し、新しいcommitが来た時は同一workflow/refの
|
|
38
|
-
古いrunをcancelする。
|
|
39
|
-
5. OS 3種 × Node `22.13.0`/`22.x`/`24.x`の9 matrixは維持する。互換範囲を速度対策のために
|
|
40
|
-
縮小しない。
|
|
41
|
-
6. `0.8.5`の最終candidateへ実装・version・CHANGELOG・README・正本文書をまとめ、push後CIを
|
|
42
|
-
1回だけrelease gateとして使う。公開後のSHA/CI番号はGitHub Releaseを正本とし、証拠追記だけの
|
|
43
|
-
追加commit/追加CIを作らない。
|
|
44
|
-
|
|
45
|
-
## 非目標
|
|
46
|
-
|
|
47
|
-
- Windows ACLの適用・read-back検証、atomic rename、失敗時の旧store保持を弱めない。
|
|
48
|
-
- Windows testをskipしない。matrixのOS/Node versionを減らさない。
|
|
49
|
-
- completed-turn receiptの256件limit、history floor、cursor、project分離契約を変えない。
|
|
50
|
-
- Claude hooks、Codex adapter、DB migration、handoff契約を変更しない。
|
|
51
|
-
- release自動publishやcredential保管をworkflowへ追加しない。
|
|
52
|
-
|
|
53
|
-
## 既知の罠
|
|
54
|
-
|
|
55
|
-
- fixtureを直接書くだけでは公開APIの境界mutationを検証できない。必ずlimit直前から最後の1件を
|
|
56
|
-
`writeCompletedTurnReceipt`で追加する。
|
|
57
|
-
- Windowsでfixtureを書き換える時も既存owner-only ACLを保持し、専用ACL testはproduction APIが
|
|
58
|
-
作った実pathを外部helperで検査する。
|
|
59
|
-
- `concurrency.cancel-in-progress`は別branch/別PRをcancelしないref単位にする。
|
|
60
|
-
- test timeoutはjob全体ではなくunit test stepに置き、setup-node等の外部遅延と製品test性能を混ぜない。
|
|
61
|
-
- 進行中の旧CIを新しいcandidateの成功証拠として流用しない。
|
|
62
|
-
|
|
63
|
-
## 受入条件
|
|
64
|
-
|
|
65
|
-
- [ ] 3つの大量境界テストが公開契約を維持したままPowerShell反復を行わない。
|
|
66
|
-
- [ ] Windows専用ACL testがdirectory/lock/storeのowner-only ACLを外部検証する。
|
|
67
|
-
- [ ] focused testとfull `npm test`がgreen。
|
|
68
|
-
- [ ] CI定義にunit test 5分上限とref単位concurrencyがある。
|
|
69
|
-
- [ ] 最終GitHub Actionsで9/9 green、Windows各jobのunit testが5分以内(目標3分以内)。
|
|
70
|
-
- [ ] `npm pack --dry-run --json`で公開物を確認する。
|
|
71
|
-
- [ ] npm `throughline@0.8.5`、tag/GitHub Release、registry由来global install、
|
|
72
|
-
`throughline --version = 0.8.5`、配置skill/hooks/doctorを確認する。
|
|
73
|
-
|
|
74
|
-
## 工程
|
|
75
|
-
|
|
76
|
-
工程状態と完了証拠の正本はLattice storeとし、この文書は目的、判断、非目標、受入条件を所有する。
|
|
77
|
-
|
|
78
|
-
1. ベースライン計測と原因同定
|
|
79
|
-
2. 敵対的検証と設計裁定
|
|
80
|
-
3. 安全網とfixture分離
|
|
81
|
-
4. workflow・文書統合
|
|
82
|
-
5. push後CI、npm公開、global install
|