Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
429 commits
Select commit Hold shift + click to select a range
2a50db2
Add bounded native collection scheduling and verified build reuse
Oct 8, 2026
1027c3b
Preserve evaluation failure gate before build fingerprinting
Oct 8, 2026
47190b0
Skip toolchain probes when build dependency evidence is absent
Oct 8, 2026
7949cdf
Batch collection FTS updates to avoid repeated corpus scans
Oct 8, 2026
611da95
Reuse verified unchanged text vectors across processing revisions
Oct 8, 2026
0946dcd
Bound collection cache and avoid background I/O starvation
Oct 8, 2026
a1a9829
Document installed collection, search and model delivery
Oct 8, 2026
5206b4f
Clarify direct visual inspection scope
Oct 8, 2026
7bc8423
Ingest bounded live video captions and Threads post evidence
Oct 8, 2026
abf433d
Verify isolated live source navigation and record encoder evidence
Oct 8, 2026
d090a8f
Wait for committed navigation before native view comparisons
Oct 8, 2026
f533044
Document installed live-source and encoder comparison limits
Oct 8, 2026
e0e46df
fix(graph): soften dense clusters and reduce rendering work
Oct 8, 2026
bc01750
docs(graph): record installed checks and bounded CPU comparison
Oct 8, 2026
25d3268
feat(collection): expose native schedule status and pause controls
Oct 8, 2026
0880080
fix(retrieval): select dated observations without erasing history
Oct 8, 2026
ceb029e
fix(runtime): include retrieval time helper in staged workers
Oct 8, 2026
cd4f1c8
fix(models): preserve Gemini 3.8 identity in worker preflight
Oct 8, 2026
76bc3f8
fix(history): preserve first journal events and scoped counts
Oct 8, 2026
5ded21e
fix(history): keep recent receipts above collection schedules
Oct 8, 2026
58a7264
feat(collection): persist manual requests and edit target intervals
Oct 8, 2026
269e6d2
docs(architecture): map nine Alden runtime requirements
Oct 9, 2026
ab42669
fix(runtime): validate completion and preserve media input errors
Oct 9, 2026
f474a04
fix(context): preserve scoped link excerpts and source receipts
Oct 9, 2026
7173efe
feat(collection): receive verified fresh host snapshots safely
Oct 9, 2026
394ea1d
docs: record installed source refresh verification
Oct 9, 2026
d48a86f
feat: refresh opted-in video sources through native host reads
Oct 9, 2026
6842993
fix(alden): admit source acquisition controls through desktop bridge
Oct 9, 2026
38b5370
docs(alden): record verified native acquisition delivery and limits
Oct 9, 2026
2d496ba
feat(alden): audit scoped graph integrity and duplicate candidates
Oct 9, 2026
091855c
fix(alden): rest graph motion after boundary projection stabilizes
Oct 9, 2026
b7ce26e
fix(graph): rest stationary layouts using conservative display scale
Oct 9, 2026
055de7d
docs(graph): record installed display-rest evidence and limits
Oct 9, 2026
dfaa7e0
feat(graph): add scoped current-vector affinity audit and force review
Oct 9, 2026
9630225
fix(ci): isolate affinity RSS checks in a fresh process
Oct 9, 2026
974e0fb
feat(graph): bind cached-vector affinity to asynchronous semantic layout
Oct 9, 2026
e88b800
fix(audit): cover affinity read and wait for bounded source readiness
Oct 9, 2026
b498cf5
fix(graph): distinguish provisional seeds from completed layout poses
Oct 9, 2026
7f30db9
fix(audit): read semantic state from the actual renderer diagnostics
Oct 9, 2026
2d76071
docs: record installed semantic layout delivery and limits
Oct 9, 2026
de45f3b
fix: fence snapshot confirmations and retain source revision order
Oct 10, 2026
3a62185
fix: harden model availability telemetry for Alden 0.3.56
Oct 10, 2026
5f965fa
fix: isolate malformed affinity records in Alden 0.3.57
Oct 10, 2026
5e0eeb1
fix: keep graph quality audits bounded with malformed records
Oct 10, 2026
7c35c5c
Harden Alden history capture and canonical build evidence
Oct 10, 2026
0509551
Reject ambiguous JSON in Alden graph quality audits
Oct 10, 2026
68a3890
Fix structured bodies and snapshot restoration in Alden 0.3.59
Oct 11, 2026
4f01bc3
Reconnect source evidence after snapshot returns
Oct 11, 2026
5d03075
Keep visible Alden histories active and preserve route health on canc…
Oct 11, 2026
b099f9f
Document Alden 0.3.60 installation and remaining verification
Oct 11, 2026
401ddd6
Improve bounded graph separation, label placement and quality audit
Oct 11, 2026
7dfdbb9
Distribute crowded graph density and preserve selected hub contrast
Oct 11, 2026
f5744c9
Fix restored graph camera limits and streamed response event boundaries
Oct 11, 2026
1038972
Document installed graph idle and live routed media verification
Oct 11, 2026
cc725c9
fix(graph): relieve neighborhood crowding with bounded sampled refere…
Oct 11, 2026
2f1d3a2
docs(graph): record installed 0.3.64 density verification
Oct 11, 2026
1884342
fix(graph): refresh measured label bounds across view and typography …
Oct 11, 2026
da86f1a
fix(graph): hide labels until their first placement pass
Oct 11, 2026
0b1b404
docs(graph): record installed measured-label verification
Oct 11, 2026
daa4fbd
Fix stale conversation input targets after catalog refresh
Oct 11, 2026
f4ceb05
Document conversation target verification and remaining input gates
Oct 11, 2026
4fcfbf0
Clarify graph relation distance and defer zoom detail geometry
Oct 11, 2026
478ad2b
Fit focused branches in the viewport and capture connection views
Oct 11, 2026
90ce79a
Keep relation strokes readable at different zoom levels
Oct 11, 2026
fa9c665
Document graph reference measurements and installed verification
Oct 11, 2026
9ad6f00
Checkpoint assistant text and image input proposal before graph redesign
Oct 11, 2026
881985d
Complete bounded typed image input and preserve request provenance
Oct 11, 2026
c47284b
Admit fixed assistant input capture names
Oct 11, 2026
1ba6cf1
Expose bounded native assistant errors without raw process details
Oct 11, 2026
92b970a
Record code-only voice admission probe diagnostics
Oct 11, 2026
6a6a2ac
Audit native admission with invalid images before inference
Oct 11, 2026
87ac79a
Confirm exited Darwin processes before ignoring EINVAL
Oct 11, 2026
594c1eb
Verify same-user zombie state during assistant admission
Oct 11, 2026
9afd787
Bound and diagnose assistant WebView bootstrap
Oct 11, 2026
2e5be03
Wait for owned asset navigation before assistant audit
Oct 11, 2026
4349141
Wait for assistant DOM module readiness without early evaluation
Oct 11, 2026
e80ac53
Observe composer readiness and retain asset load authority
Oct 11, 2026
8717f1b
Defer audit IPC until framework and DOM are initialized
Oct 11, 2026
efcfcb7
Wait for status wiring and reannounce owned window visibility
Oct 11, 2026
aa4c229
Activate only the owned assistant audit window for input
Oct 11, 2026
3138d98
Await actual composer activation after native focus
Oct 11, 2026
35fb40a
Document installed typed image input and actual verification limits
Oct 11, 2026
3d7d327
Preserve mixed photo context and durable generation evidence
Oct 11, 2026
3386e33
Wait for painted visible assistant answers before capture
Oct 11, 2026
164dbdb
Document installed mixed photo context and measured request evidence
Oct 11, 2026
908329b
Expose bounded project graph quality observations in Alden
Oct 11, 2026
b4dfd9d
Fence union quality scans against project catalog changes
Oct 11, 2026
40a74f0
Cover collection quality in the isolated render bridge fixture
Oct 11, 2026
272e2d3
Document installed quality checks and ongoing source preservation
Oct 11, 2026
f4022c6
Separate source metadata from content graph evidence
Oct 11, 2026
d15c29a
Honor noncontent declarations in verified retained records
Oct 11, 2026
19ba752
Document source content evidence and installed graph verification
Oct 11, 2026
216b158
Add reversible graph source reviews with integrity and recovery guards
Oct 12, 2026
c4d5759
Create the entity audit only in an incognito owned view
Oct 12, 2026
27ddf11
Admit only the six fixed entity workflow captures
Oct 12, 2026
30332cb
Match the reviewed undo confirmation controls in native QA
Oct 12, 2026
8a84804
Show the actual source comparison before its native capture
Oct 12, 2026
4e1effb
Require post-data paint before entity workflow captures
Oct 12, 2026
f292ede
Preserve the confirmed source-read observation on native failure
Oct 12, 2026
ef7ef9e
fix(alden): preserve full graph within native transport budget
Oct 12, 2026
0bf91c1
docs(alden): record reversible source review delivery and limits
Oct 12, 2026
beb177e
perf(alden): bound focused graph relations without dropping evidence
Oct 12, 2026
9d47d94
docs(alden): record focused graph memory and precision verification
Oct 12, 2026
2d28a02
fix(alden): keep source descriptions out of content evidence
Oct 12, 2026
23f1b41
docs(alden): record source-description evaluation and delivery
Oct 12, 2026
a49514a
Improve sparse graph visibility and wait for settled native paint
Oct 12, 2026
6fe38ef
Complete sparse camera fit when asynchronous anchors arrive
Oct 12, 2026
e7f9c59
Document installed sparse graph verification and remaining gates
Oct 12, 2026
a7a8fe8
Balance bounded semantic comparisons across admitted projects
Oct 12, 2026
d1c3df7
Apply revalidated affinity to the graph actually displayed
Oct 12, 2026
7271fbc
Use public graph interface in revalidation regression fixture
Oct 12, 2026
e305e28
Simulate graph restoration through the public fixture operation
Oct 12, 2026
75aec24
Audit current graph enrichment and retain startup failure state
Oct 12, 2026
0b1abe2
Record 0.3.77 delivery and installed affinity memory limitation
Oct 12, 2026
a844b6c
Release graph page before bounded affinity admission
Oct 12, 2026
3a2323e
Record installed affinity memory verification and delivery boundaries
Oct 12, 2026
122e3d5
Measure projected graph core geometry on explicit native audit
Oct 12, 2026
f356af3
Keep later page seeds out of solved community coordinates
Oct 12, 2026
d4b88ad
Restore solved overview geometry after local-view placeholders
Oct 12, 2026
17d8559
Finish requested dense overview fits after provisional geometry
Oct 12, 2026
e80c253
Record native overlap observations and remaining compact concentration
Oct 12, 2026
92004ad
Distinguish candidate observation timeout from installed idle proof
Oct 12, 2026
e8f4410
Improve dense overview spacing for compact windows
Oct 12, 2026
bc78cbd
Match compact graph marker area to display compression
Oct 12, 2026
5f00698
Document installed overview projection and verification limits
Oct 12, 2026
c1d6686
Bind graph colors and legend to validated current communities
Oct 12, 2026
39ef79c
Expire cached graph communities at visible relation boundaries
Oct 12, 2026
d975aa0
Preserve completed native workspace observations before failures
Oct 12, 2026
e204c96
Reject expired replies and restore completed layout cache state
Oct 12, 2026
8745fdb
Document installed current-community colors and temporal gates
Oct 12, 2026
eb5ea67
Separate derived index summaries from original body evidence
Oct 12, 2026
8e66649
Document installed summary evidence and validation limits
Oct 12, 2026
703b115
Fit dense graph viewports and bound star glyph sizes
Oct 12, 2026
9f846c3
Record installed viewport fit observations and delivery limits
Oct 12, 2026
9d80f7d
Bind retrieval proof to actual source membership and revision
Oct 12, 2026
e83737d
Document installed retrieval scope and source acceptance
Oct 12, 2026
cb2a22d
Add read-only native observations for graph project and page scopes
Oct 12, 2026
d390fd9
Match scoped audit paint to native content layout dimensions
Oct 12, 2026
3d0820d
Expose index-only physics state for scoped native replay
Oct 12, 2026
3ebf3f1
Capture one physics state through bounded metric pieces
Oct 12, 2026
24d8fd1
Fix ellipsoid contact drift and spread dense graph views
Oct 12, 2026
4f6a911
Guard scoped AppKit resize and observe rest after layout readiness
Oct 12, 2026
75f33eb
Wait for scoped viewport paint before strict rest observations
Oct 12, 2026
81905d2
Keep large graph scopes within the lossless desktop transport budget
Oct 12, 2026
1a6b6d9
Record owned native exception details and scoped audit phases
Oct 12, 2026
a3f987a
Retain audit failure reason before report publication
Oct 12, 2026
9343f44
Document graph scope source results and pending native acceptance
Oct 12, 2026
a28ba7e
Keep scoped native geometry exceptions inside their API boundary
Oct 12, 2026
667416c
Measure owned window rectangles without retaining the WebKit parent
Oct 12, 2026
07186e0
Stage and verify the release CLI after debug Rust checks
Oct 12, 2026
81d3707
Record installed graph scope verification and release CLI regression
Oct 12, 2026
ac51194
Keep candidate and installed residual overlap observations distinct
Oct 12, 2026
ba2f3ac
Bind displayed and reviewed relations to immutable revisions
Oct 12, 2026
962b371
Document revision-bound graph and resolution verification
Oct 12, 2026
cd0decd
Inspect untitled stored bodies separately from titles and link refere…
Oct 12, 2026
3ad651f
Document installed body matching and actual correction retrieval limits
Oct 12, 2026
f1ec53c
Find attached Korean literals within current permitted graph records
Oct 12, 2026
7ebbb34
Keep numeric Korean literals within their source value boundaries
Oct 12, 2026
7650adf
Document installed Korean search and remaining correction ranking gap
Oct 12, 2026
d3c7354
Capture anonymous projected circles for bounded overlap correction
Oct 12, 2026
8da9943
Keep projected circle chunks within native metric byte fence
Oct 12, 2026
f53183e
Separate overlapping overview cores with bounded shared display offsets
Oct 12, 2026
8779c79
Apply projected correction on the final settling frame
Oct 12, 2026
3ecc2e5
Bound view corrections during camera motion and preserve displayed pins
Oct 12, 2026
0bcb1c0
Freeze selected display targets while awaiting layout and report reje…
Oct 12, 2026
3b1e17d
Document installed overlap correction and remaining layout reproducib…
Oct 12, 2026
ef73546
Use completed solver priors for asynchronous graph affinity updates
Oct 12, 2026
e15a3ea
Expose anonymous solver targets in bounded owned projection audit
Oct 12, 2026
7586e58
Document installed deterministic solver handoff and bounded verification
Oct 12, 2026
bcb28eb
Record installed full target comparison and retained restore timeout
Oct 12, 2026
d0c8728
Avoid full pair projection in graph restore readiness checks
Oct 12, 2026
5dbb6ef
Preserve unavailable graph states in lightweight viewport audits
Oct 12, 2026
c968675
Record bounded visibility and animation intent on restore failure
Oct 13, 2026
490547c
Keep visible knowledge graphs active through late focus loss
Oct 13, 2026
948c2b3
Verify emergency latch stays set across graph redraw requests
Oct 13, 2026
36a2fa3
Document installed graph restore fixes and retained verification limits
Oct 13, 2026
546ca7e
Prefer version-bound matching bodies in scoped GraphRAG evidence
Oct 13, 2026
2e9cc5d
Document installed scoped body evidence ranking and evaluation limits
Oct 13, 2026
b2b314d
docs: map Alden 0.3.92 runtime and verification boundaries
Oct 13, 2026
ca34cd3
docs: verify local adapter retrieval in the input map
Oct 13, 2026
3e3e4ff
feat: connect desktop documents to confirmed chat turns
Oct 13, 2026
342c278
fix: keep document audit captures on accepted output names
Oct 13, 2026
50daacf
ci: cover desktop document intake and context regressions
Oct 13, 2026
4716f38
fix(alden): preserve document request ownership and parser cleanup
Oct 13, 2026
81ea865
fix(alden): observe scoped graph resume and blur in one task
Oct 13, 2026
632221d
docs(alden): record installed document and scoped graph verification
Oct 13, 2026
f9777b1
feat(alden): bind actual link snapshots to desktop conversations
Oct 13, 2026
9a61255
fix(alden): include link transport in prepared worker runtimes
Oct 13, 2026
f9f255a
fix(alden): preserve pending first replies during catalog refresh
Oct 13, 2026
6afc795
fix(desktop): keep latest replies visible through compact resize
Oct 13, 2026
22bb604
fix(desktop): preserve reading intent through resize and restore
Oct 13, 2026
072cc4e
test(desktop): verify completed reply survives native hide and restore
Oct 13, 2026
cb3cdf7
docs: record installed media context and reading-intent verification
Oct 13, 2026
2509e56
feat(knowledge): observe declared time and quantity normalization
Oct 13, 2026
6311c23
test(desktop): budget complete normalization workspace captures
Oct 13, 2026
9dc3dac
Make graph labels useful and separate imported numeric tails
Oct 13, 2026
6593244
Batch retained-text migration and preserve unchanged FTS rows
Oct 13, 2026
1f637c2
Document graph label and retained-source delivery evidence
Oct 13, 2026
a7c59ee
Preserve source observations without duplicate relation revisions
Oct 13, 2026
0e38293
Document source observation delivery and run its regressions in CI
Oct 13, 2026
a930706
Add source-bound duplicate comparisons and preserve incomparable dates
Oct 13, 2026
44bb1d2
Admit bounded read-only comparison flags through the desktop bridge
Oct 13, 2026
4b306be
Use the observed source comparison scroll container in native audits
Oct 13, 2026
093b6d1
Keep nested quality summaries readable inside the graph toolbar
Oct 13, 2026
617cd06
Document installed source comparisons and retained verification limits
Oct 13, 2026
ddde612
docs: update Alden 0.3.102 implementation maps
Oct 13, 2026
853ce1a
fix: prevent duplicate inflation in retrieval evaluation
Oct 13, 2026
c1f1efb
fix: use supported graph identities in retrieval fixtures
Oct 13, 2026
022abd5
docs: record bounded canonical E5 retrieval evaluation
Oct 13, 2026
cc826de
Preserve original proofs while compacting exact retained search text
Oct 13, 2026
1304393
Restore verified normalized text vectors to graph layout affinity
Oct 13, 2026
8ca461a
Show source-bound annotation differences in graph comparisons
Oct 13, 2026
fd19e50
Compact repeated context while preserving differing source tags
Oct 13, 2026
242b813
Preserve dependency pins when bumping the Alden app
Oct 13, 2026
8e3590c
Route saved-source requests with explicit query time and reading scope
Oct 13, 2026
ef98065
Allow high reasoning to finish and report output-limit failures
Oct 13, 2026
c4845e6
Bind source date labels separately from collection-version times
Oct 14, 2026
48cfbc2
Review retained source tag differences without identity promotion
Oct 14, 2026
b468f49
Separate retained tag inspection from the general quality scan
Oct 14, 2026
c6ce72d
Throttle source scan cancellation checks without weakening budgets
Oct 14, 2026
55aa5fc
Browse retained tag differences with current source and scope validation
Oct 14, 2026
20fe7fe
fix(runtime): package annotation candidate reader and run its CI tests
Oct 14, 2026
0d3f778
perf(knowledge): pin source scan directory and batch current versions
Oct 14, 2026
67e7f6c
test(desktop): bound expanded tag navigation audit separately
Oct 14, 2026
2c22ba2
fix(knowledge): distinguish retained links from article body evidence
Oct 14, 2026
ed2ecb7
docs(knowledge): explain preserved link reference qualification
Oct 14, 2026
69080ec
fix(graph): qualify partial reads and bound complete snapshot work
Oct 14, 2026
ea331e5
test(knowledge): separate lifecycle fixtures from probe deadlines
Oct 14, 2026
ab855b1
Document installed media and followup verification boundaries
Oct 14, 2026
6960820
Retain owning late attempt observations without stale answers
Oct 14, 2026
80cb3f8
Keep open model search inside resized and scrolled windows
Oct 15, 2026
a42b30b
fix: accept Darwin signed process UID representation
Oct 15, 2026
8ac4695
fix: admit bounded model menu geometry receipts
Oct 15, 2026
ace9aec
fix: bound quality read I/O and reject cache lifecycle changes
Oct 15, 2026
c67ff83
Reduce bounded quality audit repeated CPU work
Oct 15, 2026
4ca1cc7
Settle independent graph nodes and reject ambiguous affinity JSON
Oct 15, 2026
45d4d6c
Bind native Back checks to captured click origins
Oct 15, 2026
080659c
docs: record Alden 0.3.116 installed verification
Oct 15, 2026
20b23f0
fix: distribute validated affinity candidates within endpoint limits
Oct 15, 2026
0fc0eb5
Reduce graph affinity cancellation read overhead
Oct 15, 2026
2887f80
Document Alden 0.3.118 installation and measured limits
Oct 15, 2026
ab51aa6
Keep empty-body references out of body evidence
Oct 15, 2026
0537787
Document Alden 0.3.119 delivery and evidence limits
Oct 15, 2026
9020ab0
Interrupt collection quality SQL on request cancellation
Oct 15, 2026
6e9df36
Document Alden 0.3.120 SQL budget verification and limits
Oct 15, 2026
0d909a6
Reduce affinity graph display allocations while preserving reference …
Oct 15, 2026
57f937b
Document Alden 0.3.121 reference allocation evidence and delivery limits
Oct 15, 2026
6c5928b
Preserve only authoritative prior positions in semantic layout
Oct 15, 2026
47d795e
Improve dense overview distribution and star clearance
Oct 15, 2026
0f00540
Keep dense overview clearance stable across native view sizes
Oct 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
646 changes: 646 additions & 0 deletions .github/workflows/alden-desktop-release.yml

