// The Chronicle — Patch Notes
The realm has always existed. It simply did not have a proper name on the world map.
Adventurers who survived Chapter One know the truth: the Notification Swarm was only the beginning.
A realm this large — with heroes across timezones completing quests, tending Zen Trees, and writing
scrolls at unreasonable hours — deserved an address that could be taken seriously.
questlinecli.com is that address. The Chronicle has been updated accordingly.
The backlog has not shrunk. But at least it now has a proper domain.
# Chronicle Entry — No Hero Quests Alone For a long time, the Fellowship could gather around a Campaign. It could exchange messages, watch the work move, and trust that the cloud would carry the Chronicle from one device to another. But trust deserves more than a familiar banner and a hopeful sync button. The Fellowship now carries its own wards. Private sync content is sealed on the hero's device with AES-256-GCM before it leaves the CLI or browser. Every encrypted event bears a durable Ed25519 signature over its complete envelope, verified before the contents are opened. Rust and WebCrypto now share the same identity-based key ceremony, allowing a trusted new device to recover the same account through its Transfer Code. That code is a master recovery secret. It should be guarded accordingly. Fellowship Campaigns receive separate keys and opaque routes. Invitations carry encrypted Campaign details, repeated acceptance survives interruption, and removing a Companion closes the old road by rotating both key and route. When the final Companion departs, the Campaign quietly becomes local again. The Chronicle learned to distrust echoes as well. Replayed requests, duplicate events, forged identities, substituted ciphertext, retired routes, interrupted rotations, and suspicious remote pages are rejected or quarantined. Signed snapshots replace old backups cleanly, retire unsigned account history at cutover, and make migration, restore, and cursor recovery safer. Then the Fellowship learned how to work as a party. Companion Keys remain the Fellowship trust ceremony, now with readable grouping, normalization, and fingerprints for verification. Owners and Stewards can assign multiple Quest bearers. My Quests gathers a hero's responsibilities across Campaigns. Six offline-capable Quest Stances move work from the first spark to final judgment, in either the Ledger or a keyboard-driven Kanban board. Quests may now name their blockers. Cycles and self-links are refused, and when a completed blocker opens the road, the waiting bearers receive one clear notice. Council Briefing gathers blocked, overdue, due-soon, unassigned, and review work beside Companion workload, presence, and recent activity. Each Quest can convene an encrypted Quest Council. Mentions bind to stable Companion identities; authors may revise or withdraw their own words without erasing authorship or sync history. Actionable Council Notices open the exact Quest, and their encrypted read state follows the recipient's trusted devices. Search and the Command Palette now lead directly to Fellowship work, Council messages, Campaign Chronicle messages, queues, and Companion workloads. Owners and Stewards administer assignments. Companions work and convene. Observers may witness the Council, but cannot alter its record. Beyond the Council chamber, Campaigns gained new maps. Software Release, Content Sprint, and Event Launch starter templates create private Campaign structure through a preview-first flow. That structure can travel as a versioned, identity-free JSON blueprint without carrying members, assignments, history, dates, notes, discussions, sharing state, or keys. Local iCalendar files can also become due-dated Quests after an exact preview. Repeated imports are idempotent. Reconciliation changes only event-controlled titles, descriptions, and due times, marks cancellations visibly, and leaves priority, completion, XP, and assignments untouched. IANA timezones and daylight-saving transitions are resolved before any Quest is written. Authenticated calendar subscriptions remain outside the gate. A native credential-vault boundary is ready, with no plaintext fallback, but provider login will not ship until OAuth and export-isolation tests prove that secrets cannot escape into SQLite, configuration, logs, backups, or Fellowship sync. The web app now guards Markdown previews, browser key storage, account caches, and encrypted envelopes more carefully. Shared cryptographic test vectors lock CLI and browser interoperability. Task-focused specializations now award their intended bonus on every Quest completion, unreachable key-handling paths were removed, and the release suite was repaired so encryption failures cannot hide behind unrelated noise. The server still sees the shape of a journey: routing identifiers, devices, event types, timestamps, approximate sizes, and sync frequency. It does not receive plaintext Quest or Council content. This is end-to-end encrypted content, honestly described, rather than a claim of knowing no metadata. The legacy road remains open only for unmigrated accounts during the rollback window. The new road has survived the automated gates, cross-platform restore, CLI-to-browser trials, hostile-input checks, retention audits, removal and key rotation, and the final two-device keyboard walkthrough. And then the Fellowship opened its Treasury. Every Campaign now keeps a ledger. Budgets for the whole Campaign and for each category. Income and expenses with their vendors, their due dates, the day they were settled. Estimated, actual, and billable coin on individual Quests. The Treasury warns at four fifths, at nine tenths, and at the moment a budget is spent, watches what falls due, and hands the whole record over as CSV or JSON. A Campaign also chooses the coin it counts in: dollars or pesos. Questline does not convert between them. It keeps no exchange rate and will not invent one. A hero declares the denomination they work in, and the numbers stay exactly as they were entered. Changing the coin relabels the ledger rather than rewriting its amounts, so no total ever quietly mixes two currencies, and the Chronicle notes the day the Campaign changed its reckoning. The Treasury travels the same warded road as everything else. In a shared Campaign every ledger entry, category, budget, and Quest cost is sealed with that Fellowship's key and carried through its opaque route; a private Campaign seals them with the hero's own. The server holds ciphertext. It never learns an amount, a vendor, or the name of a single entry. Trials confirm it: no title, no vendor, no category name appears in the clear on the wire, and a wrong Fellowship key opens nothing. Coin, however, demands more than a lock. It demands witnesses. Whoever records a cost is not the one who approves it. Companions record their own expenses and may amend them only while the entry is still Planned; once it is approved, paid, or cancelled it passes into the keeping of the Owner and the Stewards. Those two approve, settle, budget, and shape the categories. Only the Owner may change the coin of the whole Campaign. Observers audit the ledger and alter nothing within it. Authorship is written as the author's Companion Key the moment an entry is made, and it never changes hands. Editing another hero's record does not make it yours. The status field is no back door either: to write anything other than Planned, a hero must already hold the right to approve or to settle. The Fellowship gained a Treasury hall of its own, where a Campaign's totals, the hero who recorded each movement, and the exact reach of one's own rank are all plainly visible. Elsewhere the ledger now offers only the keys a rank can truly press. Three flaws were found and closed in the counting house. A ledger row that arrived before the Campaign, category, or Quest it depended upon was being discarded in silence while the sync claimed success; it is now reported and retried. An Observer could queue a treasury change the server would refuse, and because that refusal reverses an entire delivery, a single such edit could halt everything that account was trying to send. And two advertised keys had never once done what they promised: in the Treasury, one paused the music instead of settling a payment, the other silenced it instead of sorting the ledger. The party now shares more than a key. It shares the quest, and the coin. // Changes in this version ✓ AES-256-GCM private sync-v2 encrypts content before it leaves the CLI or browser ✓ Ed25519 signatures authenticate complete encrypted envelopes before decryption ✓ Shared Rust and WebCrypto key derivation keeps trusted-device restore interoperable ✓ Transfer Codes restore encrypted identities and are treated as master recovery secrets ✓ Signed snapshots replace old backups and establish the account's encrypted protocol cutover ✓ Restore, migration, cursor recovery, replay defense, and remote-page quarantine are safer ✓ Fellowship Campaigns use per-Campaign keys, opaque routes, and encrypted invitations ✓ Companion removal rotates keys and routes; the last removal returns a Campaign to local mode ✓ Companion Key grouping, normalization, and fingerprints strengthen invitation verification ✓ My Quests gathers assigned work across Campaigns and supports multiple Quest bearers ✓ Six Quest Stances work offline in the Ledger and keyboard-driven Kanban board ✓ Quest dependencies reject self-links and cycles and notify bearers when the path opens ✓ Encrypted Quest Councils support stable mentions, author-only revision, and withdrawal ✓ Council Notices deep-link to work and synchronize encrypted read state across trusted devices ✓ Council Briefing summarizes queues, review duty, workload, presence, and recent activity ✓ Fellowship search and Command Palette actions open exact messages, Quests, and workloads ✓ Owner and Steward assignment authority is enforced from signed event metadata ✓ Observers remain read-only while Companions can work and convene ✓ Software Release, Content Sprint, and Event Launch Campaign templates include preview ✓ Versioned JSON blueprints exchange Campaign structure without identities, history, or keys ✓ Local .ics import previews due-dated Quests, skips repeats, and reconciles only on request ✓ Calendar reconciliation preserves priority, completion, XP, assignments, and cancellations ✓ IANA timezones and daylight-saving transitions are resolved before calendar import ✓ Native credential-vault groundwork has no plaintext fallback ✓ Browser Markdown, local key storage, decrypted caches, and encrypted envelopes are hardened ✓ Cross-client cryptographic test vectors protect CLI and browser portability ✓ Task-focused specialization bonuses now apply to every Quest completion ✓ Security, retention, interoperability, restore, rotation, and release gates passed ✓ Campaign Treasury adds budgets, ledger entries, Quest costs, warnings, and CSV/JSON export ✓ Each Campaign counts in USD or MXN, with symbols and thousands separators on every amount ✓ No currency conversion and no exchange rate: switching relabels the ledger, never rewrites it ✓ The whole Treasury syncs encrypted under the Fellowship key, or the account key when private ✓ Round-trip trials prove no entry title, vendor, or category reaches the wire in cleartext ✓ Treasury rights follow Fellowship rank, separating who records a cost from who approves it ✓ Companions amend only their own Planned entries; Owner and Stewards approve, settle, and budget ✓ Only the Campaign Owner changes its coin; Observers audit the ledger and alter nothing ✓ Entry authorship is written as the author's Companion Key and can never change hands ✓ Fellowship Treasury shows totals, who recorded each movement, and the reach of your own rank ✓ Fixed a treasury row arriving before its Campaign, category, or Quest being dropped in silence ✓ Fixed an Observer's refused treasury write halting everything else that account was sending ✓ Fixed Treasury keys that paused and silenced the music instead of settling and sorting – Authenticated calendar subscriptions remain sealed until their security gate is complete – The server can still observe routing metadata, but never plaintext Quest or Council content – Questline keeps no exchange rate; converting between currencies remains the hero's own work – Somewhere beyond the mapped paths, the Archive remembers
# Chronicle Entry — Nothing Written Is Left Behind The Chronicle was built on a simple promise: If a hero wrote it, the Realm would remember it. Then the sync halls learned an unpleasant truth. Memory can be copied incorrectly. An old device can arrive carrying yesterday as if it were today. A step can cross the cloud without its parent. A scroll can wake beneath the wrong campaign. Progress can return from another machine wearing a lower number and insist that the hero has somehow become less accomplished. The Notification Swarm did not need to destroy the Chronicle. It only needed to make the Chronicle uncertain. The sync wards have been rebuilt. Projects, quests, steps, scrolls, codices, and earned progress are now checked before older or incomplete records are allowed to cross devices. Suspicious events are quarantined without trapping the healthy records beside them. When the Realm cannot prove that a change is safe, automatic sync pauses and asks the hero to inspect the disturbance. Losing conflict versions are preserved in revisions. Legacy relationship damage is repaired locally without deleting the work. An older machine can no longer lower a hero's level or steal earned XP merely because it arrived late and spoke confidently. The Sync screen now reveals more of what the wards are doing: the local position, the cloud position, the remaining activity, the state of the backup, and the progress of long transfers. Restore operations begin from the correct point in history. Transfer codes remain sealed until their backup is complete. Automatic sync waits after a restore until the hero declares the device ready. And when ordinary repair is not enough, the recovery chamber has tools. Old local sync history can be cleared. A trusted device can reseed the cloud with its complete state. Recovery is no longer a ritual performed with crossed fingers and a suspiciously named database copy on the desktop. Fellowship campaigns received the same protection. Campaign links, parent steps, scroll locations, companion work, and deletions now travel more faithfully between members. Even a scroll moved from one shared campaign to another leaves the correct hall and arrives in the correct archive. The Scrollkeepers have opened the roads between campaigns. Press R on a scroll to choose another campaign, leave it ungrouped there, or file it directly into one of its codices. Press Ctrl+N from the Dashboard to create a Quick Note, or summon Create Note through the Command Palette. Name it, choose its campaign, and begin writing before the thought escapes. The editor has become a more trustworthy desk. Ctrl+S saves without closing. Changed scrolls quietly autosave every few seconds without sounds or popups, leaving only a small Autosaved message in the status bar. Closing a changed scroll asks whether to save, discard, or continue editing. An unchanged scroll simply closes, having no drama to contribute. Large pastes arrive together, paragraphs and accented characters survive, wrapped text scrolls properly, and the cursor no longer invents spaces while attempting to remain visible. The Timekeepers contributed a calendar. Press C from Campaigns or a campaign workspace to see due quests across the Realm in a complete month view. New quests can be written directly onto a selected day, and due dates now anchor daily, weekly, monthly, and yearly recurrences. The Focus Sanctuary grew quieter and clearer. Its countdown now stands large at the center of the chamber. Beneath it, a restrained compass shows progress, elapsed time, remaining time, and the expected moment of return. It informs the hero without asking for the hero's attention. Elsewhere, the Realm's smaller guilds completed important repairs. macOS alerts found more reliable messengers and gained a simple test. The Music screen became easier to browse and control, and now opens with the local player ready by default. Forest, Rain, Ocean, and interface sounds were tuned. The Achievement Library now explains requirements, progress, unlock dates, and the soundscapes a collector has not yet heard. Hydration reminders can cross every screen, survive overnight schedules, and explain when they are paused or preparing the next reminder. More lists now understand h, j, k, and l. Selected rows remain visible across more themes. Campaign totals now distinguish open quests, steps, and scrolls at a glance. The Chronicle does not claim that nothing will ever go wrong. It makes a stronger and more useful promise: Nothing written will be abandoned without a trace. // Changes in this version ✓ Safer multi-device sync protects projects, quests, steps, scrolls, codices, and earned progress ✓ Unsafe cloud events are quarantined; automatic sync pauses for review and revisions preserve conflicts ✓ Sync health now shows local/cloud positions, remaining activity, backup state, and transfer progress ✓ Restores use the correct cloud position, stay paused until ready, and lock transfer codes until backup ✓ Recovery controls clean old local sync history or rebuild cloud state from a trusted device ✓ Older devices can no longer reduce a hero's level or earned XP ✓ Fellowship sync better preserves campaign links, step parents, scroll locations, work, and deletions ✓ macOS notifications are more reliable and include a direct alert test ✓ Music opens to the local player; browsing, controls, soundscapes, and interface playback improved ✓ Achievement Library shows requirements, progress, unlock dates, and missing soundscapes ✓ Hydration reminders work across screens and overnight schedules with clearer paused/next states ✓ h/j/k/l navigation and selected-row visibility improved across more lists and themes ✓ Ctrl+N or the Command Palette opens Quick Notes with title and campaign selection ✓ R moves scrolls between campaigns, into destination codices, or into ungrouped storage ✓ Focus Sanctuary gains a large responsive timer and quiet progress/finish-time compass ✓ Ctrl+S saves without closing; changed scrolls offer save/discard choices while unchanged ones close ✓ Changed scrolls autosave silently every few seconds with a small Autosaved status message ✓ Large pastes, paragraphs, accents, wrapped scrolling, and cursor visibility are preserved correctly ✓ Campaign totals label open quests as !(n), steps as ->(n), and scrolls as #(n) ✓ Quest Calendar opens with C, spans all campaigns, creates dated quests, and anchors recurrences – The Chronicle has stopped accepting “the cloud probably has it” as a recovery strategy.
# Chronicle Entry — The Board Learns Priorities The old dashboard was useful. It counted the work. It weighed the work. It placed the work in front of you and waited. But the Realm has learned that a list is not always a command. Sometimes a list is a fog bank wearing checkboxes. Sometimes the most important quest stands one row away from three tiny errands and a sidequest about drinking water. Today's Workload has become Today's Command Center. The board now speaks with sharper intent. Main quests, quick wins, sidequests, and daily adventures stand in clearer formation. The hero can see what matters, what is light enough to clear, and what rituals still need honoring before the day closes. The Settings tab has opened as well. Themes, alerts, audio, and the new Oath Calendar now live behind [9] Settings, where the hero can decide how the Realm should look, sound, remind, and count active days. The Oath Calendar is not a loophole. It is a treaty with reality. If Sunday is a rest day, the streak should not call it failure. If the workday begins later, the flame should wait until the watch begins. Time itself has also been disciplined. Questline now separates local hero time from UTC server time, so the Realm can sync across machines without confusing today, tomorrow, and the server's very different opinion of midnight. The keyboard learned new manners. Ctrl+Y now handles global sync. Ctrl+S saves tasks and steps. Ctrl+Backspace removes whole words. Task and step descriptions gained vim-like movement, because sometimes editing a quest should feel less like arguing with a text box and more like using a tool. Focus sessions gained mercy, but not unlimited mercy. One pause is granted at the beginning. More can be unlocked with progress, up to five. Attention may breathe. It may not flee the battlefield forever. The Realm also dressed itself more deliberately. New themes arrived, including Terminal Default and Pywal-compatible palettes. Notifications gained proper icons across common Linux notification paths. Quest completion effects can now be chosen in Settings, including silence for heroes who prefer the work to end quietly. The command board is clearer now. The controls are sharper. The streak is fairer. The quest continues with fewer accidental battles against the interface. // Changes in this version ✓ Today's Workload replaced with Today's Command Center for clearer task priority control ✓ Dashboard sections now better separate main quests, quick wins, sidequests, and daily work ✓ New [9] Settings tab for themes, alerts, audio, and Oath Calendar settings ✓ Timezone handling improved — local hero time is separated from UTC server time ✓ Global sync shortcut changed to Ctrl+Y ✓ Vim-like editing added for task and step descriptions ✓ Ctrl+S now saves tasks and steps ✓ New themes added, including Terminal Default and Pywal-compatible palettes ✓ Steps can now be unmarked in the task editing window ✓ Ctrl+Backspace now erases complete words ✓ OS notification icons added for notify-send, dunstify, gdbus, kdialog, and zenity ✓ Oath Calendar added — choose active streak days so planned rest days do not break streaks ✓ Focus sessions can now be paused — 1 pause at level 1, then 2/3/4/5 at levels 10/20/30/40 ✓ Quest completion ambient effect can now be selected in Settings, including Off – The interface has been told, firmly, that the hero is busy.
# Chronicle Entry — The Book Beneath the Game Before the Notification Swarm descended, the realm had history. Not a paragraph. Not a tooltip. Not three proper nouns wearing a cloak and calling themselves worldbuilding. A book. The World Lore of Questline has been massively expanded. Around two hundred pages now sit beneath the surface of the terminal, waiting to be unlocked as you level up, complete your work, and prove that the Chronicle was right to trust you with context. The Six Orders have deeper roots now. The Realm has older wounds. The systems you use every day have myths behind them, arguments behind the myths, and consequences behind the arguments. Chapter One was the call to arms. The Notification Swarm is not the origin of the world. It is the beginning of Book Two. This release gives the Realm its past. The kind of past that explains why the present is already tired. Hydration has also entered the system. You can set a daily water target, receive reminders, log each glass, and earn XP when the target is met. The body made a reasonable request. Questline made it statistically harder to ignore. Daily Adventures now draw from a wider board too: focus sessions, hydration, sidequests, high-priority work, notes, journals, tree care, and the small repeatable acts that quietly defeat chaos without asking for applause. The sync halls were reinforced as well. Cloud backup and restore now show steadier progress. Manual sync behaves like a full state reconciliation. Shared Fellowship projects now carry their history to new companions instead of handing them an empty room and calling it collaboration. And yes, the webapp exists. Not here. Not yet. It is being forged for supporters who donate to the Realm. The gate is visible. The bridge is under construction. The Chronicle will announce when it is ready. Until then, the terminal remains the throne. // Changes in this version ✓ Massive World Lore expansion — roughly 200 pages of unlockable Questline history ✓ Lore unlocks tied to progression, leveling, and continued work across the Realm ✓ The pre-Swarm era is now documented — the Notification Swarm begins Book Two ✓ Hydration system — daily target, reminders, glass logging, and XP reward ✓ Daily Adventures expanded — five per day from a larger objective pool ✓ New Daily Adventure types — focus sessions, full hydration, and sidequest completion ✓ Cloud backup and restore progress now advances steadily instead of wandering dramatically ✓ Full-state manual sync and safer restore cursor handling for multi-PC profiles ✓ Fellowship shared-project sync now backfills project history for new companions ✓ Supporter webapp work is underway — not released yet, but the forge is lit – The lore is now long enough to qualify as a book. The backlog has requested legal counsel.
# Chronicle Entry — The Map Was Always There The realm existed before the website. Adventurers found it through word of mouth, through a GitHub link, through a friend who typed questline into a terminal and did not explain what it was. The site existed too. It worked. It was a single page that scrolled. That was enough, for a while. Then the realm grew. More orders. More systems. More lore. The Chapter began. The Swarm descended. The scroll became a document pretending to be a world. The world now has its own rooms. Every section of the Chronicle lives on its own page. Chapter I is a chapter, not a paragraph buried four scrolls down. The Six Orders are a hall, not a grid you pass on the way to something else. The Manual has space to breathe. The Changelog has room to remember. Each page has its own scene. The dungeon where the Swarm nests. The guild hall where the Orders stand watch. The balcony above the realm at dusk. The archive. The armory. The gate. Pixel art painted by a realm that takes its own fiction seriously. They move when you scroll. Slowly. Not enough to distract. Enough to remind you that there is a world behind the text. The logo no longer pretends to be characters in a font. It is what it always was — a mark. It breathes now, softly, in the colors of the Six Orders. The Chronicle will keep expanding. The site will keep up. // Changes in this update ✓ Site rebuilt from a single scroll into 11 dedicated pages ✓ Parallax pixel art backgrounds — one scene per page ✓ Logo replaced with official mark — cycling class color glow ✓ The Six Orders displayed as a full roster, not a grid ✓ Support pill on every page — present, quiet, never in the way – The backlog did not shrink during the redesign. The Chronicle noted it.
# Chronicle Entry — The Realm Was Always Two Computers The conflict counter read 42,349. One hero. Two machines. One at work, one at home. Same profile. Same quests. Same Evergrowth, allegedly. And somewhere between the two of them, the sync engine had developed a strong opinion about everything that had ever happened. 42,349 opinions, to be precise. None of them were actually conflicts. The sync engine was simply rereading the entire history of the realm on every pass, rediscovering the same events it had already processed, and tallying them as new disagreements. It was not malicious. It was thorough in the wrong direction. The fix was a table. Every processed event now gets a name. Next time the engine arrives and asks "have you seen this before?" the answer is yes, sit down, we handled it in July. The conflict counter now reads what it should. The hero with 42,349 conflicts went to bed that night with zero pending. They did not thank us. They were asleep. The realm was always multiple devices. It simply refused to admit it. Each node now introduces itself during every sync. Device name. Last seen. Online status. The Sync screen no longer shows one lonely node pretending to be the only version of you that exists. It shows all of them, ranked by how recently they checked in. The devices that have not been seen in a while are still listed. The Chronicle does not forget. It just shows them in a dimmer color to indicate they are probably under a desk somewhere. Your companions can now see you too. Not metaphorically. The presence system tracks who is actually in a shared project right now — a green dot for alive, a grey dot for missing in action, a timestamp for "last seen 47 minutes ago, unclear what happened." The shared workspace does not wait anymore either. Open a shared project and the sync fires immediately. No waiting for the 8-second interval. No staring at yesterday's data while your companion has already completed three tasks you were planning to start. The dashboard has been rebuilt from the ground up. The Evergrowth has a new shape. A new texture. It has always been growing in the background, patient and indifferent. It now looks like it knows you have been watching. The Adventurer panel finally admits what you have unlocked. Every hero has powers. They were always there in the tree. The dashboard simply never mentioned them — as if the fact that you had achieved "Debug Familiar" at level 10 was private information the UI had agreed to keep to itself. It is no longer keeping it to itself. Your current power sits beneath your title, in your class color, with an arrow pointing to what you are working toward. The dashboard now tells you where you are in the story. You can no longer slam the door on the way out. Ctrl+C has been decommissioned as an exit strategy. Not blocked — it simply does nothing useful now. What it does instead is remind you, politely, that the Chronicle deserves a proper farewell. Press Q. Confirm. The sync fires. The Chronicle is sealed. The realm records your departure correctly. Then, and only then, the terminal clears. 42,349 conflicts. Zero remaining. A dashboard that knows your name and your power level. Companions who can tell if you are actually at your desk. And an exit that treats the Chronicle with the respect it probably deserved from the beginning. // Changes in this version ✓ Multi-device sync deduplication — processed events tracked, no more phantom conflicts ✓ Device heartbeat — every node broadcasts identity and last-seen to the realm ✓ Sync screen shows all your devices with online status and timestamps ✓ Fellowship presence — companions show online/offline in shared project views ✓ Presence visible in companion list, chat title, and Companions tab ✓ Shared workspaces sync every 8s and immediately on open ✓ Companion task ownership badges — tasks show who created them ✓ Dashboard rebuilt — new Evergrowth rendering and layout ✓ Adventurer panel shows current class power and next milestone in class color ✓ Navigation reorder — 6 Fellowship · 7 Chronicle · 8 Sync ✓ Ctrl+C blocked — q confirms, sync seals the Chronicle, then exit – The hero with 42,349 conflicts has not sent a thank-you note. The Chronicle noted the absence.
# Chronicle Entry — The Craft Beneath the Scroll For a long time, writing a note in the realm meant typing in a box. The cursor moved. Text appeared. The scroll was saved. No one asked what the cursor was touching. No one asked whether you meant to delete that word or that line. No one offered to hold your last twenty actions in memory so you could change your mind. The box accepted everything and remembered nothing. The Scrollkeeper has awakened. Notes now open in a proper workshop. Normal mode. Insert mode. Visual mode. The cursor knows the difference between moving and writing. You can yank a line, paste it three paragraphs down, delete a word without touching the ones beside it, and undo the last hundred decisions if you need to. Press ? inside any note to see the full arsenal. It is longer than you might expect. The codices have also revealed their true shape. For a time, a codex that held other codices showed only an arrow. A suggestion. A door. You had to go through it to see what was inside. Then come back. Then go through another. The structure existed. It simply refused to show itself. The tree is now visible. Every codex unfolds in place. Every nested scroll sits beneath its parent, indented, present, accounted for. The hierarchy does not hide behind navigation anymore. It is simply there when you arrive. And the Chronicle was lying about the focus sessions. Not with malice. It simply did not know whose work it was counting. When a session synced from one hero's device to another, the second device counted it as its own. Then a third device counted it again. The contribution numbers climbed. The actual sessions had not. Each session now carries the name of its hero. The Chronicle knows who did the work. It will not give the credit to someone who was not there. It will not take it away from someone who was. // Changes in this version ✓ Vim-like editor: Normal, Insert, and Visual modes in every note ✓ Undo / redo history — up to 100 snapshots per editing session ✓ Yank, paste, delete word, delete line, go-to-line, and more ✓ Press ? inside any note for the full keybind reference ✓ Codices display as an always-expanded tree — full depth visible ✓ Codices can be moved with all contents to any parent or to root ✓ Notification popups wrap long messages instead of cutting them off ✓ Home / End keys work in task and step description fields ✓ Focus sessions stamped per-hero — contribution counts are now correct – The Scrollkeeper still cannot write your notes for you. This is intentional.
# Chronicle Entry — The Realm Begins to Hear For a long time the Focus tab showed bars that moved. They were pleasant. They were animated. They were lying. No sound was being measured. No frequency was being tracked. The bars simply waved, like a soldier who knows nothing of the battle but has been told to look confident. The bars now show the actual audio. Every beat. Every frequency spike. Every moment of silence where the music used to pretend it was doing something. It is not pretending anymore. The spectrum reads from whatever your system is playing — Spotify, VLC, mpv, a browser tab at 2am, anything. No setup. No login. No SDK. The realm simply listens. The search system has also been rebuilt from the foundation. It used to find what you were looking for, then drop you at the project door and expect you to remember which room it was in. It now takes you to the exact item. The note. The task. The milestone. The step. The cursor lands on it. The realm does not make you search twice. // Changes in this version ✓ Music visualizer now shows real audio frequencies ✓ Works with any system audio player — Spotify, VLC, mpv, anything ✓ Local soundscapes (Lo-Fi, Rain, Forest…) also show real spectrum ✓ Bars respond instantly; fall off gradually (VU meter behavior) ✓ Search navigates to the exact note, task, step, or milestone ✓ Results ranked by relevance — title match beats content match ✓ Search now covers steps and milestones ✓ Press / from anywhere to open search instantly ✓ Footer nav shows the active screen name with class color highlight ✓ Ambient effects now accessible from the Command Palette (Ctrl+P) – The bars still cannot play the music. This is a feature, not a limitation.
# Chronicle Entry — The Naming of the Realm For a time, the realm existed at an address borrowed from the land of its creator. A temporary dwelling. A camp, not a keep. The adventurers came anyway. They completed quests. They watered their trees. They wrote scrolls into the night. They did not complain about the address. The backlog was already doing that for them. The realm now has a name of its own: questlinecli.com The server is the same. The database is intact. The Chronicle has lost nothing. The Evergrowths did not notice. The Evergrowths rarely notice anything that does not involve consistency. Existing adventurers: update your sync URL to https://questlinecli.com/api via the Sync screen. New adventurers: it is already set. You arrived at the right time. You are welcome. // Changes in this version ✓ Domain migrated from questline.gibranlp.dev → questlinecli.com ✓ Default sync server URL updated in all new installations ✓ The Chronicle is intact. Not a single entry was lost in transit. – The backlog. Still there. Doing pushups. Waiting.
✓ WAL mode enabled — no more database locking under concurrent access ✓ Delete tombstones — deletions now propagate correctly across devices ✓ Task updated_at — edits sync properly; no more phantom conflicts ✓ Focus session sync — sessions counted on the right device ✓ Journal entry updates — edits no longer silently discarded ✓ Device ID filter — devices no longer receive their own changes back ✓ Sequence cursor — incremental sync now resumes from the correct position ✓ Daily cleanup — stale sync state no longer accumulates over time
Full release history → github.com/gibranlp/Questline-cli/releases