agentflight 0.3.3 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -0
- package/README.md +41 -9
- package/dist/commands/replay.d.ts.map +1 -1
- package/dist/commands/replay.js +9 -4
- package/dist/commands/replay.js.map +1 -1
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +9 -4
- package/dist/commands/report.js.map +1 -1
- package/dist/commands/resume.d.ts.map +1 -1
- package/dist/commands/resume.js +10 -3
- package/dist/commands/resume.js.map +1 -1
- package/dist/commands/snapshot.d.ts.map +1 -1
- package/dist/commands/snapshot.js +13 -2
- package/dist/commands/snapshot.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +28 -6
- package/dist/commands/status.js.map +1 -1
- package/dist/core/changed-files.d.ts +4 -0
- package/dist/core/changed-files.d.ts.map +1 -1
- package/dist/core/changed-files.js +56 -0
- package/dist/core/changed-files.js.map +1 -1
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +3 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/review-intelligence.d.ts +9 -0
- package/dist/core/review-intelligence.d.ts.map +1 -0
- package/dist/core/review-intelligence.js +340 -0
- package/dist/core/review-intelligence.js.map +1 -0
- package/dist/renderers/html-replay.d.ts +2 -1
- package/dist/renderers/html-replay.d.ts.map +1 -1
- package/dist/renderers/html-replay.js +37 -0
- package/dist/renderers/html-replay.js.map +1 -1
- package/dist/renderers/markdown-report.d.ts +3 -3
- package/dist/renderers/markdown-report.d.ts.map +1 -1
- package/dist/renderers/markdown-report.js +35 -5
- package/dist/renderers/markdown-report.js.map +1 -1
- package/dist/renderers/resume-prompt.d.ts +4 -1
- package/dist/renderers/resume-prompt.d.ts.map +1 -1
- package/dist/renderers/resume-prompt.js +32 -2
- package/dist/renderers/resume-prompt.js.map +1 -1
- package/dist/types/index.d.ts +39 -0
- package/dist/types/index.d.ts.map +1 -1
- package/docs/assets/agentflight-replay-timeline.png +0 -0
- package/docs/development/changed-file-filters.md +58 -0
- package/docs/{roadmap.md → roadmap/index.md} +5 -0
- package/docs/roadmap/v0.4.0-review-intelligence-plan.md +882 -0
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,45 @@
|
|
|
2
2
|
|
|
3
3
|
All notable AgentFlight changes are documented here.
|
|
4
4
|
|
|
5
|
+
## [0.4.0] - 2026-06-14
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added deterministic Review Intelligence for AI coding sessions.
|
|
10
|
+
- Added review focus ranking to highlight the files developers should inspect first.
|
|
11
|
+
- Added proof gap detection for missing or failed verification evidence.
|
|
12
|
+
- Added clearer readiness states and next-best-action guidance.
|
|
13
|
+
- Added config-driven generated/internal changed-file filters via `changedFileFilters.ignore`.
|
|
14
|
+
- Added documentation for generated/internal file filters.
|
|
15
|
+
- Added completion audit for v0.4.0.
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- `status`, `report`, `replay`, `resume`, and `snapshot` now include review intelligence where appropriate.
|
|
20
|
+
- Updated replay UI screenshot to show review focus, proof gaps, readiness, and timeline.
|
|
21
|
+
- Hardened malformed `changedFileFilters.ignore` handling.
|
|
22
|
+
- Kept `.agentflight/config.json` visible while runtime `.agentflight/` artifacts remain filtered.
|
|
23
|
+
|
|
24
|
+
### Deferred
|
|
25
|
+
|
|
26
|
+
- PR comments.
|
|
27
|
+
- JSON/CI integration.
|
|
28
|
+
- ProjScan-enriched ranking.
|
|
29
|
+
- Heartbeat/progress output for long verification.
|
|
30
|
+
- Interrupted verification cleanup.
|
|
31
|
+
- Tool availability messaging alignment.
|
|
32
|
+
- Cloud/login/billing/Pro/Team/GitHub App.
|
|
33
|
+
|
|
34
|
+
### Verification
|
|
35
|
+
|
|
36
|
+
- `npm run verify` passed.
|
|
37
|
+
- `npm run format:check` passed.
|
|
38
|
+
- `npm pack --dry-run` passed.
|
|
39
|
+
- `npm audit --audit-level=moderate` found `0 vulnerabilities`.
|
|
40
|
+
- AgentLoopKit verification passed.
|
|
41
|
+
- ProjScan doctor passed with health `100/100`.
|
|
42
|
+
- ProjScan preflight returned a documented scale/complexity caution that was manually reviewed and accepted.
|
|
43
|
+
|
|
5
44
|
## [0.3.3] - 2026-06-14
|
|
6
45
|
|
|
7
46
|
Patch candidate focused on dogfood findings from published `agentflight@latest` v0.3.2.
|
package/README.md
CHANGED
|
@@ -97,15 +97,25 @@ Risk: medium
|
|
|
97
97
|
Verification Evidence:
|
|
98
98
|
1 passed, 0 failed
|
|
99
99
|
|
|
100
|
+
Review first:
|
|
101
|
+
1. src/auth/reset.ts
|
|
102
|
+
Why: identity/session path; no passing test evidence
|
|
103
|
+
Focus: Check session, permission, and identity boundaries first.
|
|
104
|
+
Suggested proof: npm test
|
|
105
|
+
|
|
106
|
+
Proof gaps:
|
|
107
|
+
- blocking: Sensitive auth, payment, or security files changed without passing test evidence.
|
|
108
|
+
|
|
100
109
|
Latest snapshot:
|
|
101
110
|
- Note: Initial implementation verified
|
|
102
111
|
- Risk: medium
|
|
103
112
|
- Changed files: 3
|
|
104
113
|
|
|
105
|
-
|
|
114
|
+
Readiness: Needs verification
|
|
115
|
+
Reason: Sensitive auth, payment, or security files changed without passing test evidence.
|
|
106
116
|
|
|
107
117
|
Next action:
|
|
108
|
-
|
|
118
|
+
Run agentflight verify -- npm test
|
|
109
119
|
```
|
|
110
120
|
|
|
111
121
|
`agentflight report`:
|
|
@@ -113,13 +123,17 @@ Generate a proof report with agentflight report
|
|
|
113
123
|
```text
|
|
114
124
|
# AgentFlight Proof Report
|
|
115
125
|
|
|
116
|
-
##
|
|
117
|
-
|
|
126
|
+
## Review First
|
|
127
|
+
1. src/auth/reset.ts
|
|
128
|
+
- Why: identity/session path; no passing test evidence
|
|
118
129
|
|
|
119
130
|
## Verification Evidence
|
|
120
131
|
- passed: npm test
|
|
121
132
|
- stdout: .agentflight/evidence/.../verification-1.stdout.txt
|
|
122
133
|
- stderr: .agentflight/evidence/.../verification-1.stderr.txt
|
|
134
|
+
|
|
135
|
+
## Review Readiness
|
|
136
|
+
Needs verification
|
|
123
137
|
```
|
|
124
138
|
|
|
125
139
|
`agentflight replay`:
|
|
@@ -143,6 +157,9 @@ Initial implementation verified
|
|
|
143
157
|
Verification state:
|
|
144
158
|
1 passed, 0 failed
|
|
145
159
|
|
|
160
|
+
Review focus:
|
|
161
|
+
src/auth/reset.ts - identity/session path
|
|
162
|
+
|
|
146
163
|
Guardrails:
|
|
147
164
|
- Stay scoped to the current task.
|
|
148
165
|
- Do not claim completion without proof.
|
|
@@ -157,6 +174,9 @@ The current AgentFlight release supports:
|
|
|
157
174
|
- active session tracking
|
|
158
175
|
- git branch, commit, dirty state, and changed file detection
|
|
159
176
|
- changed file risk categorisation
|
|
177
|
+
- review focus ranking for changed files
|
|
178
|
+
- proof gap detection and review readiness recommendations
|
|
179
|
+
- configurable generated/internal changed-file filters
|
|
160
180
|
- verification evidence capture with `agentflight verify`
|
|
161
181
|
- session events
|
|
162
182
|
- snapshots with `agentflight snapshot --note "..."`
|
|
@@ -201,17 +221,29 @@ Runtime session data is ignored by git by default in this repo:
|
|
|
201
221
|
|
|
202
222
|
`.agentflight/config.json` is intentionally not ignored, so a project can commit its local AgentFlight defaults when useful.
|
|
203
223
|
|
|
224
|
+
AgentFlight always excludes its own runtime session/report/current/evidence files from changed-file analysis. Additional generated or internal files can be ignored locally:
|
|
225
|
+
|
|
226
|
+
```json
|
|
227
|
+
{
|
|
228
|
+
"changedFileFilters": {
|
|
229
|
+
"ignore": [".projscan-memory/**"]
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
See [docs/development/changed-file-filters.md](docs/development/changed-file-filters.md).
|
|
235
|
+
|
|
204
236
|
## Commands
|
|
205
237
|
|
|
206
238
|
- `agentflight init` initializes `.agentflight/` with safe writes.
|
|
207
239
|
- `agentflight start --task "..."` starts a session and writes the current handoff.
|
|
208
|
-
- `agentflight status` summarizes changed files, risk, verification status, snapshots, and next action.
|
|
240
|
+
- `agentflight status` summarizes changed files, risk, verification status, review focus, proof gaps, readiness, snapshots, and next action.
|
|
209
241
|
- `agentflight verify -- <command>` runs a proof command and records stdout/stderr evidence.
|
|
210
242
|
- `agentflight verify` runs commands from `.agentflight/config.json`.
|
|
211
243
|
- `agentflight snapshot --note "..."` records current git, risk, and verification state as a timeline event.
|
|
212
|
-
- `agentflight report` generates a Markdown proof report.
|
|
213
|
-
- `agentflight replay` generates a local self-contained HTML replay.
|
|
214
|
-
- `agentflight resume` prints and saves a continuation prompt.
|
|
244
|
+
- `agentflight report` generates a Markdown proof report with review focus and readiness.
|
|
245
|
+
- `agentflight replay` generates a local self-contained HTML replay with review focus and proof gaps.
|
|
246
|
+
- `agentflight resume` prints and saves a continuation prompt with the next safest action.
|
|
215
247
|
- `agentflight doctor` checks local setup, scripts, tools, config, and current session state.
|
|
216
248
|
|
|
217
249
|
Future placeholders exist for `upgrade`, `license`, and `login`; AgentFlight Pro/Team is not available yet.
|
|
@@ -237,7 +269,7 @@ Read [docs/examples/basic-agentflight-session.md](docs/examples/basic-agentfligh
|
|
|
237
269
|
|
|
238
270
|
## Roadmap
|
|
239
271
|
|
|
240
|
-
See [docs/roadmap.md](docs/roadmap.md).
|
|
272
|
+
See [docs/roadmap/index.md](docs/roadmap/index.md).
|
|
241
273
|
|
|
242
274
|
Not built yet:
|
|
243
275
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/commands/replay.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/commands/replay.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA6C9B"}
|
package/dist/commands/replay.js
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { writeTextFileSafe } from "../core/fs-safe.js";
|
|
2
|
-
import {
|
|
2
|
+
import { filterChangedFiles } from "../core/changed-files.js";
|
|
3
|
+
import { loadConfig } from "../core/config.js";
|
|
3
4
|
import { listChangedFiles } from "../core/git.js";
|
|
4
5
|
import { resolveAgentFlightPaths } from "../core/paths.js";
|
|
5
6
|
import { analyzeRisk } from "../core/risk.js";
|
|
7
|
+
import { buildReviewIntelligence } from "../core/review-intelligence.js";
|
|
6
8
|
import { addSessionEvent, getSessionTimelineEvents, saveSession } from "../core/session.js";
|
|
7
9
|
import { buildVerificationSummary } from "../core/verification.js";
|
|
8
10
|
import { renderHtmlReplay } from "../renderers/html-replay.js";
|
|
9
11
|
import { readCurrentSession } from "./status.js";
|
|
10
12
|
export async function runReplayCommand(options) {
|
|
11
13
|
const session = await readCurrentSession(options.repoRoot);
|
|
12
|
-
const
|
|
14
|
+
const config = await loadConfig(options.repoRoot);
|
|
15
|
+
const changedFiles = filterChangedFiles(options.changedFiles ?? (await listChangedFiles(options.repoRoot)), { ignore: config?.changedFileFilters?.ignore });
|
|
13
16
|
const risk = analyzeRisk(changedFiles);
|
|
14
17
|
const verification = buildVerificationSummary(session, {
|
|
15
18
|
changedFilesCount: changedFiles.length,
|
|
16
19
|
riskLevel: risk.level
|
|
17
20
|
});
|
|
21
|
+
const review = buildReviewIntelligence({ changedFiles, risk, session });
|
|
18
22
|
const replayPath = `${resolveAgentFlightPaths(options.repoRoot).reports}/${session.id}-replay.html`;
|
|
19
23
|
const updatedSession = addSessionEvent(session, {
|
|
20
24
|
type: "replay_generated",
|
|
@@ -33,8 +37,9 @@ export async function runReplayCommand(options) {
|
|
|
33
37
|
changedFileGroups: risk.categories,
|
|
34
38
|
riskBadges: [risk.level, ...risk.categories.map((summary) => summary.category)],
|
|
35
39
|
verificationEvidence: verification.runs,
|
|
36
|
-
reviewReadiness:
|
|
37
|
-
|
|
40
|
+
reviewReadiness: review.readiness.label,
|
|
41
|
+
review,
|
|
42
|
+
recommendation: `${review.readiness.label}. ${buildReplayNextAction(review.readiness.label, review.readiness.nextAction)}`
|
|
38
43
|
});
|
|
39
44
|
await writeTextFileSafe(replayPath, html, { overwrite: true });
|
|
40
45
|
await saveSession(options.repoRoot, updatedSession);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/commands/replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"replay.js","sourceRoot":"","sources":["../../src/commands/replay.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/commands/report.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/commands/report.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA+C9B"}
|
package/dist/commands/report.js
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { writeTextFileSafe } from "../core/fs-safe.js";
|
|
2
|
-
import {
|
|
2
|
+
import { filterChangedFiles } from "../core/changed-files.js";
|
|
3
|
+
import { loadConfig } from "../core/config.js";
|
|
3
4
|
import { listChangedFiles } from "../core/git.js";
|
|
4
5
|
import { resolveAgentFlightPaths } from "../core/paths.js";
|
|
5
6
|
import { analyzeRisk } from "../core/risk.js";
|
|
7
|
+
import { buildReviewIntelligence } from "../core/review-intelligence.js";
|
|
6
8
|
import { addSessionEvent, getSessionTimelineEvents, saveSession } from "../core/session.js";
|
|
7
9
|
import { buildVerificationSummary } from "../core/verification.js";
|
|
8
10
|
import { renderMarkdownReport } from "../renderers/markdown-report.js";
|
|
9
11
|
import { readCurrentSession } from "./status.js";
|
|
10
12
|
export async function runReportCommand(options) {
|
|
11
13
|
const session = await readCurrentSession(options.repoRoot);
|
|
12
|
-
const
|
|
14
|
+
const config = await loadConfig(options.repoRoot);
|
|
15
|
+
const changedFiles = filterChangedFiles(options.changedFiles ?? (await listChangedFiles(options.repoRoot)), { ignore: config?.changedFileFilters?.ignore });
|
|
13
16
|
const risk = analyzeRisk(changedFiles);
|
|
14
17
|
const verification = buildVerificationSummary(session, {
|
|
15
18
|
changedFilesCount: changedFiles.length,
|
|
16
19
|
riskLevel: risk.level
|
|
17
20
|
});
|
|
21
|
+
const review = buildReviewIntelligence({ changedFiles, risk, session });
|
|
18
22
|
const reportPath = `${resolveAgentFlightPaths(options.repoRoot).reports}/${session.id}-proof.md`;
|
|
19
23
|
const updatedSession = addSessionEvent(session, {
|
|
20
24
|
type: "report_generated",
|
|
@@ -34,8 +38,9 @@ export async function runReportCommand(options) {
|
|
|
34
38
|
verificationCommands: session.verificationCommands,
|
|
35
39
|
verificationEvidence: verification.runs,
|
|
36
40
|
verificationGaps: verification.gaps,
|
|
37
|
-
recommendation:
|
|
38
|
-
nextAction: buildReportNextAction(
|
|
41
|
+
recommendation: review.readiness.label,
|
|
42
|
+
nextAction: buildReportNextAction(review.readiness.label, review.readiness.nextAction),
|
|
43
|
+
review,
|
|
39
44
|
tooling: session.tools
|
|
40
45
|
});
|
|
41
46
|
await writeTextFileSafe(reportPath, report, { overwrite: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/commands/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/commands/report.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../src/commands/resume.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../src/commands/resume.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CA8C9B"}
|
package/dist/commands/resume.js
CHANGED
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { writeTextFileSafe } from "../core/fs-safe.js";
|
|
2
|
-
import {
|
|
2
|
+
import { filterChangedFiles } from "../core/changed-files.js";
|
|
3
|
+
import { loadConfig } from "../core/config.js";
|
|
3
4
|
import { listChangedFiles } from "../core/git.js";
|
|
4
5
|
import { resolveAgentFlightPaths } from "../core/paths.js";
|
|
5
6
|
import { analyzeRisk } from "../core/risk.js";
|
|
7
|
+
import { buildReviewIntelligence } from "../core/review-intelligence.js";
|
|
6
8
|
import { addSessionEvent, getLatestSessionEvent, saveSession } from "../core/session.js";
|
|
7
9
|
import { buildVerificationSummary } from "../core/verification.js";
|
|
8
10
|
import { renderResumePrompt } from "../renderers/resume-prompt.js";
|
|
9
11
|
import { readCurrentSession } from "./status.js";
|
|
10
12
|
export async function runResumeCommand(options) {
|
|
11
13
|
const session = await readCurrentSession(options.repoRoot);
|
|
12
|
-
const
|
|
14
|
+
const config = await loadConfig(options.repoRoot);
|
|
15
|
+
const changedFiles = filterChangedFiles(options.changedFiles ?? (await listChangedFiles(options.repoRoot)), { ignore: config?.changedFileFilters?.ignore });
|
|
13
16
|
const risk = analyzeRisk(changedFiles);
|
|
14
17
|
const verification = buildVerificationSummary(session, {
|
|
15
18
|
changedFilesCount: changedFiles.length,
|
|
16
19
|
riskLevel: risk.level
|
|
17
20
|
});
|
|
21
|
+
const review = buildReviewIntelligence({ changedFiles, risk, session });
|
|
18
22
|
const latestSnapshot = getLatestSessionEvent(session, "snapshot_created");
|
|
19
23
|
const updatedSession = addSessionEvent(session, {
|
|
20
24
|
type: "resume_generated",
|
|
@@ -32,9 +36,12 @@ export async function runResumeCommand(options) {
|
|
|
32
36
|
riskLevel: risk.level,
|
|
33
37
|
riskReasons: risk.reasons,
|
|
34
38
|
verificationGaps: verification.gaps,
|
|
39
|
+
reviewFocus: review.focus.slice(0, 5),
|
|
40
|
+
proofGaps: review.proofGaps,
|
|
41
|
+
readiness: review.readiness,
|
|
35
42
|
latestSnapshotNote: latestSnapshot?.message,
|
|
36
43
|
verificationState: `${verification.passed} passed, ${verification.failed} failed`,
|
|
37
|
-
nextAction: buildResumeNextAction(
|
|
44
|
+
nextAction: buildResumeNextAction(review.readiness.label, review.readiness.nextAction)
|
|
38
45
|
});
|
|
39
46
|
const resumePath = resolveAgentFlightPaths(options.repoRoot).currentResumePrompt;
|
|
40
47
|
await writeTextFileSafe(resumePath, prompt, { overwrite: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../src/commands/resume.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../src/commands/resume.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/commands/snapshot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../src/commands/snapshot.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE/D,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACvB,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,YAAY,CAAC;CACrB;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAwDhC"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { filterChangedFiles } from "../core/changed-files.js";
|
|
2
|
+
import { loadConfig } from "../core/config.js";
|
|
2
3
|
import { getGitInfo } from "../core/git.js";
|
|
3
4
|
import { analyzeRisk } from "../core/risk.js";
|
|
5
|
+
import { buildReviewIntelligence } from "../core/review-intelligence.js";
|
|
4
6
|
import { appendSessionEvent } from "../core/session.js";
|
|
5
7
|
import { buildVerificationSummary } from "../core/verification.js";
|
|
6
8
|
import { readCurrentSession } from "./status.js";
|
|
7
9
|
export async function runSnapshotCommand(options) {
|
|
8
10
|
const session = await readCurrentSession(options.repoRoot);
|
|
11
|
+
const config = await loadConfig(options.repoRoot);
|
|
9
12
|
const rawGit = options.git ?? (await getGitInfo(options.repoRoot));
|
|
10
|
-
const changedFiles =
|
|
13
|
+
const changedFiles = filterChangedFiles(rawGit.changedFiles, {
|
|
14
|
+
ignore: config?.changedFileFilters?.ignore
|
|
15
|
+
});
|
|
11
16
|
const git = {
|
|
12
17
|
...rawGit,
|
|
13
18
|
dirty: changedFiles.length > 0,
|
|
@@ -18,6 +23,7 @@ export async function runSnapshotCommand(options) {
|
|
|
18
23
|
changedFilesCount: git.changedFiles.length,
|
|
19
24
|
riskLevel: risk.level
|
|
20
25
|
});
|
|
26
|
+
const review = buildReviewIntelligence({ changedFiles: git.changedFiles, risk, session });
|
|
21
27
|
const updatedSession = await appendSessionEvent(options.repoRoot, session, {
|
|
22
28
|
type: "snapshot_created",
|
|
23
29
|
timestamp: options.now ?? new Date(),
|
|
@@ -32,6 +38,11 @@ export async function runSnapshotCommand(options) {
|
|
|
32
38
|
readiness: verification.readiness,
|
|
33
39
|
gaps: verification.gaps,
|
|
34
40
|
missingCommands: verification.missingCommands
|
|
41
|
+
},
|
|
42
|
+
review: {
|
|
43
|
+
readiness: review.readiness.state,
|
|
44
|
+
topFocusFiles: review.focus.slice(0, 3).map((item) => item.file),
|
|
45
|
+
proofGapCount: review.proofGaps.length
|
|
35
46
|
}
|
|
36
47
|
}
|
|
37
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/commands/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../src/commands/snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,kBAAkB,EAMnB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,mBAAmB,CAAC,CAsD9B;AAsBD,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAUtF"}
|
package/dist/commands/status.js
CHANGED
|
@@ -1,19 +1,23 @@
|
|
|
1
1
|
import { listChangedFiles } from "../core/git.js";
|
|
2
|
-
import {
|
|
2
|
+
import { filterChangedFiles } from "../core/changed-files.js";
|
|
3
|
+
import { loadConfig } from "../core/config.js";
|
|
3
4
|
import { pathExists, readJsonFile } from "../core/fs-safe.js";
|
|
4
5
|
import { resolveAgentFlightPaths } from "../core/paths.js";
|
|
5
6
|
import { analyzeRisk } from "../core/risk.js";
|
|
7
|
+
import { buildReviewIntelligence } from "../core/review-intelligence.js";
|
|
6
8
|
import { getLatestSessionEvent } from "../core/session.js";
|
|
7
9
|
import { buildVerificationSummary } from "../core/verification.js";
|
|
8
10
|
export async function runStatusCommand(options) {
|
|
9
11
|
const session = await readCurrentSession(options.repoRoot);
|
|
10
|
-
const
|
|
12
|
+
const config = await loadConfig(options.repoRoot);
|
|
13
|
+
const changedFiles = filterChangedFiles(options.changedFiles ?? (await listChangedFiles(options.repoRoot)), { ignore: config?.changedFileFilters?.ignore });
|
|
11
14
|
const risk = analyzeRisk(changedFiles);
|
|
12
15
|
const duration = formatDuration(session.startedAt, options.now ?? new Date());
|
|
13
16
|
const verification = buildVerificationSummary(session, {
|
|
14
17
|
changedFilesCount: changedFiles.length,
|
|
15
18
|
riskLevel: risk.level
|
|
16
19
|
});
|
|
20
|
+
const review = buildReviewIntelligence({ changedFiles, risk, session });
|
|
17
21
|
const latestSnapshot = getLatestSessionEvent(session, "snapshot_created");
|
|
18
22
|
return {
|
|
19
23
|
output: `AgentFlight status
|
|
@@ -37,16 +41,20 @@ Verification Evidence:
|
|
|
37
41
|
${verification.passed} passed, ${verification.failed} failed
|
|
38
42
|
${formatVerificationRuns(verification.runs)}
|
|
39
43
|
|
|
40
|
-
|
|
41
|
-
${
|
|
44
|
+
Review first:
|
|
45
|
+
${formatReviewFocus(review.focus.slice(0, 5))}
|
|
46
|
+
|
|
47
|
+
Proof gaps:
|
|
48
|
+
${formatProofGaps(review.proofGaps)}
|
|
42
49
|
|
|
43
50
|
Latest snapshot:
|
|
44
51
|
${formatLatestSnapshot(latestSnapshot)}
|
|
45
52
|
|
|
46
|
-
|
|
53
|
+
Readiness: ${review.readiness.label}
|
|
54
|
+
Reason: ${review.readiness.reason}
|
|
47
55
|
|
|
48
56
|
Next action:
|
|
49
|
-
${
|
|
57
|
+
${review.readiness.nextAction}
|
|
50
58
|
`
|
|
51
59
|
};
|
|
52
60
|
}
|
|
@@ -97,4 +105,18 @@ function formatVerificationRuns(runs) {
|
|
|
97
105
|
.map((run) => `- ${run.status}: ${run.command} (exit ${run.exitCode ?? "unknown"}, ${run.durationMs}ms)`)
|
|
98
106
|
.join("\n");
|
|
99
107
|
}
|
|
108
|
+
function formatReviewFocus(items) {
|
|
109
|
+
if (items.length === 0)
|
|
110
|
+
return "- No changed files to review.";
|
|
111
|
+
return items
|
|
112
|
+
.map((item) => `${item.rank}. ${item.file}\n Why: ${item.reasons.join("; ")}\n Focus: ${item.suggestedReviewerFocus}${item.suggestedCommand ? `\n Suggested proof: ${item.suggestedCommand}` : ""}`)
|
|
113
|
+
.join("\n");
|
|
114
|
+
}
|
|
115
|
+
function formatProofGaps(gaps) {
|
|
116
|
+
if (gaps.length === 0)
|
|
117
|
+
return "- none";
|
|
118
|
+
return gaps
|
|
119
|
+
.map((gap) => `- ${gap.severity}: ${gap.message}${gap.suggestedCommand ? `\n Suggested proof: agentflight verify -- ${gap.suggestedCommand}` : ""}`)
|
|
120
|
+
.join("\n");
|
|
121
|
+
}
|
|
100
122
|
//# sourceMappingURL=status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export interface ChangedFileFilterOptions {
|
|
2
|
+
ignore?: string[] | undefined;
|
|
3
|
+
}
|
|
4
|
+
export declare function filterChangedFiles(files: string[], options?: ChangedFileFilterOptions): string[];
|
|
1
5
|
export declare function filterAgentFlightRuntimePaths(files: string[]): string[];
|
|
2
6
|
export declare function isAgentFlightRuntimePath(file: string): boolean;
|
|
3
7
|
//# sourceMappingURL=changed-files.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changed-files.d.ts","sourceRoot":"","sources":["../../src/core/changed-files.ts"],"names":[],"mappings":"AAOA,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEvE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAK9D"}
|
|
1
|
+
{"version":3,"file":"changed-files.d.ts","sourceRoot":"","sources":["../../src/core/changed-files.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CAC/B;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EAAE,EACf,OAAO,GAAE,wBAA6B,GACrC,MAAM,EAAE,CAaV;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAEvE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAK9D"}
|
|
@@ -4,6 +4,19 @@ const agentFlightRuntimePrefixes = [
|
|
|
4
4
|
".agentflight/current/",
|
|
5
5
|
".agentflight/evidence/"
|
|
6
6
|
];
|
|
7
|
+
export function filterChangedFiles(files, options = {}) {
|
|
8
|
+
const runtimeFiltered = filterAgentFlightRuntimePaths(files);
|
|
9
|
+
const ignore = Array.isArray(options.ignore) ? options.ignore : [];
|
|
10
|
+
const patterns = ignore
|
|
11
|
+
.map(normalizeIgnorePattern)
|
|
12
|
+
.filter((pattern) => pattern !== null);
|
|
13
|
+
if (patterns.length === 0)
|
|
14
|
+
return runtimeFiltered;
|
|
15
|
+
return runtimeFiltered.filter((file) => {
|
|
16
|
+
const normalized = normalizeChangedFilePath(file);
|
|
17
|
+
return !patterns.some((pattern) => matchesIgnorePattern(normalized, pattern));
|
|
18
|
+
});
|
|
19
|
+
}
|
|
7
20
|
export function filterAgentFlightRuntimePaths(files) {
|
|
8
21
|
return files.filter((file) => !isAgentFlightRuntimePath(file));
|
|
9
22
|
}
|
|
@@ -14,4 +27,47 @@ export function isAgentFlightRuntimePath(file) {
|
|
|
14
27
|
function normalizeChangedFilePath(file) {
|
|
15
28
|
return file.replaceAll("\\", "/").replace(/^\.\//, "");
|
|
16
29
|
}
|
|
30
|
+
function normalizeIgnorePattern(pattern) {
|
|
31
|
+
const normalized = normalizeChangedFilePath(pattern.trim());
|
|
32
|
+
if (normalized.length === 0)
|
|
33
|
+
return null;
|
|
34
|
+
if (normalized.startsWith("../") || normalized === "..")
|
|
35
|
+
return null;
|
|
36
|
+
return normalized;
|
|
37
|
+
}
|
|
38
|
+
function matchesIgnorePattern(file, pattern) {
|
|
39
|
+
if (pattern.endsWith("/**")) {
|
|
40
|
+
const prefix = pattern.slice(0, -2);
|
|
41
|
+
return file === prefix.slice(0, -1) || file.startsWith(prefix);
|
|
42
|
+
}
|
|
43
|
+
if (!pattern.includes("*")) {
|
|
44
|
+
return file === pattern;
|
|
45
|
+
}
|
|
46
|
+
if (!pattern.includes("/")) {
|
|
47
|
+
return globToRegExp(pattern).test(file.split("/").at(-1) ?? file);
|
|
48
|
+
}
|
|
49
|
+
return globToRegExp(pattern).test(file);
|
|
50
|
+
}
|
|
51
|
+
function globToRegExp(pattern) {
|
|
52
|
+
let source = "^";
|
|
53
|
+
for (let index = 0; index < pattern.length; index += 1) {
|
|
54
|
+
const char = pattern[index];
|
|
55
|
+
if (char === "*") {
|
|
56
|
+
const next = pattern[index + 1];
|
|
57
|
+
if (next === "*") {
|
|
58
|
+
source += ".*";
|
|
59
|
+
index += 1;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
source += "[^/]*";
|
|
63
|
+
}
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
source += escapeRegExp(char);
|
|
67
|
+
}
|
|
68
|
+
return new RegExp(`${source}$`);
|
|
69
|
+
}
|
|
70
|
+
function escapeRegExp(value) {
|
|
71
|
+
return value.replace(/[\\^$+?.()|[\]{}]/g, "\\$&");
|
|
72
|
+
}
|
|
17
73
|
//# sourceMappingURL=changed-files.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changed-files.js","sourceRoot":"","sources":["../../src/core/changed-files.ts"],"names":[],"mappings":"AAAA,MAAM,0BAA0B,GAAG;IACjC,wBAAwB;IACxB,uBAAuB;IACvB,uBAAuB;IACvB,wBAAwB;CACzB,CAAC;
|
|
1
|
+
{"version":3,"file":"changed-files.js","sourceRoot":"","sources":["../../src/core/changed-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE;QACV,YAAY,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,iBAAiB,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE7E,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE;QACV,YAAY,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,iBAAiB,CA4B1F;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,sBAAsB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CA0ChC;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAIpF"}
|
package/dist/core/config.js
CHANGED
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EACL,SAAS,EACT,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAwBrD,MAAM,UAAU,mBAAmB,CAAC,OAAmC;IACrE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;IAEtC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC;QACvC,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;QAC5B,OAAO,EAAE;YACP,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,KAAK;aACZ;YACD,YAAY,EAAE;gBACZ,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,KAAK;aACZ;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,EAAE;SACb;QACD,kBAAkB,EAAE;YAClB,MAAM,EAAE,EAAE;SACX;QACD,OAAO,EAAE;YACP,SAAS,EAAE,IAAI;YACf,SAAS,EAAE,KAAK;SACjB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAA+B;IAE/B,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE/B,KAAK,MAAM,WAAW,IAAI;QACxB,GAAG,KAAK,CAAC,QAAQ,WAAW;QAC5B,GAAG,KAAK,CAAC,OAAO,WAAW;QAC3B,GAAG,KAAK,CAAC,QAAQ,WAAW;QAC5B,GAAG,KAAK,CAAC,OAAO,WAAW;KAC5B,EAAE,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,aAAa,GAAG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACzE,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,WAAW,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAErE,MAAM,MAAM,GACV,WAAW,CAAC,MAAM,KAAK,SAAS;QAC9B,CAAC,CAAC,MAAM,YAAY,CAAoB,KAAK,CAAC,MAAM,CAAC;QACrD,CAAC,CAAC,aAAa,CAAC;IAEpB,OAAO;QACL,KAAK;QACL,MAAM;QACN,OAAO;QACP,OAAO;QACP,UAAU,EAAE;YACV,YAAY,EAAE,MAAM,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,aAAa,CAAC;YAChE,QAAQ,EAAE,MAAM,UAAU,CAAC,GAAG,OAAO,CAAC,QAAQ,mBAAmB,CAAC;SACnE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,MAAM,KAAK,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,YAAY,CAAoB,KAAK,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC"}
|