Large diffs are not rendered by default.

292 changes: 274 additions & 18 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

17 changes: 16 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
__pycache__/
*.pyc
# The Alden menu bundle currently loads these exact CPython 3.11 artifacts.
!scripts/_auto_reply_menubar_wrapper.cpython-311.pyc
!scripts/_bujamentor_menubar_overlay.cpython-311.pyc
!scripts/_bujamentor_menubar_impl.cpython-311.pyc
*.egg-info/
dist/
build/
Expand All @@ -9,7 +13,7 @@ build/
credentials.json
/tmp/

# Dedicated Jarvis voice interpreter; never Extra's runtime.
# Dedicated Alden voice interpreter; never Extra's runtime.
.venv-voice/
browser/.venv/
target/
Expand Down Expand Up @@ -72,3 +76,14 @@ context.sqlite3
reply-queue.sqlite3
model-circuit.sqlite3
macos/AutoReplyMenu/build/

# Private local review captures and unreleased voice candidates.
docs/architecture/alden-core-panel.png
docs/architecture/alden-knowledge-hologram.png
docs/architecture/alden-live-panel.png
docs/architecture/alden-live-settings.png
docs/architecture/alden-settings-panel.png
docs/architecture/alden-system.architecture.pre-main-*.json
voice/models/experimental/
scripts/libalden_audio.dylib
scripts/libalden_audio.dylib.build-*
95 changes: 94 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,105 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.3.9] - 2026-10-03

