-
Notifications
You must be signed in to change notification settings - Fork 0
Phase 7 Git Intelligence and Delivery
StackCendra explains how a proposed or deployed code change affects services, configuration, tests, risk, artifacts, and incidents, while preserving the source provider as the system of record.
- Capability phase: 7
- First marketed in: release 0.7
- Provider order: GitHub, GitLab, then Bitbucket
- Principle: integrate with Git hosting; do not build a new Git hosting system
- Phase 1 maps repositories, services, and evidence.
- Phase 3 exposes configuration-impact analysis.
- Phases 5 and 6 provide versioned Actions, flows, artifacts, and deployments.
- Provider installations use least-privilege authorization and verified webhooks.
- Connect a repository through a provider installation.
- Open a pull request inside StackCendra.
- Review commits, diffs, services, configuration changes, tests, and risk.
- Resolve required checks and approvals in the source provider.
- Promote the reviewed commit through a flow.
- Trace any deployment or incident back to commit, pull request, reviewers, artifact, and configuration.
- repository browser;
- branch graph and commit history;
- expandable diffs and blame;
- worktree management;
- branch comparison;
- cherry-pick and rebase preview;
- conflict visualization;
- commit search;
- contributor analytics.
Mutating Git operations begin with a command preview and repository-state check. The local Git repository remains canonical for local operations; GitHub, GitLab, or Bitbucket remains canonical for hosted review state.
The engine combines:
- changed paths and symbols;
- Phase 1 repository-to-service ownership;
- dependency graph traversal;
- configuration-use changes from Phase 3;
- build and test ownership;
- infrastructure and workflow changes;
- previous deployments and related incidents.
It produces evidence-backed affected and possibly affected sets. Uncertain ownership is visible; it is not silently converted into certainty.
AI may draft:
- commit messages;
- pull-request summaries;
- risk explanations;
- likely reviewer suggestions;
- missing-test suggestions;
- configuration-impact summaries;
- related-incident links.
Deterministic checks establish facts. AI output is labeled, cited to repository evidence, editable, and never grants approval.
- inline comments and collaborative diff review;
- requested changes and approval state;
- provider-synchronized discussions;
- AI review suggestions;
- security and configuration checks;
- missing-test signals;
- protected-branch and required-check visibility.
Provider identifiers and webhook delivery IDs are stored so processing is idempotent and state can be reconciled.
flowchart LR
Commit --> PullRequest["Pull request"]
PullRequest --> Review["Checks and approval"]
Review --> Artifact["Artifact digest"]
Artifact --> FlowRun["Flow run"]
FlowRun --> Deployment
Deployment --> Config["Configuration version"]
Deployment --> Runtime["Runtime resources"]
Runtime --> Incident
Every production deployment must answer:
- which commit and pull request;
- who reviewed and approved it;
- which artifact digest;
- which immutable flow and Action versions;
- which configuration version;
- which targets and runtime versions;
- what policy and health evidence allowed promotion.
Phase 7 adds:
-
ProviderInstallation,RepositoryConnection, andWebhookDelivery; -
Branch,Commit,PullRequest,Review, andCheckResult; -
ChangeImpact,AffectedService, andReviewerSuggestion; -
ArtifactBuildand deployment-to-source relationships.
Important events:
-
repository.synchronized; -
pull_request.updated; -
change_impact.calculated; -
configuration.impact.detected; -
review.approved; -
artifact.built; -
deployment.source.linked.
- Prefer provider apps and short-lived installation tokens.
- Request only required repository scopes.
- Verify webhook signatures and deduplicate deliveries.
- Do not place private source diffs in external AI prompts without an explicit provider and data policy.
- Sanitize patches, logs, and comments for credentials.
- Treat forked pull requests as untrusted input.
- Never execute code merely to analyze a pull request.
- Define provider-neutral repository, pull-request, review, and check contracts.
- Implement GitHub App installation, token, webhook, and reconciliation flows.
- Build repository, graph, history, diff, and worktree interfaces.
- Implement service and configuration change-impact analysis.
- Add review synchronization, checks, and provider deep links.
- Associate artifacts, flows, deployments, and configuration versions.
- Add evidence-linked AI drafting and suggestions.
- Create GitLab adapter contracts and Bitbucket compatibility plan.
- provider contract tests and webhook replay fixtures;
- signature, replay, permission, and token-expiration tests;
- large-diff and rename impact fixtures;
- monorepo ownership and dependency traversal tests;
- fork and malicious-patch scenarios;
- provider reconciliation after missed events;
- Git worktree and dirty-state safety tests;
- evidence-link accuracy evaluation for AI suggestions.
Phase 7 is complete when a GitHub pull request appears in StackCendra, the system identifies affected services and a newly required configuration value with source evidence, required checks remain synchronized with GitHub, and a deployment can be traced to the reviewed commit, artifact, configuration version, approvers, and flow run.
| Risk | Control |
|---|---|
| Provider state and local state diverge | Webhooks plus periodic reconciliation |
| Impact analysis overstates certainty | Affected/possible sets with evidence and confidence |
| Private code leaks to AI | Explicit provider policy, minimization, local option |
| StackCendra becomes another Git host | Provider remains system of record |
| Mutating Git action damages work | Preview, clean-state checks, and recoverable operations |
- hosting Git repositories;
- replacing provider branch protection;
- autonomous merging;
- using AI review as an approval;
- promising complete semantic impact analysis for every language.
Phase 8 uses source, artifact, deployment, and configuration links to explain live Docker and Kubernetes resources.
StackCendra is currently in Phase 0. The complete Phase 0–13 plan is versioned in the main repository under docs/wiki; later-phase pages describe intended behavior, not current implementation.
- Phase 0 foundation
- Phase 0 backlog
- Release 0.1 discovery
- Phase delivery framework
- Roadmap
- Wiki review guide
- Risks and decisions