Domain Model¶
This page describes the main data shapes gig works with today.
The goal is simple: the CLI, services, and output code should all talk about the same things in the same way.
Repository¶
Represents one detected repository in the workspace.
Fields:
NameRootTypeCurrentBranch
Commit Ref¶
Represents one commit that gig found for a ticket.
Fields:
HashSubjectBranches
Ticket Search Result¶
Used by gig find.
Contains:
- repository
- list of matching commits
Branch Diff¶
Used by gig diff.
Contains:
- ticket ID
- source branch
- target branch
- commits found in the source branch
- commits found in the target branch
- commits missing in the target branch
Risk Signal¶
Used by gig inspect, gig verify, and gig plan.
Represents something that may need extra review.
Examples:
db-changeconfig-changemendix-model
Fields:
CodeLevelSummaryExamples
Repository Inspection¶
Used by gig inspect.
Represents the full ticket picture for one repository.
Contains:
- repository
- commits
- branches seen
- risk signals
- declared dependencies
Environment¶
Represents one logical environment in the release flow.
Examples:
devtestuatprod
Each environment maps to one branch name.
Environment Result¶
Used by gig env status, gig verify, and gig plan.
Represents the ticket state in one environment branch.
Current states:
presentalignedbehindnot-presentbranch-missing
Promotion Plan¶
Used by gig plan.
This is a read-only plan. It does not execute any Git write action.
Contains:
- ticket ID
- source branch
- target branch
- environment mapping
- overall summary
- overall verdict
- per-repo plans
Each repo plan can include:
- compare result
- risk signals
- dependency resolutions
- environment statuses
- manual steps
- planned actions
- notes
- verdict
Verification Result¶
Used by gig verify.
Contains:
- overall verdict
- summary counts
- human-readable reasons
- per-repo checks
- manual steps
Ticket Snapshot¶
Used by gig snapshot create.
Represents a repeatable baseline for one ticket move.
Contains:
- schema version
- capture time
- tool version
- workspace and config path
- ticket ID
- source branch
- target branch
- environment mapping
- inspection baseline
- promotion plan
- verification result
Why These Models Matter¶
- the terminal output stays consistent
- JSON output stays close to human output
- new commands can build on the same service results
- future release packet and config work has a stable base