- 네이티브 화면 검사기가 정지한 장면도 허용하도록 수정했습니다. 첫 실제 프레임·복원 후 새 프레임·컨텍스트·숨김 중 프레임 중단을 확인하며 지속적인 대기 렌더를 요구하지 않습니다.

## [0.3.8] - 2026-10-03

- 공식 Thinking Orbs 엔진을 지식 그래프 주요 노드·사이드바·메뉴바에 적용합니다. 실제 음성·검색·수집·작업 상태에 연결하고 대기·숨김·중단·모션 감소에서는 정지합니다.
- 노드를 선택하면 전체 설명·연결 관계·채팅방과 작성자·날짜가 있는 대표 원문을 보여줍니다. 네이티브 브리지에서 빠지던 설명과 출처를 복원하고 동명이인·다른 계정·다른 방의 근거를 제외합니다.
- 상태별 프레임과 GPU 버퍼를 재사용하고 정지한 라벨의 반복 갱신을 제거합니다. 메뉴·운영 버튼·사이드바 하단 중앙 버전은 유지합니다.

## [0.3.7] - 2026-10-03

- 실제 재생 티켓·커서의 완료된 출력 PCM 구간을 그래프에 연결합니다. 입력·출력 값을 분리하고 아직 재생하지 않은 구간·오래된 값·중단된 턴을 표시하지 않습니다.
- 유효하지 않은 초기 SDK 시간을 변환할 때 발생하는 오디오 예외를 방지합니다. 네이티브 ABI2를 명시하고 버전이 맞지 않으면 권한 요청 전에 종료합니다.
- 작은 네이티브 상태 읽기로 음성 반응을 연결하며 Python·모델 호출을 만들지 않습니다. 상태 게시 시에만 출력 커서를 읽고 숨김·종료·빈 그래프에서는 조회를 정리합니다.

