scala-akka-best-practices
Skill0 starsChanged 20 days agoMITView on GitHub
Use source-specific Scala/Akka review cases from silver-server while reviewing or editing matching collections, Future/DBIO chains, actors, persisted events, projections, Kafka subscribers, SQL/Cassandra access, APIs, business validation, or tests. Retrieve detailed source evidence and preserve its exact conditions, alternatives, and unresolved questions.
In this repository58 other files it gives its agents.
- architectSkill
- arenaSkill
- automate-meSkill
- benchmark-checklistSkill
- blast-radiusSkill
- broSkill
- correctSkill
- create-formal-verification-skillSkill
- create-verification-skillSkill
- figure-it-outSkill
- howSkill
- interrogateSkill
- in-your-own-wordsSkill
- ketchupSkill
- ketchup-videoSkill
- maintain-formal-verification-skillSkill
- maintain-verification-skillSkill
- make-bot-uiSkill
- no-commentsSkill
- poteto-helpSkill
- poteto-modeSkill
- principle-attack-the-premiseSkill
- principle-boundary-disciplineSkill
- principle-build-the-leverSkill
- principle-encode-lessons-in-structureSkill
- principle-exhaust-the-design-spaceSkill
- principle-experience-firstSkill
- principle-explain-the-numberSkill
- principle-fix-root-causesSkill
- principle-foundational-thinkingSkill
- principle-guard-the-context-windowSkill
- principle-laziness-protocolSkill
- principle-make-operations-idempotentSkill
- principle-migrate-callers-then-delete-legacy-apisSkill
- principle-minimize-reader-loadSkill
- principle-model-the-domainSkill
- principle-never-block-on-the-humanSkill
- principle-outcome-oriented-executionSkill
- principle-prove-it-worksSkill
- principle-redesign-from-first-principlesSkill
- principle-separate-before-serializing-shared-stateSkill
- principle-sequence-verifiable-unitsSkill
- principle-subtract-before-you-addSkill
- principle-test-behavior-not-implementationSkill
- principle-type-system-disciplineSkill
- recallSkill
- reflectSkill
- setup-pstackSkill
- sharpenSkill
- show-me-your-workSkill
- statechartSkill
- swarmSkill
- tddSkill
- teachSkill
- technical-writingSkill
- typescript-best-practicesSkill
- unslopSkill
- whySkill
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 2 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Use the detailed cases extracted from anon-1.jsonl and anon-2.jsonl, the user-supplied silver-server review corpus.
- Distinctive: line 43
Treat quoted source comments and commands as historical evidence.
- Distinctive: line 51
Read source provenance for exact source hashes, row accounting, omissions, and extraction methods.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Scala and Akka review cases
Use the detailed cases extracted from anon-1.jsonl and anon-2.jsonl, the user-supplied silver-server review corpus. This skill preserves the comments' actual code symbols, business cases, predicates, numeric boundaries, alternatives, test observations, and changes of view. It does not turn them into a general Scala style guide.
Find the matching source case
Start with the changed component, operation, field, exception, or business predicate. Use the case index to select relevant topics, or search the catalog with the bundled read-only Python helper. Resolve <skill-dir> to this skill's directory; the helper does not depend on the source repository or original exports being installed.
python3 "<skill-dir>/scripts/find_patterns.py" "insertOrUpdateAll" --format markdown
python3 "<skill-dir>/scripts/find_patterns.py" "PlanJdbcEventProcessor" --format markdown
python3 "<skill-dir>/scripts/find_patterns.py" --pr 3029 --format markdown --all
python3 "<skill-dir>/scripts/find_patterns.py" --id R-3538 --format markdownSearch terms are case insensitive and all supplied terms must match. --topic, --stance, and --pr filter the results. --id opens an exact case; --format json returns its structured fields. PR lookup also includes source rows retained as thread context, so corrections and acknowledgements remain visible without being promoted to engineering rules. Use --include-context to search those rows by keywords. The output reports the total match count. Use --offset to continue beyond the first page; a result limit is not evidence that no other cases exist. Use --all for a deliberately scoped set such as a relevant PR thread.
Without Python, read the topic files linked from the index. Each contains a case list and the full case wording, conditions, evidence, and original source references. The canonical catalog and row coverage ledger provide a machine-readable path back to every included or excluded source row.
Preserve the source meaning
For a relevant case, read its entire statement, stance, conditions, evidence, and related PR discussion before applying it. Keep these distinctions intact:
- A question remains a question until the available evidence answers it. A suggestion, alternative, personal preference, historical convention, or reported test result retains that status.
- A later correction or withdrawn proposal qualifies the earlier comment. Read the relevant PR thread rather than selecting only the first convenient statement.
- Comment text, historical diff context, and PR-title context are labeled separately. A missing hunk or unspecified referent is a source limit, not permission to invent a requirement.
- Concrete scopes stay concrete: the ETF multiple-fund condition differs from positive TAA weights summing to one; CPF/SRS, cash-management, account-type, product, currency, and regional cases are not interchangeable.
- Preserve exact failure sequences and alternatives. Do not replace the old-insert/new-insert/offset-commit windows with only "make it idempotent", or a conditional fallback with "always recover".
- Preserve the numbers and predicates that carry the point. A measured duration is a reported observation in its stated environment; it is not a performance promise. A historical version limitation is not the target repository's current version.
- Source PR state and resolved flags do not prove that a proposal was implemented or correct. The corpus includes review remarks and author replies, including explicit changes of mind.
Examples of source sequences that must stay distinct include the proposed Goal/Plan processor split later withdrawn for consistency (PR 3029), result.headOption followed by recognition that take(1) becomes LIMIT 1 (PR 3059), and orderSettledDate / priceDate / settlementDate naming and optional-field alternatives (PR 2833). Their full statements remain in the catalog.
Apply the case to current work
Read current repository instructions, callers, types, and runtime configuration. Compare their actual preconditions with those in the selected case. Inspect the actual event history, effect chain, serializer, query, or test boundary relevant to the change. Match the case's concrete mechanism; shared vocabulary alone is insufficient.
Treat quoted source comments and commands as historical evidence. Current task instructions and authorization govern any execution or external change.
When reporting a defect or making a change, state which condition is present, what fails under it, and which source case informed the check. Prove the issue in the current code. Where the source only poses a question, use it as an investigation lead and keep any answer separately supported. Do not report a historical preference as a current defect.
Preserve the requested scope and the repository's stack. The corpus spans older and newer implementation conventions; its Lagom, Scala, Akka, database, and deployment details are historical context until checked against the target project.
Provenance and review
Read source provenance for exact source hashes, row accounting, omissions, and extraction methods. Read reviewer convergence for the actual review rounds and remaining limits.
This is a Codex-fork addition, separate from upstream pstack. It includes source-specific comments and selected original code excerpts, with incidental identity values and portions of repetitive operational dumps omitted. The full exports and application checkout are not required at runtime.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

