Software purpose assessment — classify codebases by the human purposes they serve. Part of the AltPath AI ecosystem for hedonic life assessment across personal, policy, and content domains.
High Noon has 21 tools with mostly complete schemas and descriptions, but quality is uneven. Naming follows verb_noun convention well (list_ends, score_end, get_feed). Descriptions range from adequate (194 chars avg baseline) to verbose. Most tools have typed parameters with descriptions. However, several tools lack output schema documentation, and some descriptions are generic or example-heavy. Error handling is minimal, no recovery guidance or actionable error messages visible. No tool annotations (readOnlyHint/destructiveHint) despite clear read/write distinctions. Composition is reasonable: tools chain logically (set_profile → get_feed), but some tools combine multiple concerns (e.g., optimize does fungibility calculus AND returns recommendations in one call).
Add a content item to the feed for ranking. Tag it with hedonic domains (ENDS) and cost categories (MEANS) it addresses. The feed engine will score it against your profile.
Show all content source registries and their connectors.
Show ends that are deficient AND have identified cost blockers. This is the KEY actionable output: what you WANT and what's STOPPING you. Returns pairs of (deficient end, blocking cost) with suggested action.
List all content types that can appear in the feed.
Get the complete assessment — all ends, means, gaps, heavy costs, and blocked ends.
Show domains scoring below threshold — ENDS needing attention.
No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear semantic distinctions. Tools like score_end, score_means, reset, add_item, save_my_feed, grade_item are WRITE operations but lack destructiveHint. Tools like list_ends, gaps, get_feed are READ-ONLY but lack readOnlyHint. This prevents agents from reasoning about side effects and retry safety.
Output schemas not documented in source. Tools return structured data (e.g., optimize returns recommendations, get_feed returns ranked items, hedonic_index returns indices) but no explicit schema definitions visible. LLMs cannot plan downstream tool calls without knowing return field names and types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
Get your personalized hedonic feed, ranked by relevance to your profile. Items that unblock your deficient domains rank highest. Items that reduce your heavy cost burdens rank next. Items matching your gap domains rank after that.
Get the current hedonic profile used for feed ranking.
Grade a feed item on its hedonic value. Saves to shared grading storage.
Show costs with burden above threshold — MEANS consuming too many resources.
Get your Hedonic Index (ends), Cost Index (means), and Net Hedonic score.
Show all 10 hedonic life domains (ENDS) available for self-assessment.
Show all 9 fungible cost categories (MEANS) available for burden assessment.
Load your altpath profile from shared storage (~/.hedonics/). Use this instead of set_profile() if you've already done an altpath assessment.
Run the fungibility calculus on your assessed cost profile. Computes which exchanges between your surplus and deficit means would unlock the most hedonic value. Trade what you HAVE for what you NEED. Example: If you have low FINANCIAL burden (surplus money) but high TIME burden (no free time), it recommends: F → T (buy time with money — hire help, automate). If that TIME burden blocks CONNECTION and RECREATION, those domains unlock. Must score cost burdens first using score_means().
Reset the assessment to start fresh.
Save current feed items to shared storage (~/.hedonics/feed/). Items persist between sessions.
Score a hedonic domain (1=critical, 10=thriving). E.g., score_end('07', 4, 'feeling isolated lately')
Score a cost burden (1=negligible, 10=crushing). Optionally specify which hedonic domains this cost blocks. E.g., score_means('T', 8, 'working 60hrs/week', blocks_domains=['07', '08'])
Set or update your hedonic profile for feed personalization. Import from an altpath assessment, or set directly.
Suggest research search terms based on your gap domains. Uses your profile to find what academic research, datasets, and policy discussions are most relevant to YOUR hedonic gaps.
No error handling or recovery guidance. Tools lack actionable error messages. E.g., if score_end receives invalid domain_code, no guidance on valid codes. If optimize is called before score_means, no hint to call score_means first. Agents cannot self-correct.
Descriptions contain example values (e.g., score_end example: '07', 4, 'feeling isolated lately'; score_means example: 'T', 8, 'working 60hrs/week'). LLMs tend to reuse example values literally rather than adapt to context, causing incorrect calls.
Some descriptions are generic or lack context. E.g., hedonic_index: 'Get your Hedonic Index (ends), Cost Index (means), and Net Hedonic score.', does not explain when to call it or what the indices mean. full_assessment: 'Get the complete assessment', vague on what 'complete' includes or when to use vs. individual tools.