## [0.3.6] - 2026-10-02

- 우주 그래프와 메뉴바 팝업에 최근 마이크 입력 크기를 제한된 궤도선으로 연결합니다. 오래된 값·오류·중단·재생 중 입력을 제외하며 조용할 때는 표시하지 않습니다.
- 진폭 평활화는 128점 버퍼를 재사용하고 안정되면 렌더링을 멈춥니다. 설정 그래프도 보이는 동안만 신호를 읽고, 숨김·복원은 기존 수명주기에 따릅니다.
- 설치본 연속 음성 8턴과 문맥 질의 12회 근거를 보존합니다. WAV 생성·실제 재생과 ASR 7/8·사람의 청취를 구분하며 측정용 엔진 drain 대기는 명시적인 상한으로 설정합니다.

## [0.3.5] - 2026-10-02

- 지식 그래프·사이드바·팝업을 같은 우주 팔레트로 정리하고 실제 관계를 별자리처럼 표시합니다. 메뉴·운영 버튼·중앙 버전과 지식 ID는 유지합니다.
- 배경 별은 한 묶음의 고정 버퍼로 그리며 클릭·검색 데이터에 포함하지 않습니다. 멈춘 장면은 프레임을 중단하고 데이터·크기·실제 조작 변화에 다시 그립니다.
- 구형 노드 경계에서 아주 작은 카메라 오차로 마우스 선택이 빠지는 문제를 수정했습니다. 앞쪽 노드·레이어·거리와 최신 위치를 보존합니다.

