Skip to main content

In this article

Phase Reference

Each of the Security Planner's six phases has defined inputs, outputs, state transitions, and artifacts. This reference documents the details that govern how the agent moves through a complete security analysis.

Phase Summary​

PhaseNameKey outputState fields updatedGate type
1Project ScopingScope definitionentryMode, context, raiEnabled, aiComponentsHard gate
2Bucket AnalysisBucket classificationbucketsCompletedSummary-and-advance
3Standards MappingControls per bucketstandardsMappedSummary-and-advance
4Security ModelThreat catalogriskSurfaceStartedHard gate
5Backlog GenerationWork itemshandoffGeneratedSummary-and-advance
6Review & HandoffSummary and RAI recommendationraiRecommendationShown, raiPlannerDispatchedHard gate

Gate status for every phase is tracked under the phaseGates state object. Phases 1, 4, and 6 are hard gates that require explicit user confirmation before advancing; phases 2, 3, and 5 are summary-and-advance gates. Cross-cutting state fields such as noticeLog, disclaimerShownAt, and referencesProcessed accumulate across phases independent of the gate model.

Phase 1: Project Scoping​

Purpose​

Capture the project's purpose, technology stack, deployment model, data classification, and compliance requirements. Detect AI/ML components that trigger downstream RAI assessment.

Inputs​

  • User responses to scoping questions (capture mode).
  • PRD/BRD artifacts from .copilot-tracking/prd-sessions/ and .copilot-tracking/brd-sessions/ (From-PRD mode).

Process​

The agent asks 3-5 questions per turn covering:

  • Project purpose and business context.
  • Technology stack and programming languages.
  • Deployment model (cloud, on-premises, hybrid).
  • Data classification and sensitivity levels.
  • Compliance and regulatory requirements.
  • AI/ML component identification.

Outputs​

  • Completed scope definition in the plan file.
  • Project context stored in the context state object (techStack, deploymentModel, dataClassification, complianceTargets).
  • AI/ML detection results stored in state (raiEnabled, raiScope, raiTier, aiComponents).

State Transitions​

FieldBeforeAfter
currentPhase12 (on user confirmation)
entryModeunsetfrom-prd or capture
contextemptyTech stack, deployment, data classification, compliance
raiEnabledunsettrue or false
raiScopeunsetnone, embedded, or delegated
raiTierunsetnone through comprehensive

Phase 2: Bucket Analysis​

Purpose​

Classify all application components into seven operational buckets with a cross-cutting overlay.

The Seven Buckets​

BucketCovers
InfrastructureNetworking, compute, storage, cloud resources
DevOps / Platform-opsCI/CD pipelines, deployment, monitoring
BuildBuild systems, dependency management, artifact signing
MessagingQueues, event buses, pub/sub, webhooks
DataDatabases, caches, data lakes, ETL pipelines
Web / UI / ReportingFrontend apps, APIs, dashboards, reporting
Identity / AuthAuthentication, authorization, secrets management

The GS (cross-cutting) overlay captures concerns that span multiple buckets, such as logging, encryption at rest, and network segmentation.

Process​

The agent walks through each bucket, asking which components belong to it, and identifies cross-cutting concerns. Components can belong to multiple buckets.

State Transitions​

FieldBeforeAfter
currentPhase23 (on user confirmation)
bucketsCompleted[]Populated with completed buckets

Phase 3: Standards Mapping​

Purpose​

Map each operational bucket to the relevant controls from OWASP Top 10, NIST 800-53, and CIS Benchmarks.

Frameworks​

FrameworkScopeUsage
OWASP Top 10Web application risksMapped to Web/UI and Data buckets
NIST 800-53Comprehensive security controlsMapped across all buckets
CIS BenchmarksConfiguration baselinesMapped to Infrastructure and Build

The agent activates rpi-research to perform WAF (Well-Architected Framework) and CAF (Cloud Adoption Framework) runtime lookups when cloud-hosted components are in scope.

State Transitions​

FieldBeforeAfter
currentPhase34 (on user confirmation)
standardsMapped[]Populated with mapped buckets

Phase 4: Security Model Analysis​

Purpose​

Perform STRIDE-based threat modeling per bucket, generating a structured threat catalog.

STRIDE Categories​

CategoryQuestion the threat answers
SpoofingCan an attacker impersonate a legitimate user or system?
TamperingCan data or code be modified without detection?
RepudiationCan actions be denied or hidden?
Information DisclosureCan sensitive data be exposed?
Denial of ServiceCan the system be made unavailable?
Elevation of PrivilegeCan an attacker gain unauthorized access?

Threat Identification Format​

Each threat receives a unique identifier in the format T-{BUCKET}-{NNN}, where BUCKET is the operational bucket abbreviation and NNN is a sequential number.

Severity Rating​

Threats are rated using a likelihood-impact matrix:

Likelihood × ImpactResult
High × HighCritical
High × MediumHigh
Medium × HighHigh
Medium × MediumMedium
Low × anyLow

State Transitions​

FieldBeforeAfter
currentPhase45
riskSurfaceStartedfalsetrue

Phase 5: Backlog Generation​

Purpose​

Convert identified threats into actionable backlog items with acceptance criteria and autonomy tier assignments.

Work Item Formats​

PlatformID formatExample
ADOWI-SEC-{NNN}WI-SEC-001
GitHub{{SEC-TEMP-N}}{{SEC-TEMP-1}}

Autonomy Tiers​

TierHuman involvementTypical use
FullNone requiredLow-risk configuration changes
PartialReview and approveDefault for most security remediations
ManualHuman plans and implementsArchitectural changes, policy decisions

State Transitions​

FieldBeforeAfter
currentPhase56
handoffGenerated{ado: false, github: false}Updated per target

Phase 6: Review and Handoff​

Purpose​

Validate the complete analysis, present a summary, and recommend RAI Planner follow-up when AI/ML components are in scope.

Review Checklist​

The agent validates:

  • All operational buckets have been classified.
  • Standards are mapped for each bucket.
  • Threats exist for each bucket with severity ratings.
  • Backlog items are linked to their source threats.
  • AI/ML components (if detected) have been flagged for RAI assessment.

RAI Dispatch​

When raiEnabled is true, the agent:

  1. Names the RAI Planner as the target agent.
  2. Suggests the from-security-plan entry mode and sets securityPlanRef to the Security Planner state.json.
  3. Sets raiRecommendationShown to true after presenting the recommendation.
  4. Sets raiPlannerDispatched to true only once the user actually starts the RAI Planner handoff.

State Transitions​

FieldBeforeAfter
currentPhase66
raiRecommendationShownfalsetrue
raiPlannerDispatchedfalsetrue (only after the user starts the handoff)

🤖 Crafted with precision by ✨Copilot following brilliant human instruction, then carefully refined by our team of discerning human reviewers.