Skip to content

Schemas

Schemas and data structures for commit message generation.

Footer

Bases: BaseModel

Footer token and value.

Source code in src/codemap/git/commit_generator/schemas.py
 8
 9
10
11
12
class Footer(BaseModel):
	"""Footer token and value."""

	token: str = Field(description="Footer token (e.g., 'BREAKING CHANGE', 'Fixes', 'Refs')")
	value: str = Field(description="Footer value")

token class-attribute instance-attribute

token: str = Field(
	description="Footer token (e.g., 'BREAKING CHANGE', 'Fixes', 'Refs')"
)

value class-attribute instance-attribute

value: str = Field(description='Footer value')

CommitMessageSchema

Bases: BaseModel

Commit message schema for LLM output.

Source code in src/codemap/git/commit_generator/schemas.py
15
16
17
18
19
20
21
22
23
class CommitMessageSchema(BaseModel):
	"""Commit message schema for LLM output."""

	type: str = Field(description="The type of change (e.g., feat, fix, docs, style, refactor, perf, test, chore)")
	scope: str | None = Field(description="The scope of the change (e.g., component affected). This is optional.")
	description: str = Field(description="A short, imperative-tense description of the change")
	body: str | None = Field(description="A longer description of the changes. This is optional.")
	breaking: bool = Field(description="Whether this is a breaking change", default=False)
	footers: list[Footer] = Field(description="Footer tokens and values. This is optional.", default=[])

type class-attribute instance-attribute

type: str = Field(
	description="The type of change (e.g., feat, fix, docs, style, refactor, perf, test, chore)"
)

scope class-attribute instance-attribute

scope: str | None = Field(
	description="The scope of the change (e.g., component affected). This is optional."
)

description class-attribute instance-attribute

description: str = Field(
	description="A short, imperative-tense description of the change"
)

body class-attribute instance-attribute

body: str | None = Field(
	description="A longer description of the changes. This is optional."
)

breaking class-attribute instance-attribute

breaking: bool = Field(
	description="Whether this is a breaking change",
	default=False,
)

footers class-attribute instance-attribute

footers: list[Footer] = Field(
	description="Footer tokens and values. This is optional.",
	default=[],
)