## [0.3.4] - 2026-10-02

- 제목이 없는 방은 등록 이름을 ID로 복원하거나 고유한 미확인 표식으로 표시합니다. 같은 이름·Unicode·공백 변형을 검색에 반영하되 방·인물 ID를 합치지 않습니다.
- 방 이름과 근거는 동일 스냅샷에서 읽고, 인물 표본은 기존 결과를 보존하는 색인 경로로 읽어 복사와 전체 정렬 비용을 줄입니다.
- 방·인물·기간을 공개 검색 번들까지 적용하고 원본 REAL 시간을 보존합니다. 두 주제를 명시한 질문에서 떨어진 주제가 누락되지 않게 합니다.
- 합성 27문항을 조정·검증으로 분리하고 로컬 E5로 검색 설정 81개 조합을 평가합니다. 기존 기본값을 유지하고 미해결 후보도 기록합니다.

## [0.3.3] - 2026-10-02

- 취소 신호를 실제 Qwen 음성 디코더의 토큰 생성 단계에 연결합니다. 원래 중단 조건과 메서드는 유지·복원하고, 합성과 해제를 직렬화해 이전 턴의 취소가 다음 턴에 섞이지 않게 합니다.
- 같은 Qwen3-TTS 1.7B BF16 가중치에서 기본 화자를 한국어 원어 화자 Sohee로 명시하고, 성별 지시 없이 차분한 집사 말투를 유지합니다.
- 단독 정수 답변은 숫자임을 분명하게 읽으며 화면·대화 기록의 원문은 유지합니다. 날짜·식별자·음수·소수·문장 속 숫자는 기존 의미를 보존합니다.

