Files
ngit-grasp/docs/learnings
DanConwayDev fd7c6bb851 refactor(auth): make current maintainer authority explicit
The v3.0.1 authorization fix is intentionally small. Follow it with a separate structural pass so the implementation and documentation express the present-tense maintainer model directly instead of leaving the security behavior hidden behind owner-oriented names and repeated raw-tag interpretation.

Parse indexed roles once into a current-only snapshot of active maintainers, active lead targets, and announcement-author activity. Preserve detailed lead-resolution failures internally while policy callers continue to fail closed, distinguish selected authorization coordinates from physical owner views, and name broad announcement admission as discovery rather than authority.

Keep history relevant only while deriving current activity and retain active leads only for selected-coordinate resolution. Preserve the v3.0 public API through compatibility projections and deprecated aliases; this commit is not intended to change the authorization outcome established by 650cfb57.

Refresh architecture, inline authorization, storage, sync, and audit documentation. Correct the audit fixture description that claimed a listed maintainer authorized with no reciprocal announcement even though its setup already published one.

Validated with cargo test --lib (903 tests), cargo test --test state_authorization (53 tests), cargo test -p grasp-audit --lib (54 passed, 5 ignored), cargo test --test push_authorization (56 tests), and cargo clippy --tests -- -D warnings.
2026-08-29 21:20:49 +00:00
..
2025-11-04 10:25:53 +00:00

Learnings Directory - DEPRECATED

Status: This directory is deprecated as of November 4, 2025.


What Happened?

We migrated to the Diátaxis documentation framework, which provides a clearer structure based on content purpose rather than origin.


Where Did Content Go?

The "learnings" were distributed into appropriate Diátaxis categories:

Gotchas and Patterns → How-To Guides

Technical Details → Reference

Concepts and Understanding → Explanation


Why the Change?

The "learnings" category was ambiguous:

  • Mixed gotchas, patterns, and concepts
  • Unclear where to put new content
  • Hard for readers to know what to expect

Diátaxis provides clear categories:

  • Tutorials - Learning by doing
  • How-To - Solving problems
  • Reference - Looking up facts
  • Explanation - Understanding concepts

See docs/README.md for the new structure.


For Content Authors

Don't create new files here. Instead, ask:


Migration Status

  • ✅ nix-flakes.md → Migrated to how-to/nix-flakes.md
  • ⏳ nostr-sdk.md → Being incorporated into reference docs
  • ✅ grasp-audit.md → Content in explanation/architecture.md

This directory will be removed in a future cleanup.
See AGENTS.md for documentation guidelines.