Module validation

Module validation 

Source
Expand description

§Input Validation Module

Production-grade input validation for all API endpoints including:

  • Repository name validation
  • Organization and team name validation
  • Branch and tag name validation
  • Path and content validation
  • Request size limits

§Usage

use guts_node::validation::validate_name;

// Validate a repository name
if let Err(e) = validate_name("my-repo") {
    println!("Invalid name: {}", e);
}

Structs§

FieldError
Field-level validation error.
ValidationErrorResponse
Validation error response.

Constants§

MAX_BODY_LENGTH
MAX_DESCRIPTION_LENGTH
MAX_NAME_LENGTH
Maximum lengths for various fields.
MAX_PATH_LENGTH
MAX_TITLE_LENGTH

Statics§

NAME_REGEX
Regex for valid repository/organization names. Must start with alphanumeric, can contain alphanumeric, hyphens, and underscores.
REF_NAME_REGEX
Regex for valid branch/tag names. Git reference names with common restrictions.
RESERVED_NAMES
Reserved names that cannot be used for repositories or organizations.

Functions§

body_size_limit_middleware
Request body size limit middleware.
validate_name
Validate a repository or organization name.
validate_path
Validate a file path.
validate_ref_name
Validate a git reference name (branch/tag).