## [0.3.2] - 2026-10-02

- 원본 관찰 근거의 필수 필드를 보존해 인물·방 노드가 RRF 검색 필터에서 빠지는 문제를 수정했습니다. 숫자 방 ID를 계정 범위의 방 키로 연결합니다.
- 특정 방의 검색 결과는 해당 방의 원문과 근거 ID로 다시 구성합니다. 전역 인물 노드가 다른 방의 예문을 섞어 보여주지 않습니다.
- 음성 지식 요청에 로컬 원문·RRF 검색을 연결하고, 같은 주제의 후속 요청만 이전 검색을 이어갑니다. 다른 주제로 전환한 후에는 오래된 검색을 되살리지 않습니다. 동일한 이름의 방은 임의로 선택하지 않으며, 과거 발신 기록은 새 사용자 발화로 넣지 않습니다.
- 검색 인용 JSON과 맥락 예산을 제한하고, 임베딩 소켓·SQLite 검색에 취소를 전파합니다. 계산 결과는 숫자와 단위를 분명하게 표기하도록 음성 프롬프트를 정리했습니다.

## [0.3.1] - 2026-10-02

- 실제 앱 백그라운드 수집이 macOS 접근 확인 단계의 카카오톡 설정 파일 open()에서 멈추는 것을 샘플링으로 확인했습니다.
- SQLite를 열기 전 계정 설정 파일 조회에도 3초 상한을 두고, 접근 대기 원인을 DB 갱신 화면에 표시합니다. 기존 캐시로 OS 접근 결정을 우회하지 않습니다.
- 앱의 자동 원본 수집은 macOS 접근 허용 확인이 남아 있습니다. 완성된 로컬 검색 자료와 범위별 읽기는 별도로 검증됐습니다.

## [0.3.0] - 2026-10-02

- 카카오톡 원본 DB·WAL의 고정 복제본을 재사용해 전체 메시지를 별도 로컬 검색 저장소로 수집합니다. 배치 데이터와 커서를 함께 커밋하며 중단 뒤 이어집니다.
- 작업 저장소와 공개 검색 저장소를 분리했습니다. 전체 수집과 삭제 반영이 끝나면 SQLite Online Backup으로 만든 저장소를 원자적으로 교체합니다. 이전 검색 저장소는 작업 중에도 유지됩니다.
- 채팅방·계정·발신자 숫자 ID로 지식을 구분하고, 같은 이름의 방과 사람을 합치지 않습니다. 원본 조회 근거와 의사결정 원장 근거를 구분합니다.
- 전체 원문을 BM25로 검색하고 인물·방 선택 시 해당 범위의 과거 대화를 인용합니다. 과거 발신 기록을 새로운 사용자 입력으로 취급하지 않습니다.
- 실제 원본에서 발견한 소수형 시간을 원본 비트까지 보존하고, 전체 대화 기록 읽기도 해당 형식을 지원합니다.
- 오래 숨겨진 설정 창의 갱신 기록에서 중간 페이지가 빠지던 커서를 수정했습니다. 갱신 타임라인을 가상화하고 읽던 행의 위치를 보존합니다.

## [0.2.1] - 2026-10-02

- 실제 설치본 검사에서 발견한 팝업의 이전 276px 너비와 캔버스 여백 규칙을 제거했습니다. 560×420 창 전체에 그래프가 그려집니다.
- DB 원본 수집에 별도 90초 상한, 앱의 전체 지식 갱신에 120초 상한을 두고, 대화 기록 읽기는 25초 동안 기다리게 했습니다. 짧은 일반 상태 조회의 상한은 유지합니다.
- WKWebView의 1/64px 레이아웃 양자화를 허용하되 실제 창 크기와 캔버스 배율은 계속 검사합니다.
- 네이티브 레이아웃 검사 실패 시 실제 창·캔버스 치수를 기록합니다. 실패한 갱신은 히스토리에 남아 있으며 자동 성공으로 표시하지 않습니다.

## [0.2.0] - 2026-10-02

- 넓은 설정 창에 지식 그래프·카카오톡 대화·음성 대화·DB 갱신·설정 메뉴를 배치했습니다. 별도 설정 아이콘과 모달을 제거했습니다.
- 설정 페이지를 자동화 등록 목록, 필요할 때 열리는 편집 영역, 답변 방식과 음성 설정으로 전면 개편했습니다. 채팅방 등록 입력이 중복되지 않습니다.
- 실제 3D 지식 그래프에 회전·확대·계층 탐색을 연결하고 왼쪽 클릭 메뉴바 팝업을 560×420으로 확장했습니다.
- 카카오톡은 방별 로컬 전체 기록, 음성은 세션별 확정 기록을 원문 그대로 페이지 단위로 탐색합니다. 화면에 그리는 메시지 수는 제한합니다.
- DB 수집·검색 자료 정리·완료·대기·중지·실패를 구분합니다. 원본 수집량과 검색 인덱스의 범위를 별도로 표시합니다.
- 사이드바 최하단에 운영 중·일시 중지·재개 버튼 하나와 중앙 정렬된 앱 버전을 표시합니다.
- 개발 미리보기의 예시 데이터는 명시적으로 표시하며 설치본에서 사용하지 않습니다. 호출어 승인과 서명·공증된 공개 배포는 별도 남은 항목입니다.

## [0.1.9] - 2026-10-02

내부 소스 단계입니다. 별도 설치본이나 공개 릴리스를 만들지 않았습니다.

- 카카오톡 로컬 대화 전체를 고정 커서로 읽는 API와 원본 DB·WAL을 함께 검증하는 수집 API를 추가했습니다. 메시지 원문과 큰 ID를 보존합니다.
- 확인된 음성 대화와 DB 수집·지식 정리 단계를 별도 로컬 기록에 저장합니다. 취소된 답변은 음성 기록에 확정하지 않습니다.
- 실제 OSK 4.1.2 API로 카카오톡 아래 대화방·인물·주제를 관리하고 기존 노드 ID와 사용자 편집을 보존합니다.
- 자동화 등록 CRUD에 이전 설정 백업과 명시적 기능 선택, 변경 후 읽기 확인을 연결했습니다. 기존 전송 조건과 실행 중인 워커는 유지합니다.

