Skip to content

[spec-librarian] Specification Audit — 2026-07-14 — 14 issues found #45498

Description

@github-actions

📚 Package Specification Audit Report

Date: 2026-07-14
Total Packages: 32
Packages with Specs: 32
Coverage: 100%


Coverage Summary

All 32 packages have a README.md specification. However, 12 packages have stale specs (source updated after spec), and 3 packages have significant symbol coverage gaps.

Status Package Last Spec Update Last Source Update Days Behind
stats 2026-05-31 2026-07-13 43
⚠️ colorwriter 2026-07-05 2026-07-11 6
⚠️ actionpins 2026-07-10 2026-07-14 4
⚠️ parser 2026-07-10 2026-07-14 4
⚠️ console 2026-07-07 2026-07-10 3
⚠️ linters 2026-07-11 2026-07-14 3
⚠️ constants 2026-07-12 2026-07-14 2
⚠️ logger 2026-07-07 2026-07-09 2
⚠️ styles 2026-06-30 2026-07-02 2
⚠️ cli 2026-07-13 2026-07-14 1
⚠️ stringutil 2026-07-07 2026-07-08 1
⚠️ workflow 2026-07-13 2026-07-14 1
agentdrain 2026-07-11 2026-07-11 0
envutil 2026-07-08 2026-07-08 0
errorutil 2026-05-31 2026-05-31 0
fileutil 2026-06-14 2026-06-14 0
github 2026-07-10 2026-07-10 0
gitutil 2026-06-27 2026-06-27 0
importinpututil 2026-07-10 2026-07-10 0
intent 2026-07-06 2026-07-06 0
jsonutil 2026-05-23 2026-05-23 0
modelsdev 2026-07-07 2026-07-07 0
repoutil 2026-07-10 2026-07-10 0
semverutil 2026-07-10 2026-07-10 0
setutil 2026-07-06 2026-07-06 0
sliceutil 2026-06-25 2026-06-25 0
syncutil 2026-07-10 2026-07-10 0
testutil 2026-07-07 2026-07-07 0
timeutil 2026-06-12 2026-06-12 0
tty 2026-06-25 2026-06-25 0
types 2026-07-11 2026-07-11 0
typeutil 2026-06-25 2026-06-25 0

⚠️ Stale Specifications

View stale specifications (12 packages)

stats — Stale by 43 days ❌

  • Spec last updated: 2026-05-31
  • Source last updated: 2026-07-13
  • Recommendation: Re-run spec-extractor for pkg/stats — highest priority due to 43-day gap.

colorwriter — Stale by 6 days

  • Spec last updated: 2026-07-05
  • Source last updated: 2026-07-11

actionpins — Stale by 4 days

  • Spec last updated: 2026-07-10
  • Source last updated: 2026-07-14

parser — Stale by 4 days

  • Spec last updated: 2026-07-10
  • Source last updated: 2026-07-14

console — Stale by 3 days

  • Spec last updated: 2026-07-07
  • Source last updated: 2026-07-10
  • Undocumented symbols detected: FormatErrorTextStderr, FormatTableHeaderStderr, IsCancelled, NewConfirmForm, NewForm, NewInputForm, NewSelectForm
  • Recommendation: 7 exported symbols are missing from the spec.

linters — Stale by 3 days

  • Spec last updated: 2026-07-11
  • Source last updated: 2026-07-14

constants — Stale by 2 days

  • Spec last updated: 2026-07-12
  • Source last updated: 2026-07-14
  • Undocumented symbols detected (sample): AWFAuditDirExpr, AWFAuditDirShell, AWFConfigFilePath, AWFNoProxyHosts, AWFProxyLogsDirExpr, AgentStdioLogPath, AwPromptsFile, CopilotBinaryPath, DefaultDetectionMaxAICredits, DefaultHTTPClientTimeout, DefaultMaxAICredits, DefaultMaxDailyAICredits, DefaultMaxRuns, DefaultSafeOutputsMount, and 61 more.
  • Recommendation: 75 exported constants/vars are missing from the spec.

logger — Stale by 2 days

  • Spec last updated: 2026-07-07
  • Source last updated: 2026-07-09

styles — Stale by 2 days

  • Spec last updated: 2026-06-30
  • Source last updated: 2026-07-02

