Skip to content

fix(memory-wiki): honor durable: true frontmatter in stale pages report#94507

Closed
chenweicong736 wants to merge 1 commit into
openclaw:mainfrom
chenweicong736:fix/wiki-stale-pages-durable-frontmatter-93485
Closed

fix(memory-wiki): honor durable: true frontmatter in stale pages report#94507
chenweicong736 wants to merge 1 commit into
openclaw:mainfrom
chenweicong736:fix/wiki-stale-pages-durable-frontmatter-93485

Conversation

@chenweicong736

Copy link
Copy Markdown

The Stale Pages report previously flagged every non-report page whose updatedAt was older than 30 days, including intentionally durable references such as concept and synthesis pages. Bridge-mode vaults typically have many such pages, drowning out real staleness signal.

This change adds a strict boolean durable frontmatter marker. Pages with durable: true are excluded from the stale-pages filter at compile time. The marker is strict (asBoolean only accepts real booleans, not string literals), is opt-in, and does not touch updatedAt, so other freshness signals remain accurate. Lint and agent-digest callers are unaffected; the change is scoped to the dashboard report filter.

Fixes #93485

Summary

What problem does this PR solve?

Why does this matter now?

What is the intended outcome?

What is intentionally out of scope?

What does success look like?

What should reviewers focus on?

Summary guidance

This PR description is the contributor's durable explanation of the change. Write it for human maintainers first; ClawSweeper and Barnacle use the same text to understand intent, proof, risk, and current review state.

Describe the intent and outcome in 2-5 bullets. Avoid restating the diff; reviewers and bots can read the changed files.

If this PR fixes a plugin beta-release blocker, title it fix(<plugin-id>): beta blocker - <summary> and link the matching Beta blocker: <plugin-name> - <summary> issue labeled beta-blocker. Contributors cannot label PRs, so the title is the PR-side signal for maintainers and automation.

Linked context

Which issue does this close?

Closes #

Which issues, PRs, or discussions are related?

Related #

Was this requested by a maintainer or owner?

Linked context guidance

Link the issue, PR, discussion, maintainer request, or owner request that explains why this PR should exist. Maintainer context helps reviewers and automation distinguish intended work from drive-by churn.

Real behavior proof (required for external PRs)

  • Behavior or issue addressed:
  • Real environment tested:
  • Exact steps or command run after this patch:
  • Evidence after fix (screenshot, recording, terminal capture, console output, redacted runtime log, linked artifact, or copied live output):
  • Observed result after fix:
  • What was not tested:
  • Proof limitations or environment constraints:
  • Before evidence (optional but encouraged):
Real behavior proof guidance

External contributors must show after-fix evidence from a real OpenClaw setup. Unit tests, mocks, lint, typechecks, snapshots, and CI are supplemental only.

Screenshots are encouraged even for CLI, console, text, or log changes. Terminal screenshots, copied live output, redacted runtime logs, recordings, and linked artifacts count.

If your environment cannot produce the ideal proof, explain that under Proof limitations or environment constraints so reviewers and ClawSweeper can direct the next step properly.

Be mindful of private information like IP addresses, API keys, phone numbers, non-public endpoints, or other private details when providing evidence.

Tests and validation

Which commands did you run?

What regression coverage was added or updated?

What failed before this fix, if known?

If no test was added, why not?

Testing guidance

List focused commands, not every incidental check. CI is useful support, but external PRs still need real behavior proof above when behavior changes.

Risk checklist

Did user-visible behavior change? (Yes/No)

Did config, environment, or migration behavior change? (Yes/No)

Did security, auth, secrets, network, or tool execution behavior change? (Yes/No)

What is the highest-risk area?

How is that risk mitigated?

Risk guidance

Use this for author judgment that is not obvious from the diff. ClawSweeper can see touched files, but it cannot know which behavior you think is risky, why the risk is acceptable, or what mitigation reviewers should verify.

Current review state

What is the next action?

What is still waiting on author, maintainer, CI, or external proof?

Which bot or reviewer comments were addressed?

Review state guidance

Keep this as the durable state for review progress. If useful information appears in comments, fold the current next action or blocker back here so maintainers and ClawSweeper do not need to reconstruct state from comment history.

The Stale Pages report previously flagged every non-report page whose
updatedAt was older than 30 days, including intentionally durable
references such as concept and synthesis pages. Bridge-mode vaults
typically have many such pages, drowning out real staleness signal.

This change adds a strict boolean `durable` frontmatter marker. Pages
with `durable: true` are excluded from the stale-pages filter at
compile time. The marker is strict (asBoolean only accepts real booleans,
not string literals), is opt-in, and does not touch updatedAt, so other
freshness signals remain accurate. Lint and agent-digest callers are
unaffected; the change is scoped to the dashboard report filter.

Fixes openclaw#93485

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Improvements or additions to documentation extensions: memory-wiki size: S triage: needs-real-behavior-proof Candidate: external PR needs after-fix proof from a real setup.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

memory-wiki: Stale Pages report flags intentionally durable references (concepts, syntheses) as aging

1 participant