## [Unreleased]

대화 턴 처리와 응답 안정성, 운영 비용을 함께 개선하는 변경 묶음입니다.

### Alden Desktop
- macOS 메뉴바 앱을 Alden 0.1.5로 전환하고 Tauri v2·Three.js 렌더러, 로컬 MLX 27B 기본 경로, 준비 상태를 확인하는 음성·Browser-Use 소스, 긴급 중단 단축키와 Archify 구조도를 묶었습니다. 설치본과 빌드 번들의 일치, 합성 렌더 검사, 로컬 단일 생성은 확인했습니다.
- 호출어 후보는 출시 기준을 통과하지 못해 실제 음성 시작이 꺼져 있습니다. Flash-Next 상주, 카카오톡 답변 지연·건너뜀 개선, 설치본의 GPU 절감, 서명·공증된 공개 앱 릴리스는 아직 검증되지 않았습니다.

### Added
- **OpenCodex 인증 게이트웨이 연동 및 자동 폴백**: 기존 gjc 프로세스 호출 방식을 로컬 OpenCodex 게이트웨이(`http://127.0.0.1:10100/v1`) 직접 연동으로 교체했습니다. OpenCode Go 사용량 한도 초과 시 0.28초 만에 에러를 감지하고 `google-antigravity/gemini-3.8-flash`(high)로 즉시 자동 전환되어 서비스 중단 없이 답장을 이어갑니다.
- **레거시 원격 명시 경로의 OpenCodex 게이트웨이 연동 및 자동 폴백**: 기존 gjc 프로세스 호출 방식을 로컬 OpenCodex 게이트웨이(`http://127.0.0.1:10100/v1`) 직접 연동으로 교체했습니다. OpenCode Go 사용량 한도 초과 시 0.28초 만에 에러를 감지하고 `google-antigravity/gemini-3.8-flash`(high)로 전환합니다. Alden의 로컬 MLX 운영 설정에는 이 원격 경로를 사용하지 않습니다.
- **초보자 친화적 메뉴바 앱 리뉴얼**: 내부 코드 중심의 딱딱한 상태 문구를 직관적인 상태 표기(🟢 정상 작동, 🟡 처리 중, 🔴 확인 필요)와 쉬운 동작 라벨("즉시 답장 보내기", "긱뉴스 바로 전송", "답변 기록 보기", "AI 모델 설정")로 전면 개편했습니다.
- 재랭커 후보 평가를 **자격(정책 통과)과 순위(랭크)** 두 단계로 분리했습니다. 자격 판정이 내는 거부를 기계 판독 가능한 안정 코드(`policy_rejections`의 `index`/`draft`/`reason`/`codes`/`decision`)로 모으고, 반환 dict에 `fallback`·`policy_rejections`를 **모든 경로에서** 싣습니다. 결정 기록(`rerank_policy_rejections`, `provenance.rerank`)과 영수증(최상위 `policy_rejections`, 최대 8건)에도 같은 목록이 실려 "어떤 초안이 왜 거부됐는지"가 순위 안에 묻히지 않습니다. 인가 발신자는 여전히 스킵하지 않으며(경량 폴백 `lenient_policy`: 빈 답·220자 초과·원문 복사만 금지) 사이드카의 `MAX_DRAFTS=8`/`MAX_DRAFT_CHARS=220` 정렬은 그대로입니다.
- 응답시간 학습 스타일 tell에 구조 필드를 추가했습니다: `kind`(length/ending/question/caption/ai_detection), `target_phrase`, `scope`(room/recipient), `source`(operator/self-observed), `confidence`, `validity`·`expiry`. 원장 스키마는 v2가 되지만 v1 행은 기본값으로 하위호환 로드되고, 만료된 소프트 tell은 로드 시 건너뜁니다. phrase-only 정규화(단일 토큰 금지, 다어절·4자 이상)와 avoid-only 레지스터는 그대로입니다.
Expand Down
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ sha1 = "0.10"
sha2 = "0.10"
reqwest = { version = "0.12", default-features = false, features = ["blocking", "json", "gzip", "brotli", "deflate", "rustls-tls"] }
rsa = { version = "0.9", features = ["sha1"] }
rusqlite = { version = "0.33", features = ["bundled-sqlcipher"] }
rusqlite = { version = "0.33", features = ["bundled-sqlcipher", "backup"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tempfile = "3.18"
Expand Down Expand Up @@ -66,4 +66,4 @@ core-graphics = { version = "0.25", features = ["elcapitan"] }
assert_cmd = "2"
predicates = "3"
proptest = "1"
rusqlite = { version = "0.33", features = ["bundled-sqlcipher"] }
rusqlite = { version = "0.33", features = ["bundled-sqlcipher", "backup"] }
Loading
Loading