Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions scratchpad/dev.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Developer Instructions

**Version**: 9.26
**Last Updated**: 2026-09-12
**Version**: 9.27
**Last Updated**: 2026-09-19
**Purpose**: Consolidated development guidelines for GitHub Agentic Workflows

This document consolidates specifications from the scratchpad directory into unified developer instructions. It provides architecture patterns, security guidelines, code organization rules, and testing practices.
Expand Down Expand Up @@ -2980,6 +2980,7 @@ These files are loaded automatically by compatible AI tools (e.g., GitHub Copilo
---

**Document History**:
- v9.27 (2026-09-19): Maintenance tone scan — added `utilize`/`utilized`/`utilization` to the established scan vocabulary (not previously checked by any prior pass) and re-ran the full strong-marketing and subjective-intensifier scans across all 63 `scratchpad/` spec files (same exclusions as v9.26: `dev.md`, `README.md`, and the `smoke-test-22422877284.md` test artifact excluded; `specs/` left out of scope per this run's "Specs Directory: scratchpad/" framing). Found and fixed 3 tone issues, all in `mods/jsonschema-go.md`: "Utilize `ForOptions.TypeSchemas` for domain-specific types"→"Use `ForOptions.TypeSchemas` for domain-specific types" (line 154 — corporate-speak filler for "use", matching the v9.14 "leverage"→"use" pattern); "### Key APIs Utilized"→"### Key APIs Used" (line 33) and "3. **Schema Features Utilized:**"→"3. **Schema Features Used:**" (line 66) — same substitution applied to heading text for consistency with the body-text fix in the same file. Left 6 legitimate occurrences of "utilization" unchanged as concrete technical usage, not marketing filler: "Better resource utilization" (`agents/hierarchical-agents-quickstart.md:312`, `agents/hierarchical-agents.md:307`), "Identify resource utilization issues" and "Optimize resource allocation based on utilization data" (`agents/hierarchical-agents.md:51,240`) — these describe a measurable resource metric, not a subjective claim. Also ran a supplementary sweep for `streamline`/`empower`/`optimal`/`innovative`/`transformative`/`holistic`/`paradigm`/`disrupt`/`frictionless`/`turnkey`/`bulletproof`/`hassle-free`/`best-in-class`/`industry-leading`/`unparalleled`/`unmatched`/`world-class`/`revolutionary`/etc.; the only matches were legitimate technical usage ("Unmatched Requests: 0" metric label in `serena-tools-analysis.md:101`; "disrupt existing user workflows" factual risk description in `breaking-cli-rules.md:7`), consistent with the established practice of not editing accurate technical prose. This sandbox's git history again shows a single synthetic snapshot commit (`0045747`, "Avoid redownloading cached runs during logs audit (#61871)", unrelated to `scratchpad/` content) with no incremental history to diff against, consistent with the v9.20–v9.26 notes; "new since v9.26" was determined by content inspection rather than git log. Cross-checked all 63 tracked spec file basenames against this file's Related Documentation and Document History text: no new `scratchpad/` files have appeared since v9.24's additions, so no new links were needed. Cache-memory at `/tmp/gh-aw/cache-memory/` was not accessible from this sandbox this run (path restricted outside the repo working directory), consistent with every prior run's note. Coverage: 63 scratchpad spec files scanned (100%), 0 new files, 1 file touched (3 fixes).
- v9.26 (2026-09-12): Maintenance tone scan — re-ran the established strong-marketing scan (`powerful`/`seamless`/`effortless`/`blazing`/`cutting-edge`/`state-of-the-art`/`world-class`/`battle-tested`/`proven`/`amazing`/`intuitive`/`magical`/etc.) and the subjective-intensifier scan (`comprehensive`/`extensive`/`robust`/`flexible`/`smart`/`enhanced`/`enhance`/`deep`/`deeply`/`significantly`/`nice-to-have`/`best of both worlds`/`easy`/`easily`/`simply`/`sensible defaults`/`out-of-the-box`/etc.) across all 63 `scratchpad/` spec files (same exclusions as v9.25: `dev.md`, `README.md`, and the `smoke-test-22422877284.md` test artifact excluded; `specs/` left out of scope, consistent with this run's "Specs Directory: scratchpad/" framing). `scratchpad/` remains clean — 0 new tone issues. The scan's remaining matches are all previously-accepted legitimate usage, unchanged in wording from prior passes: `EnhanceError()`/`enhanceError()` function identifiers in `errors.md` (lines 130, 335, 344, 433, 652), not prose; "sensible defaults" describing `BaseEngine`/config defaults in `engine-architecture-review.md`, `engine-review-summary.md` (×2), `mdflow.md`, and `oh-my-code.md` — a concrete, accepted engineering term since v8.1–v8.4 fixed the surrounding phrasing but kept this term; "deeply nested" describing YAML/struct/error-chain test cases in `testing.md`, `mods/jsonschema-go.md`, and `errors.md` — factual technical description, not an intensifier; the two `no magic` negations in `mdflow.md` (line 229) and `mdflow-comparison.md` (line 553), unchanged since v9.18; `git-ai.md` line 156's "experimental until the sandbox contract is proven" — a normal engineering conditional, not a claim of an established track record; `pr-checkout-logic-explained.md` line 5's "differs significantly between `pull_request` and `pull_request_target` events" — a neutral factual comparison substantiated by the following explanation, not self-praise; and `safe-outputs-specification.md` line 10's "significantly outdated relative to the canonical specification" — a self-critical staleness disclaimer, not marketing. Cross-checked all 63 tracked spec file basenames against this file's Related Documentation and Document History text: every file is still referenced and no new `scratchpad/` files have appeared since v9.24's additions (`continual-experiments-mvp-plan.md`, `git-ai.md`, `mods/go-sdk.md`), so no new links were needed. This sandbox's git history remains a single synthetic snapshot commit (`b9caa39`, a large repo-wide sync unrelated to `scratchpad/` content), with no incremental history to diff against or verifiable PR to document this cycle, consistent with the v9.24/v9.22 notes. Cache-memory at `/tmp/gh-aw/cache-memory/` was not accessible from this sandbox this run (path restricted outside the repo working directory), consistent with every prior run's note; historical context was reconstructed from this Document History instead. Coverage: 63 scratchpad spec files scanned (100%), 0 new files, 0 files touched.
- v9.25 (2026-09-05): Maintenance tone scan — ran a full-coverage scan (batched, ~10 files per pass) across all 63 `scratchpad/` spec files (excluding `dev.md`, `README.md`, and the `smoke-test-22422877284.md` test artifact per established precedent; `specs/` formal specification files with their own compliance fixtures were left out of scope for this pass, consistent with the "Specs Directory: scratchpad/" framing of this run) and fixed 7 formatting issues plus 3 tone issues across 5 files: `guard-policies-specification.md` (7 fixes: converted bold pseudo-headings under "GitHub Guard Policy Schema" and "Frontmatter Syntax" to `####` headings — "**Repos Scope:**" line 53, "**Minimal Example:**" line 72, "**With Repository Patterns:**" line 82, "**Public Repositories Only:**" line 95, "**Example - Public Repositories:**" line 163, "**Example - Specific Repositories:**" line 181, "**Implementation:**" line 204 — these read as section labels one level below their parent `### N.` headings, matching the v9.x precedent of converting bold-style headings to markdown syntax); `styles-guide.md` (3 fixes: added ` ```text ` language tags to the three ASCII color-swatch example blocks at lines 50, 75, and 97, previously untagged); `serena-tools-quick-reference.md` (1 fix: added ` ```text ` tag to the tool-call-breakdown bar chart at line 20); `template-syntax-sanitization.md` (1 fix: added ` ```text ` tag to the example warning-message block at line 63); `safe-output-handlers-refactoring.md` (1 fix: "All safe output handlers have been successfully refactored" → "...have been refactored" line 5 — "successfully" is redundant self-congratulation, the surrounding per-handler status table already substantiates completion); `engine-architecture-review.md` (1 fix: "✅ Simple, focused implementation" → "✅ Focused implementation" line 120 — "Simple" is an unsubstantiated subjective claim alongside the concrete "focused" descriptor); `actions.md` (1 fix: "Slightly slower execution (compilation overhead)" → "Increased execution time (compilation overhead)" line 380 — "Slightly" is a vague, unquantified qualifier for a stated trade-off). Left several scanner-flagged items unaddressed as false positives or low-value churn: `visual-regression-testing.md`'s "✅ **Update when**:" / "❌ **Don't update when**:" (lines 233, 239) are meaningful checkmark-prefixed list labels, not disguised headings — converting them would remove the ✅/❌ visual scanning aid the list depends on; long-list-to-prose suggestions across ~15 files (e.g., `testing.md` fuzz-test list, `template-injection-prevention.md` untrusted-input list, file listings in `actions.md`/`agent-sessions.md`) were not converted since these are legitimate reference/checklist content where prose would reduce scannability, not improve it; borderline word-choice flags in engineering rationale sections (e.g., "Better resource utilization" in `hierarchical-agents-quickstart.md`, "easier to maintain" in `validation-refactoring.md`, "Faster iteration" in `adding-new-engines.md`) were left as-is — these describe genuine engineering trade-offs rather than unsubstantiated marketing claims, and churning them file-by-file would not improve technical precision. No new files appeared in `scratchpad/` since v9.24's 76-file coverage baseline (73 previously tracked + 3 added last run), so no new Related Documentation links were needed this pass. Cache-memory at `/tmp/gh-aw/cache-memory/` was not accessible from this sandbox (path restricted outside the repo working directory, consistent with every prior run's note); historical context was reconstructed from this Document History instead. Coverage: 63 scratchpad spec files scanned (100%), 0 new files, 5 files touched.
- v9.24 (2026-08-29): Maintenance tone scan — grepped `scratchpad/` (including `agents/`, `mods/`) and `specs/` for the established marketing/intensifier term list and found 14 new "enhanced"/"enhance" tone issues across 7 spec files, all vague comparatives with no stated baseline (the term this pass newly added to the scan list, since prior passes' term list did not include it): `actions.md` (2 fixes: "4. **Enhanced Validation**"→"4. **Validation Tooling**" line 630, parallel to sibling roadmap items which are all plain noun phrases; "**Phase 2**: Enhanced Tooling (Next)"→"**Phase 2**: Tooling Improvements (Next)" line 653, matching the bullet below it which already says "Validation improvements"); `mdflow.md` (6 fixes: "offers inspiration for enhanced gh-aw template capabilities"→"...expanded gh-aw template capabilities" line 16; "### Opportunity 2: Enhanced Template Variable System"→"...Extended Template Variable System" line 64; "#### 2. **Enhanced Import System**"→"**Extended Import System**" lines 706 and 1326 (duplicated heading); "#### 2. **Enhanced MCP Ecosystem**"→"**Expanded MCP Ecosystem**" line 793; "### Engine 3: template-expander (Enhanced Templating Engine)"→"...(Extended Templating Engine)" line 974); `oh-my-code.md` (1 fix: "`UserPromptSubmit`: Enhance prompts with shared knowledge"→"Add shared knowledge to prompts" line 225, matching the verb style of the sibling hooks "Inject context"/"Process results"); `pr-checkout-logic-explained.md` (2 fixes: "The enhanced script now logs:"→"The updated script now logs:" line 229; "**Error logging**: Enhanced diagnostics on failure"→"Detailed diagnostics on failure" line 380, matching item 4's existing "Detailed PR information" wording); `testing.md` (1 fix: "**Stub tests** will be enhanced with full behavioral validation"→"...will be expanded to include full behavioral validation" line 450, matching sibling item 3's "will be expanded" wording); `token-budget-guidelines.md` (2 fixes: "Enhanced efficiency instructions in prompt"→"Added efficiency instructions to the prompt" line 146; "Enhanced prompt with efficiency guidelines"→"Added efficiency guidelines to the prompt" line 161); `mods/jsonschema-go.md` (2 fixes: "Enhanced validation capabilities"→"Additional validation capabilities" line 272; "3. **Enhanced Type Support**"→"3. **Extended Type Support**" line 280). Left untouched: `errors.md`'s five "enhanced"/"Enhance" occurrences (lines 130, 335, 344, 433, 652) are the `EnhanceError()`/`enhanceError()` function identifiers, not prose; `specs/replace-label-spec.md` line 383's "simply adds" and `specs/security-architecture-spec-validation.md` lines 90/155's "comprehensive input sanitization" remain deliberately retained normative/spec-taxonomy language per the v9.16–v9.23 precedent. Added 3 Related Documentation links for spec files with no prior dev.md reference: `continual-experiments-mvp-plan.md`, `git-ai.md`, and `mods/go-sdk.md` — all three read as tone-clean on this pass. Coverage note: this run's git history for `scratchpad/`/`specs/` shows a single synthetic commit (`579b578`) that added the entire tree at once with no incremental prior state to diff against in this sandbox, so "new since last run" was determined by content inspection (grep + Related-Documentation cross-reference) rather than git log, and no new-feature/PR documentation was added this cycle since no verifiable PR history was available in this environment. Cache-memory at `/tmp/gh-aw/cache-memory/` was not accessible from this sandbox (path restricted outside the repo working directory); historical context was reconstructed from this Document History instead. Coverage: 76 total spec files (73 previously tracked + the 3 newly linked above; `dev.md` and `README.md` excluded as non-spec, `smoke-test-22422877284.md` excluded as a test artifact, `specs/forecast-compliance-fixtures/README.md` excluded as non-spec content).
Expand Down
6 changes: 3 additions & 3 deletions scratchpad/mods/jsonschema-go.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ Current version in `go.mod`: **v0.3.0**

The library is used for **automatic JSON schema generation for MCP (Model Context Protocol) tool outputs**. This enables type-safe integration between Go structs and JSON Schema requirements for AI agent tool interfaces.

### Key APIs Utilized
### Key APIs Used

#### 1. `jsonschema.ForType()` - Schema Generation
```go
Expand Down Expand Up @@ -63,7 +63,7 @@ func GenerateOutputSchema[T any]() (*jsonschema.Schema, error) {
- Generic function (`GenerateOutputSchema[T]`) ensures compile-time type checking
- No runtime type assertions needed

3. **Schema Features Utilized:**
3. **Schema Features Used:**
- Object type schemas
- Nested struct support
- Optional field handling via pointers
Expand Down Expand Up @@ -151,7 +151,7 @@ While not officially released, upstream development suggests:
### Feature Opportunities

1. **Custom Type Schemas**
- Utilize `ForOptions.TypeSchemas` for domain-specific types
- Use `ForOptions.TypeSchemas` for domain-specific types
- Map custom types (e.g., time.Time, url.URL) to specific JSON Schema formats

2. **Schema Validation in Tests**
Expand Down