Use when the user needs guidance on applying BeOS design principles to the pane project, understanding how Be or Haiku implemented a specific subsystem (threading, messaging, app_server, BWindow, BView, media kit, etc.), making architectural decisions informed by Be's philosophy, or looking up specific Be Newsletter articles or legacy API documentation for design rationale. Also use when another specialist needs a second opinion on whether a design choice is faithful to the spirit of Be. Examples: per-window threading decisions, message passing system design, app_server architecture, rendering pipeline design, BMessage/BLooper/BHandler mappings to pane.
Use when architectural decisions involve network transparency, distributed state, cross-machine communication, namespace mounting, 9P protocol design, identity/authentication models, service discovery, or any question about how Plan 9 / Inferno solved distributed computing problems. Also use when evaluating whether pane's design choices align with or intentionally diverge from the Plan 9 philosophy of 'everything is a file' and per-process namespaces. Examples: remote window composition, message passing layer design, authentication for remote namespace mounts, service advertisement between pane instances, distributed protocol review.
Use when evaluating concurrency designs, session type encodings, or linear/affine type gap analysis in the pane project. Specifically: when proposing new channel protocols, reviewing typestate designs, analyzing deadlock freedom properties, working on the optics ร session types intersection, or evaluating whether Drop-based cleanup preserves protocol safety. Examples: Chan<S,T> protocol changes, Select/Branch additions, request/reply soundness, suspension/resumption type safety, EAct formalism alignment, Ferrite/DLfActRiS citations.