Timeline shows archived notes too, each one labelled Archived
CI & Build / Python lint (push) Successful in 2s
CI & Build / Build now, or wait for Android? (push) Successful in 3s
Android / Build, or is the channel already serving this? (push) Successful in 3s
Android / Core and FFI clippy and tests (push) Skipped
Android / Kotlin + Rust (APK) (push) Skipped
Android / Build the server image (push) Skipped
Desktop (Tauri) / Build, or is the channel already serving this? (push) Successful in 3s
CI & Build / Web typecheck and unit tests (push) Successful in 9s
CI & Build / Python tests (push) Successful in 13s
CI & Build / integration (push) Successful in 1m34s
Desktop (Tauri) / Web tests, clippy, Rust tests and rustfmt (push) Successful in 1m48s
CI & Build / Build & push image (push) Successful in 30s
Desktop (Tauri) / Windows installer (cross-compiled) (push) Successful in 2m2s
Desktop (Tauri) / Tauri desktop (Linux) (push) Successful in 3m10s
Desktop (Tauri) / Update manifest (push) Successful in 3s

Timeline lists everything not in Trash. The card's Archived label is now
hidden only on the Archive page, read off the route: Timeline keeps its
own list and never sets the board's view, so arriving from the Archive
used to leave the store saying "archived".

Task #6318.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-23 17:29:40 -04:00
co-authored by Claude Opus 5.5
parent 66fd5707b7
commit c6f10f157d
2 changed files with 9 additions and 5 deletions
+6 -3
View File
@@ -1,5 +1,6 @@
<script setup lang="ts">
import { computed, ref, watch } from "vue";
import { useRoute } from "vue-router";
import { useNotesStore } from "../stores/notes";
import { NOTE_CARD_SURFACE, labelChipClasses } from "../notes/colors";
import { rendersInline } from "../notes/attachments";
@@ -52,9 +53,11 @@ const sharedLine = computed(() => {
return props.note.shared ? "Shared" : "";
});
// A search or a tag reaches into the Archive, so an archived card met anywhere but
// the Archive itself says so: put away, not current.
const showArchived = computed(() => props.note.archived && !props.note.trashed && notes.view !== "archived");
// A search, a tag or the Timeline reaches into the Archive, so an archived card met
// anywhere but the Archive itself says so: put away, not current. Read off the route,
// since a page with its own list (Timeline) never sets the notes store's view.
const route = useRoute();
const showArchived = computed(() => props.note.archived && !props.note.trashed && route.name !== "archive");
// --- Retention countdown, so someone browsing Trash can restore a note in time.
// Null when not trashed or retention is off. ---
+3 -2
View File
@@ -13,7 +13,8 @@ import NoteEditor from "../components/NoteEditor.vue";
// The "find by WHEN" recall lens: your notes grouped by when you captured them,
// newest first, with an optional date range. A distinct recall axis from search /
// labels — memory is often temporal even when the content is fuzzy.
// labels — memory is often temporal even when the content is fuzzy. Archived notes
// are included (each card says so), since finished work is what gets looked back on.
// Optional local date-range filter (YYYY-MM-DD from <input type="date">).
const fromDate = ref("");
@@ -24,7 +25,7 @@ function buildQuery(): NoteListQuery {
const from = parseLocalDate(fromDate.value);
const to = parseLocalDate(toDate.value);
return {
view: "active",
view: "all",
sort: "created",
facets: {
created_after: from ? from.toISOString() : undefined,