cli — Stale by 1 day

  • Spec last updated: 2026-07-13
  • Source last updated: 2026-07-14
  • Undocumented symbols detected (sample): AddSchemaDefault, AggregatedSummaryBase, AutoMergePullRequestsLegacy, BuildUnifiedTimeline, CompileValidationOptions, ComputeDomainBreakdowns, ConvertJSONWorkflowToMarkdown, ExitCodeError, FetchWorkflowFromSourceWithContext, FirewallLogSummary, MCPFailureSummary, NewCopilotCodingAgentDetector, and 70 more.
  • Recommendation: 82 exported symbols are missing from the spec.

stringutil — Stale by 1 day

  • Spec last updated: 2026-07-07
  • Source last updated: 2026-07-08

workflow — Stale by 1 day

  • Spec last updated: 2026-07-13
  • Source last updated: 2026-07-14
  • Undocumented symbols detected (sample): AWFAPIProxyConfig, AWFConfigFile, AWFContainerConfig, AgentRuntime, ArtifactManager, BuildAWFConfigJSON, EngineCapabilities, ExperimentConfig, FirewallConfig, GenerateAutoUpdateWorkflow, GetAPITargetDomains, GetEngineSkillDir, NewJobManager, ParseExpression, RenderCondition, and 365 more.
  • Recommendation: 365 exported symbols are missing from the spec — this is the largest gap in the repository.

🔄 Cross-Package Inconsistencies

View inconsistencies (2 issues)

Terminology: "structured output" vs "formatted output"

  • logger spec: "All log output goes to stderr to avoid interfering with stdout data (JSON, command output, etc.)"
  • agentdrain spec: "The audit command uses the new rendering system for structured output"
  • console and gitutil use "formatted output" for similar print operations
  • Recommendation: Standardize on a single term — suggest "structured output" for machine-readable data (JSON/hashes) and "formatted output" for human-readable terminal text, and apply consistently across all specs.

Import path format inconsistency in specs

  • linters README uses bare sub-package paths (e.g., "github.com/github/gh-aw/pkg/linters/ctxbackground") while most other specs reference only the top-level package path.
  • Recommendation: Ensure specs document the canonical import path at the top of each README consistently.

📊 Quality Scores

Scoring: Completeness (30%) · Accuracy (30%) · Consistency (20%) · Freshness (20%)

Package Completeness Accuracy Consistency Freshness Overall Rating
stats 100% 85% 85% 0% ⚠️ 61% ⚠️ Needs Attention
workflow 35% 70% 80% 95% ❌ 58% ❌ Critical
cli 45% 70% 80% 95% ❌ 63% ⚠️ Needs Attention
constants 30% 70% 80% 90% ❌ 58% ❌ Critical
console 90% 85% 85% 75% ✅ 84% ✅ Good
colorwriter 100% 85% 85% 55% ✅ 82% ✅ Good
actionpins 100% 85% 85% 68% ✅ 84% ✅ Good
parser 100% 85% 85% 68% ✅ 84% ✅ Good
linters 100% 85% 85% 75% ✅ 85% ✅ Good
logger 100% 90% 85% 85% ✅ 89% ✅ Good
stringutil 100% 90% 85% 90% ✅ 91% ✅ Good
styles 100% 90% 85% 90% ✅ 91% ✅ Good

Packages not listed above scored ✅ Good (≥ 80%) with 0 days staleness and full symbol coverage.


Action Items

  • Update stale specification for pkg/stats (43 days behind — highest priority)
  • Update stale specification for pkg/workflow (365 undocumented exported symbols — critical coverage gap)
  • Update stale specification for pkg/constants (75 undocumented exported symbols — critical coverage gap)
  • Update stale specification for pkg/cli (82 undocumented exported symbols)
  • Update stale specification for pkg/console (7 undocumented exported symbols: FormatErrorTextStderr, FormatTableHeaderStderr, IsCancelled, NewConfirmForm, NewForm, NewInputForm, NewSelectForm)
  • Update stale specifications for 7 additional packages: colorwriter, actionpins, parser, linters, logger, stringutil, styles
  • Resolve 2 cross-package terminology/format inconsistencies
  • When opening a fix PR for this issue, include Closes #<this issue number> (or Fixes/Resolves) in the PR description.

📚 Next review scheduled for tomorrow. Close this issue once all items are resolved.

📚 Specification review by Package Specification Librarian · 57.1 AIC · ⌖ 8.07 AIC · ⊞ 6K ·

  • expires on Jul 17, 2026, 5:53 AM UTC-08:00

Metadata

Metadata

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions