Skip to content

Conversation

@galligan
Copy link
Contributor

@galligan galligan commented Jan 23, 2026

Summary

Adds comprehensive documentation to @outfitter/config package:

  • README.md — Installation, quick start, full API reference, XDG path behavior table, override precedence diagram
  • CHANGELOG.md — Initial 0.1.0 release notes
  • TSDoc comments — All exported functions, types, and interfaces documented with @param, @returns, and @example

Highlights

  • Documents XDG Base Directory Specification behavior across platforms
  • Shows config precedence: flags > env > file > defaults
  • Covers all supported formats: TOML, YAML, JSON, JSON5

Test plan

  • bun run typecheck passes
  • bun run build succeeds

🤖 Generated with Claude Code

Copy link
Contributor Author

galligan commented Jan 23, 2026

This stack of pull requests is managed by Graphite. Learn more about stacking.

@galligan galligan marked this pull request as ready for review January 23, 2026 03:12
This was referenced Jan 23, 2026
@greptile-apps
Copy link

greptile-apps bot commented Jan 23, 2026

Greptile Summary

  • Adds comprehensive documentation package for @outfitter/config including README.md, CHANGELOG.md, and complete TSDoc comments for all exported functions
  • Documentation covers XDG Base Directory Specification compliance, configuration precedence rules, and multi-format support (TOML, YAML, JSON, JSON5)

Important Files Changed

Filename Overview
packages/config/src/index.ts Enhanced with comprehensive TSDoc comments for all exported functions, types, and interfaces with examples
packages/config/README.md New comprehensive documentation file covering API reference, XDG behavior, and configuration precedence

Confidence score: 5/5

  • This PR is extremely safe to merge with no production risk as it only adds documentation
  • Score reflects documentation-only changes with no functional code modifications that could introduce bugs or breaking changes
  • No files require special attention as all changes are non-functional documentation enhancements

Sequence Diagram

sequenceDiagram
    participant User
    participant loadConfig
    participant getDefaultSearchPaths
    participant findConfigFile
    participant FileSystem
    participant parseConfigFile
    participant Parser
    participant Schema

    User->>loadConfig: "loadConfig(appName, schema, options?)"
    loadConfig->>getDefaultSearchPaths: "getDefaultSearchPaths(appName)"
    getDefaultSearchPaths-->>loadConfig: "searchPaths array"
    
    loop "for each search path"
        loadConfig->>findConfigFile: "findConfigFile(searchPath)"
        findConfigFile->>FileSystem: "existsSync(config.{ext})"
        FileSystem-->>findConfigFile: "file exists check"
        alt "file found"
            findConfigFile-->>loadConfig: "configFilePath"
        else "file not found"
            findConfigFile-->>loadConfig: "undefined"
        end
    end
    
    alt "config file found"
        loadConfig->>FileSystem: "readFileSync(configFilePath)"
        FileSystem-->>loadConfig: "file content"
        
        loadConfig->>parseConfigFile: "parseConfigFile(content, filename)"
        parseConfigFile->>Parser: "parse based on extension"
        Parser-->>parseConfigFile: "parsed object"
        parseConfigFile-->>loadConfig: "Result<object, ParseError>"
        
        loadConfig->>Schema: "schema.safeParse(parsed)"
        Schema-->>loadConfig: "validation result"
        loadConfig-->>User: "Result<T, ValidationError>"
    else "no config file found"
        loadConfig-->>User: "Result.err(NotFoundError)"
    end
Loading

@galligan
Copy link
Contributor Author

Checked for new feedback; no changes needed. Stack still up to date.

Copy link
Contributor Author

galligan commented Jan 24, 2026

Merge activity

  • Jan 24, 1:54 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Jan 24, 1:59 PM UTC: Graphite rebased this pull request as part of a merge.
  • Jan 24, 2:00 PM UTC: @galligan merged this pull request with Graphite.

@galligan galligan changed the base branch from fix/cli-cursor-ttl to graphite-base/35 January 24, 2026 13:57
@galligan galligan changed the base branch from graphite-base/35 to main January 24, 2026 13:58
@galligan galligan merged commit 91ca45d into main Jan 24, 2026
1 check passed
@galligan galligan deleted the p3-4/config/docs branch January 24, 2026 14:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants