agentera 3.0.0-dev.4 → 3.0.0-dev.6
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/README.md +4 -3
- package/bundle/.agentera-npx-bundle.json +1 -1
- package/bundle/references/adapters/opencode.md +1 -1
- package/bundle/references/adapters/package-registry.yaml +0 -1
- package/bundle/references/adapters/package-surface-characterization.md +1 -2
- package/bundle/references/analysis/startup-measurement-contract.yaml +11 -11
- package/bundle/references/cli/agent-ready-state-contract.yaml +5 -5
- package/bundle/references/cli/audience-namespace-cli-migration.yaml +40 -26
- package/bundle/references/cli/bundle-skill-vocabulary.yaml +2 -30
- package/bundle/references/cli/capability-instruction-contract.yaml +98 -57
- package/bundle/references/cli/coexistence-probe.yaml +9 -0
- package/bundle/references/cli/routing-execution-vocabulary.yaml +6 -6
- package/bundle/references/cli/single-name-protocol.yaml +42 -0
- package/bundle/references/cli/update-channels.yaml +18 -2
- package/bundle/references/cli/upgrade-repair-wording.md +31 -0
- package/bundle/references/cli/v3-handoff-manifest.schema.yaml +98 -0
- package/bundle/references/cli/vocabulary-index.yaml +3 -3
- package/bundle/references/cli/vocabulary.md +34 -26
- package/bundle/references/meta/documentation-inventory.md +9 -3
- package/bundle/registry.json +1 -1
- package/bundle/skills/agentera/SKILL.md +50 -33
- package/bundle/skills/agentera/agents/dokumentera.toml +1 -1
- package/bundle/skills/agentera/agents/hej.toml +1 -1
- package/bundle/skills/agentera/agents/inspektera.toml +1 -1
- package/bundle/skills/agentera/agents/inspirera.toml +1 -1
- package/bundle/skills/agentera/agents/optimera.toml +1 -1
- package/bundle/skills/agentera/agents/orkestrera.toml +1 -1
- package/bundle/skills/agentera/agents/planera.toml +1 -1
- package/bundle/skills/agentera/agents/profilera.toml +1 -1
- package/bundle/skills/agentera/agents/realisera.toml +1 -1
- package/bundle/skills/agentera/agents/resonera.toml +1 -1
- package/bundle/skills/agentera/agents/visionera.toml +1 -1
- package/bundle/skills/agentera/agents/visualisera.toml +1 -1
- package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +26 -13
- package/bundle/skills/agentera/capability_schema_contract.yaml +33 -14
- package/bundle/skills/agentera/references/contract.md +2 -2
- package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +1 -1
- package/bundle/skills/agentera/schemas/artifacts/progress.yaml +15 -36
- package/bundle/skills/agentera/schemas/artifacts/todo.yaml +14 -0
- package/dist/analytics/extractCorpus/cli.js +101 -0
- package/dist/analytics/extractCorpus/cli.js.map +1 -0
- package/dist/analytics/extractCorpus/copilotSessions.js +231 -0
- package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/core.js +357 -0
- package/dist/analytics/extractCorpus/core.js.map +1 -0
- package/dist/analytics/extractCorpus/corpus.js +132 -0
- package/dist/analytics/extractCorpus/corpus.js.map +1 -0
- package/dist/analytics/extractCorpus/cursorSessions.js +420 -0
- package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/filesystemSources.js +122 -0
- package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
- package/dist/analytics/extractCorpus/index.js +9 -0
- package/dist/analytics/extractCorpus/index.js.map +1 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js +185 -0
- package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js +275 -0
- package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
- package/dist/analytics/extractCorpus.js +2 -1790
- package/dist/analytics/extractCorpus.js.map +1 -1
- package/dist/analytics/usageStats.js +1 -1
- package/dist/analytics/usageStats.js.map +1 -1
- package/dist/capabilities/dokumentera/instructions.js +6 -0
- package/dist/capabilities/dokumentera/instructions.js.map +1 -0
- package/dist/capabilities/hej/instructions.js +6 -0
- package/dist/capabilities/hej/instructions.js.map +1 -0
- package/dist/capabilities/index.js +38 -0
- package/dist/capabilities/index.js.map +1 -0
- package/dist/capabilities/inspektera/instructions.js +6 -0
- package/dist/capabilities/inspektera/instructions.js.map +1 -0
- package/dist/capabilities/inspirera/instructions.js +6 -0
- package/dist/capabilities/inspirera/instructions.js.map +1 -0
- package/dist/capabilities/optimera/instructions.js +6 -0
- package/dist/capabilities/optimera/instructions.js.map +1 -0
- package/dist/capabilities/orkestrera/instructions.js +6 -0
- package/dist/capabilities/orkestrera/instructions.js.map +1 -0
- package/dist/capabilities/planera/instructions.js +6 -0
- package/dist/capabilities/planera/instructions.js.map +1 -0
- package/dist/capabilities/profilera/instructions.js +6 -0
- package/dist/capabilities/profilera/instructions.js.map +1 -0
- package/dist/capabilities/realisera/instructions.js +6 -0
- package/dist/capabilities/realisera/instructions.js.map +1 -0
- package/dist/capabilities/resonera/instructions.js +6 -0
- package/dist/capabilities/resonera/instructions.js.map +1 -0
- package/dist/capabilities/visionera/instructions.js +6 -0
- package/dist/capabilities/visionera/instructions.js.map +1 -0
- package/dist/capabilities/visualisera/instructions.js +6 -0
- package/dist/capabilities/visualisera/instructions.js.map +1 -0
- package/dist/cli/capabilityContext/benchmark.js +557 -0
- package/dist/cli/capabilityContext/benchmark.js.map +1 -0
- package/dist/cli/capabilityContext/bespoke.js +25 -0
- package/dist/cli/capabilityContext/bespoke.js.map +1 -0
- package/dist/cli/capabilityContext/closeout.js +230 -0
- package/dist/cli/capabilityContext/closeout.js.map +1 -0
- package/dist/cli/capabilityContext/contract.js +186 -0
- package/dist/cli/capabilityContext/contract.js.map +1 -0
- package/dist/cli/capabilityContext/evidence.js +446 -0
- package/dist/cli/capabilityContext/evidence.js.map +1 -0
- package/dist/cli/capabilityContext/index.js +4 -0
- package/dist/cli/capabilityContext/index.js.map +1 -0
- package/dist/cli/capabilityContext/orchestration.js +107 -0
- package/dist/cli/capabilityContext/orchestration.js.map +1 -0
- package/dist/cli/capabilityContext/planState.js +271 -0
- package/dist/cli/capabilityContext/planState.js.map +1 -0
- package/dist/cli/capabilityContext/progress.js +96 -0
- package/dist/cli/capabilityContext/progress.js.map +1 -0
- package/dist/cli/capabilityContext/realisera.js +174 -0
- package/dist/cli/capabilityContext/realisera.js.map +1 -0
- package/dist/cli/capabilityContext/shared.js +94 -0
- package/dist/cli/capabilityContext/shared.js.map +1 -0
- package/dist/cli/capabilityContext/slim.js +106 -0
- package/dist/cli/capabilityContext/slim.js.map +1 -0
- package/dist/cli/capabilityContext/startup.js +208 -0
- package/dist/cli/capabilityContext/startup.js.map +1 -0
- package/dist/cli/capabilityContext/types.js +43 -0
- package/dist/cli/capabilityContext/types.js.map +1 -0
- package/dist/cli/capabilityContext.js +1 -2420
- package/dist/cli/capabilityContext.js.map +1 -1
- package/dist/cli/commands/capability.js +1 -8
- package/dist/cli/commands/capability.js.map +1 -1
- package/dist/cli/commands/compact.js +1 -1
- package/dist/cli/commands/compact.js.map +1 -1
- package/dist/cli/commands/doctor.js +35 -6
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/lint.js +4 -36
- package/dist/cli/commands/lint.js.map +1 -1
- package/dist/cli/commands/query.js +1 -1
- package/dist/cli/commands/query.js.map +1 -1
- package/dist/cli/commands/report.js +11 -2
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/schema.js +1 -2
- package/dist/cli/commands/schema.js.map +1 -1
- package/dist/cli/commands/state/decisions.js +397 -0
- package/dist/cli/commands/state/decisions.js.map +1 -0
- package/dist/cli/commands/state/docs.js +93 -0
- package/dist/cli/commands/state/docs.js.map +1 -0
- package/dist/cli/commands/state/experiments.js +67 -0
- package/dist/cli/commands/state/experiments.js.map +1 -0
- package/dist/cli/commands/state/health.js +114 -0
- package/dist/cli/commands/state/health.js.map +1 -0
- package/dist/cli/commands/state/index.js +51 -0
- package/dist/cli/commands/state/index.js.map +1 -0
- package/dist/cli/commands/state/objective.js +68 -0
- package/dist/cli/commands/state/objective.js.map +1 -0
- package/dist/cli/commands/state/plan.js +172 -0
- package/dist/cli/commands/state/plan.js.map +1 -0
- package/dist/cli/commands/state/progress.js +47 -0
- package/dist/cli/commands/state/progress.js.map +1 -0
- package/dist/cli/commands/state/shared.js +15 -0
- package/dist/cli/commands/state/shared.js.map +1 -0
- package/dist/cli/commands/state/todo.js +121 -0
- package/dist/cli/commands/state/todo.js.map +1 -0
- package/dist/cli/commands/state.js +29 -18
- package/dist/cli/commands/state.js.map +1 -1
- package/dist/cli/commands/validate.js +44 -20
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/dispatch/check.js +328 -0
- package/dist/cli/dispatch/check.js.map +1 -0
- package/dist/cli/dispatch/index.js +177 -0
- package/dist/cli/dispatch/index.js.map +1 -0
- package/dist/cli/dispatch/lifecycle.js +492 -0
- package/dist/cli/dispatch/lifecycle.js.map +1 -0
- package/dist/cli/dispatch/prime.js +100 -0
- package/dist/cli/dispatch/prime.js.map +1 -0
- package/dist/cli/dispatch/shared.js +64 -0
- package/dist/cli/dispatch/shared.js.map +1 -0
- package/dist/cli/dispatch/state.js +149 -0
- package/dist/cli/dispatch/state.js.map +1 -0
- package/dist/cli/dispatch.js +1 -995
- package/dist/cli/dispatch.js.map +1 -1
- package/dist/cli/errors.js +53 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/help.js +1 -3
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/orientation.js +10 -7
- package/dist/cli/orientation.js.map +1 -1
- package/dist/cli/stateQuery.js +7 -0
- package/dist/cli/stateQuery.js.map +1 -1
- package/dist/cli/todoMarkdown.js +33 -0
- package/dist/cli/todoMarkdown.js.map +1 -0
- package/dist/hooks/common.js +8 -25
- package/dist/hooks/common.js.map +1 -1
- package/dist/hooks/compaction/apply.js +244 -0
- package/dist/hooks/compaction/apply.js.map +1 -0
- package/dist/hooks/compaction/dryRun.js +181 -0
- package/dist/hooks/compaction/dryRun.js.map +1 -0
- package/dist/hooks/compaction/index.js +23 -0
- package/dist/hooks/compaction/index.js.map +1 -0
- package/dist/hooks/compaction/parse.js +129 -0
- package/dist/hooks/compaction/parse.js.map +1 -0
- package/dist/hooks/compaction/retention.js +197 -0
- package/dist/hooks/compaction/retention.js.map +1 -0
- package/dist/hooks/compaction/status.js +243 -0
- package/dist/hooks/compaction/status.js.map +1 -0
- package/dist/hooks/compaction/types.js +6 -0
- package/dist/hooks/compaction/types.js.map +1 -0
- package/dist/hooks/compaction.js +20 -20
- package/dist/hooks/compaction.js.map +1 -1
- package/dist/hooks/cursorPreToolUse.js +1 -1
- package/dist/hooks/cursorPreToolUse.js.map +1 -1
- package/dist/hooks/sessionStart.js +4 -4
- package/dist/hooks/sessionStart.js.map +1 -1
- package/dist/hooks/sessionStop.js +3 -12
- package/dist/hooks/sessionStop.js.map +1 -1
- package/dist/hooks/validateArtifact/agentFacing.js +10 -0
- package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
- package/dist/hooks/validateArtifact/index.js +149 -0
- package/dist/hooks/validateArtifact/index.js.map +1 -0
- package/dist/hooks/validateArtifact/markdown.js +95 -0
- package/dist/hooks/validateArtifact/markdown.js.map +1 -0
- package/dist/hooks/validateArtifact/runtime.js +83 -0
- package/dist/hooks/validateArtifact/runtime.js.map +1 -0
- package/dist/hooks/validateArtifact/schema.js +455 -0
- package/dist/hooks/validateArtifact/schema.js.map +1 -0
- package/dist/hooks/validateArtifact/traversal.js +105 -0
- package/dist/hooks/validateArtifact/traversal.js.map +1 -0
- package/dist/hooks/validateArtifact/violations.js +105 -0
- package/dist/hooks/validateArtifact/violations.js.map +1 -0
- package/dist/hooks/validateArtifact.js +40 -49
- package/dist/hooks/validateArtifact.js.map +1 -1
- package/dist/migrate/v2HandoffManifest.js +333 -0
- package/dist/migrate/v2HandoffManifest.js.map +1 -0
- package/dist/registries/artifactProtocolIds.js +77 -0
- package/dist/registries/artifactProtocolIds.js.map +1 -0
- package/dist/registries/capabilityContract.js +12 -11
- package/dist/registries/capabilityContract.js.map +1 -1
- package/dist/registries/evaluatorHandoffContract.js +171 -0
- package/dist/registries/evaluatorHandoffContract.js.map +1 -0
- package/dist/release/releaseMetadata.js +235 -0
- package/dist/release/releaseMetadata.js.map +1 -0
- package/dist/setup/codex/agents.js +96 -0
- package/dist/setup/codex/agents.js.map +1 -0
- package/dist/setup/codex/cli.js +161 -0
- package/dist/setup/codex/cli.js.map +1 -0
- package/dist/setup/codex/configToml.js +644 -0
- package/dist/setup/codex/configToml.js.map +1 -0
- package/dist/setup/codex/constants.js +29 -0
- package/dist/setup/codex/constants.js.map +1 -0
- package/dist/setup/codex/installRoot.js +64 -0
- package/dist/setup/codex/installRoot.js.map +1 -0
- package/dist/setup/codex/state.js +270 -0
- package/dist/setup/codex/state.js.map +1 -0
- package/dist/setup/codex.js +11 -1055
- package/dist/setup/codex.js.map +1 -1
- package/dist/setup/doctor/core.js +300 -0
- package/dist/setup/doctor/core.js.map +1 -0
- package/dist/setup/doctor/diagnostics.js +247 -0
- package/dist/setup/doctor/diagnostics.js.map +1 -0
- package/dist/setup/doctor/opencode.js +281 -0
- package/dist/setup/doctor/opencode.js.map +1 -0
- package/dist/setup/doctor/report.js +474 -0
- package/dist/setup/doctor/report.js.map +1 -0
- package/dist/setup/doctor.js +9 -1296
- package/dist/setup/doctor.js.map +1 -1
- package/dist/setup/opencode.js +13 -0
- package/dist/setup/opencode.js.map +1 -0
- package/dist/setup/smokeChecks.js +1 -1
- package/dist/setup/smokeChecks.js.map +1 -1
- package/dist/state/progressCommit.js +1 -1
- package/dist/state/progressCommit.js.map +1 -1
- package/dist/state/startupAnalysis/benchmark.js +367 -0
- package/dist/state/startupAnalysis/benchmark.js.map +1 -0
- package/dist/state/startupAnalysis/contract.js +122 -0
- package/dist/state/startupAnalysis/contract.js.map +1 -0
- package/dist/state/startupAnalysis/helpers.js +332 -0
- package/dist/state/startupAnalysis/helpers.js.map +1 -0
- package/dist/state/startupAnalysis/index.js +7 -0
- package/dist/state/startupAnalysis/index.js.map +1 -0
- package/dist/state/startupAnalysis/metrics.js +334 -0
- package/dist/state/startupAnalysis/metrics.js.map +1 -0
- package/dist/state/startupAnalysis/records.js +195 -0
- package/dist/state/startupAnalysis/records.js.map +1 -0
- package/dist/state/startupAnalysis/report.js +123 -0
- package/dist/state/startupAnalysis/report.js.map +1 -0
- package/dist/state/startupAnalysis/threshold.js +500 -0
- package/dist/state/startupAnalysis/threshold.js.map +1 -0
- package/dist/state/startupAnalysis.js +2 -1952
- package/dist/state/startupAnalysis.js.map +1 -1
- package/dist/upgrade/coexistenceProbe.js +83 -0
- package/dist/upgrade/coexistenceProbe.js.map +1 -0
- package/dist/upgrade/doctor.js +41 -2
- package/dist/upgrade/doctor.js.map +1 -1
- package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -1
- package/dist/upgrade/migrateArtifactsV1ToV2.js.map +1 -1
- package/dist/upgrade/migrateArtifactsV2ToV3.js +5 -83
- package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
- package/dist/upgrade/nextMajorDoctor.js +136 -0
- package/dist/upgrade/nextMajorDoctor.js.map +1 -0
- package/dist/upgrade/projectIntegration.js +3 -1
- package/dist/upgrade/projectIntegration.js.map +1 -1
- package/dist/upgrade/runtimeMigration.js +32 -5
- package/dist/upgrade/runtimeMigration.js.map +1 -1
- package/dist/upgrade/v3CapabilitySurface.js +15 -0
- package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
- package/dist/upgrade/versionResolution.js +12 -4
- package/dist/upgrade/versionResolution.js.map +1 -1
- package/dist/validate/appHomeContract.js +4 -4
- package/dist/validate/appHomeContract.js.map +1 -1
- package/dist/validate/capability.js +11 -3
- package/dist/validate/capability.js.map +1 -1
- package/dist/validate/selfAudit.js +62 -20
- package/dist/validate/selfAudit.js.map +1 -1
- package/dist/validate/vocabularyAuthority.js +298 -0
- package/dist/validate/vocabularyAuthority.js.map +1 -0
- package/package.json +4 -4
- package/bundle/references/v1-section-mapping.md +0 -47
- package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
- package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
- package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
- package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
- package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
- package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
- package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
- package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
- package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
- package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
- package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
- package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
- package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
- package/bundle/skills/hej/SKILL.md +0 -69
- package/bundle/skills/hej/agents/hej.toml +0 -11
- package/bundle/skills/hej/agents/openai.yaml +0 -8
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `state todo` query (TODO.md).
|
|
3
|
+
*
|
|
4
|
+
* Reads TODO.md, partitions entries by severity band (using the
|
|
5
|
+
* protocol glyphs as the section heading), and reports each entry
|
|
6
|
+
* with its severity, status, and description. Supports both the
|
|
7
|
+
* legacy structured YAML shape and the current markdown layout.
|
|
8
|
+
*/
|
|
9
|
+
import fs from "node:fs";
|
|
10
|
+
import { emitStateStructured, extractEntries, filterByFieldValue, formatEntry, loadArtifact, printStatusCounts, sourceMetadata, statusCounts, structuredState, } from "../../stateQuery.js";
|
|
11
|
+
import { artifactPath } from "../../appContext.js";
|
|
12
|
+
import { isResolvedTodoMarkdownStatus, parseTodoMarkdownListItem } from "../../todoMarkdown.js";
|
|
13
|
+
import { out, err } from "./shared.js";
|
|
14
|
+
const TODO_SEVERITY_ORDER_KEYS = ["critical", "degraded", "warning", "normal", "info", "annoying"];
|
|
15
|
+
const TODO_SEV_GLYPHS = {
|
|
16
|
+
critical: "⇶",
|
|
17
|
+
degraded: "⇉",
|
|
18
|
+
warning: "⇉",
|
|
19
|
+
normal: "→",
|
|
20
|
+
info: "⇢",
|
|
21
|
+
annoying: "⇢",
|
|
22
|
+
};
|
|
23
|
+
export function normalizeSeverity(value, deflt = "normal") {
|
|
24
|
+
const text = String(value || deflt).toLowerCase();
|
|
25
|
+
for (const key of TODO_SEVERITY_ORDER_KEYS) {
|
|
26
|
+
if (text.includes(key))
|
|
27
|
+
return key;
|
|
28
|
+
}
|
|
29
|
+
return deflt;
|
|
30
|
+
}
|
|
31
|
+
export function queryTodo(args, schemas, io, openOnly = false) {
|
|
32
|
+
const o = out(io);
|
|
33
|
+
const info = schemas.todo ?? { path: "TODO.md", record: undefined, schema: {}, fields: {} };
|
|
34
|
+
const todoPath = artifactPath(info, "todo");
|
|
35
|
+
const severity = args.severity ?? null;
|
|
36
|
+
const status = args.status ?? null;
|
|
37
|
+
const format = args.format ?? "text";
|
|
38
|
+
if (!fs.existsSync(todoPath)) {
|
|
39
|
+
if (format !== "text") {
|
|
40
|
+
return emitStateStructured("todo", structuredState("todo", [], sourceMetadata("todo", todoPath), {
|
|
41
|
+
filters: { severity, status },
|
|
42
|
+
}), format, args.fields, o, err(io));
|
|
43
|
+
}
|
|
44
|
+
return 0;
|
|
45
|
+
}
|
|
46
|
+
const data = loadArtifact(todoPath);
|
|
47
|
+
let entries = extractEntries(data);
|
|
48
|
+
if (entries.length > 0) {
|
|
49
|
+
if (severity)
|
|
50
|
+
entries = filterByFieldValue(entries, "severity", severity);
|
|
51
|
+
if (status)
|
|
52
|
+
entries = filterByFieldValue(entries, "status", status);
|
|
53
|
+
if (openOnly) {
|
|
54
|
+
entries = entries.filter((entry) => !["done", "closed", "resolved"].includes(String(entry.status ?? "open").toLowerCase()));
|
|
55
|
+
}
|
|
56
|
+
if (format !== "text") {
|
|
57
|
+
return emitStateStructured("todo", structuredState("todo", entries, sourceMetadata("todo", todoPath), {
|
|
58
|
+
filters: { severity, status, open_only: openOnly || null },
|
|
59
|
+
}), format, args.fields, o, err(io));
|
|
60
|
+
}
|
|
61
|
+
printStatusCounts("TODO status", statusCounts(entries), o);
|
|
62
|
+
for (const entry of entries) {
|
|
63
|
+
const line = formatEntry(entry, ["severity", "status", "description", "title"]);
|
|
64
|
+
if (line)
|
|
65
|
+
o(line + "\n");
|
|
66
|
+
}
|
|
67
|
+
return 0;
|
|
68
|
+
}
|
|
69
|
+
const text = fs.readFileSync(todoPath, "utf8");
|
|
70
|
+
const marker = severity ? TODO_SEV_GLYPHS[severity.toLowerCase()] ?? severity : null;
|
|
71
|
+
let currentSection = null;
|
|
72
|
+
const markdownEntries = [];
|
|
73
|
+
for (const rawLine of text.split(/\r\n|\r|\n/)) {
|
|
74
|
+
const sline = rawLine.trim();
|
|
75
|
+
if (sline.startsWith("## ")) {
|
|
76
|
+
const section = sline.slice(3).trim();
|
|
77
|
+
if (section.toLowerCase().includes("resolved")) {
|
|
78
|
+
currentSection = null;
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
currentSection = section;
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
if (currentSection === null)
|
|
85
|
+
continue;
|
|
86
|
+
const parsed = parseTodoMarkdownListItem(sline);
|
|
87
|
+
if (!parsed)
|
|
88
|
+
continue;
|
|
89
|
+
if (marker && !currentSection.includes(marker))
|
|
90
|
+
continue;
|
|
91
|
+
const itemStatus = parsed.status;
|
|
92
|
+
if (openOnly && isResolvedTodoMarkdownStatus(itemStatus))
|
|
93
|
+
continue;
|
|
94
|
+
if (status) {
|
|
95
|
+
const want = status.toLowerCase();
|
|
96
|
+
const have = itemStatus.toLowerCase();
|
|
97
|
+
if (want === "open" || want === "todo") {
|
|
98
|
+
if (isResolvedTodoMarkdownStatus(have))
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
else if (have !== want) {
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
markdownEntries.push({
|
|
106
|
+
severity: normalizeSeverity(currentSection),
|
|
107
|
+
status: itemStatus,
|
|
108
|
+
description: parsed.description,
|
|
109
|
+
section: currentSection,
|
|
110
|
+
});
|
|
111
|
+
if (format === "text")
|
|
112
|
+
o(`[${currentSection}] ${parsed.description}\n`);
|
|
113
|
+
}
|
|
114
|
+
if (format !== "text") {
|
|
115
|
+
return emitStateStructured("todo", structuredState("todo", markdownEntries, sourceMetadata("todo", todoPath), {
|
|
116
|
+
filters: { severity, status, open_only: openOnly || null },
|
|
117
|
+
}), format, args.fields, o, err(io));
|
|
118
|
+
}
|
|
119
|
+
return 0;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=todo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"todo.js","sourceRoot":"","sources":["../../../../src/cli/commands/state/todo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import fs from "node:fs";
|
|
2
2
|
import { artifactPath, discoverSchemasDir, loadSchemas } from "../appContext.js";
|
|
3
|
-
import { asList, COMMAND_FILTERS, emitStateStructured, extractEntries, filterByFieldValue, filterByTopic, firstPresent, formatEntry, loadArtifact, missingSchemaError, printStatusCounts, recentCycles, sourceMetadata, statusCounts, stringFieldNames, structuredState, truncate, validateFilterValues, } from "../stateQuery.js";
|
|
3
|
+
import { asList, COMMAND_FILTERS, emitStateStructured, extractEntries, filterByFieldValue, filterByTopic, firstPresent, formatEntry, loadArtifact, missingSchemaError, printStatusCounts, progressEntriesForOutput, recentCycles, sourceMetadata, statusCounts, stringFieldNames, structuredState, truncate, validateFilterValues, } from "../stateQuery.js";
|
|
4
|
+
import { isResolvedTodoMarkdownStatus, parseTodoMarkdownListItem } from "../todoMarkdown.js";
|
|
4
5
|
function out(io) {
|
|
5
6
|
return io.out ?? ((t) => process.stdout.write(t));
|
|
6
7
|
}
|
|
@@ -27,14 +28,14 @@ export function queryProgress(args, schemas, io) {
|
|
|
27
28
|
const effectiveLimit = (args.limit ?? 5) || 5;
|
|
28
29
|
entries = recentCycles(entries, effectiveLimit);
|
|
29
30
|
if ((args.format ?? "text") !== "text") {
|
|
30
|
-
return emitStateStructured("progress", structuredState("progress", entries, sourceMetadata("progress", p), {
|
|
31
|
+
return emitStateStructured("progress", structuredState("progress", progressEntriesForOutput(entries), sourceMetadata("progress", p), {
|
|
31
32
|
filters: { topic, status: statusFilter, limit: effectiveLimit },
|
|
32
33
|
}), args.format ?? "text", args.fields, o, e);
|
|
33
34
|
}
|
|
34
35
|
if (entries.length === 0)
|
|
35
36
|
return 0;
|
|
36
37
|
for (const entry of entries) {
|
|
37
|
-
o(formatEntry(entry, ["number", "timestamp", "type", "phase"
|
|
38
|
+
o(formatEntry(entry, ["number", "timestamp", "type", "phase"]) + "\n");
|
|
38
39
|
for (const key of ["what", "verified", "next"]) {
|
|
39
40
|
const value = entry[key];
|
|
40
41
|
if (value)
|
|
@@ -70,19 +71,19 @@ function planSourceContract(source, summary) {
|
|
|
70
71
|
const complete = Boolean(source.exists) && !legacyEntries;
|
|
71
72
|
const missingState = [];
|
|
72
73
|
if (!source.exists)
|
|
73
|
-
missingState.push("
|
|
74
|
+
missingState.push("plan artifact");
|
|
74
75
|
if (legacyEntries)
|
|
75
|
-
missingState.push("current
|
|
76
|
+
missingState.push("current plan task artifact shape");
|
|
76
77
|
const summaryFields = Object.keys(summary).sort();
|
|
77
78
|
const entryFields = ["number", "name", "depends_on", "status", "acceptance", "evidence", "blocked_reason"];
|
|
78
79
|
return {
|
|
79
|
-
artifact: "
|
|
80
|
-
canonical_artifact_label: "
|
|
80
|
+
artifact: "plan",
|
|
81
|
+
canonical_artifact_label: "plan",
|
|
81
82
|
persisted_artifact_path: source.path,
|
|
82
83
|
complete_for_plan_artifact: complete,
|
|
83
84
|
complete_for_normal_startup_evaluation: complete,
|
|
84
85
|
raw_artifact_reads_required: false,
|
|
85
|
-
raw_artifact_read_policy: "Use `agentera plan --format json` entries, summary, source, and source_contract before raw
|
|
86
|
+
raw_artifact_read_policy: "Use `agentera state plan --format json` entries, summary, source, and source_contract before raw plan access. " +
|
|
86
87
|
"When complete_for_plan_artifact is true, skip defensive `.agentera/plan.yaml` reads during normal read-only " +
|
|
87
88
|
"plan startup/evaluation; raw plan artifact access is reserved for writes, archival, validation, corruption " +
|
|
88
89
|
"diagnostics, or unavailable/incomplete CLI state.",
|
|
@@ -502,7 +503,6 @@ export function queryExperiments(args, schemas, io) {
|
|
|
502
503
|
return 0;
|
|
503
504
|
}
|
|
504
505
|
const TODO_SEVERITY_ORDER_KEYS = ["critical", "degraded", "warning", "normal", "info", "annoying"];
|
|
505
|
-
const TODO_ITEM_RE = /^- \[([^\]]+)\]\s+(.*)/;
|
|
506
506
|
const TODO_SEV_GLYPHS = {
|
|
507
507
|
critical: "\u21f6",
|
|
508
508
|
degraded: "\u21c9",
|
|
@@ -574,22 +574,33 @@ export function queryTodo(args, schemas, io, openOnly = false) {
|
|
|
574
574
|
}
|
|
575
575
|
if (currentSection === null)
|
|
576
576
|
continue;
|
|
577
|
-
const
|
|
578
|
-
if (!
|
|
577
|
+
const parsed = parseTodoMarkdownListItem(sline);
|
|
578
|
+
if (!parsed)
|
|
579
579
|
continue;
|
|
580
580
|
if (marker && !currentSection.includes(marker))
|
|
581
581
|
continue;
|
|
582
|
-
const
|
|
583
|
-
if (
|
|
582
|
+
const itemStatus = parsed.status;
|
|
583
|
+
if (openOnly && isResolvedTodoMarkdownStatus(itemStatus))
|
|
584
584
|
continue;
|
|
585
|
+
if (status) {
|
|
586
|
+
const want = status.toLowerCase();
|
|
587
|
+
const have = itemStatus.toLowerCase();
|
|
588
|
+
if (want === "open" || want === "todo") {
|
|
589
|
+
if (isResolvedTodoMarkdownStatus(have))
|
|
590
|
+
continue;
|
|
591
|
+
}
|
|
592
|
+
else if (have !== want) {
|
|
593
|
+
continue;
|
|
594
|
+
}
|
|
595
|
+
}
|
|
585
596
|
markdownEntries.push({
|
|
586
597
|
severity: normalizeSeverity(currentSection),
|
|
587
|
-
status:
|
|
588
|
-
description:
|
|
598
|
+
status: itemStatus,
|
|
599
|
+
description: parsed.description,
|
|
589
600
|
section: currentSection,
|
|
590
601
|
});
|
|
591
602
|
if (format === "text")
|
|
592
|
-
o(`[${currentSection}] ${
|
|
603
|
+
o(`[${currentSection}] ${parsed.description}\n`);
|
|
593
604
|
}
|
|
594
605
|
if (format !== "text") {
|
|
595
606
|
return emitStateStructured("todo", structuredState("todo", markdownEntries, sourceMetadata("todo", todoPath), {
|
|
@@ -804,8 +815,8 @@ export function decisionSourceContract(source, entries, filters) {
|
|
|
804
815
|
if (entriesRequiringSatisfactionReview)
|
|
805
816
|
caveats.push("One or more returned decisions require satisfaction review; satisfaction is never inferred from downstream references.");
|
|
806
817
|
return {
|
|
807
|
-
artifact: "
|
|
808
|
-
canonical_artifact_label: "
|
|
818
|
+
artifact: "decisions",
|
|
819
|
+
canonical_artifact_label: "decisions",
|
|
809
820
|
path: source.path,
|
|
810
821
|
complete_for_returned_decisions: completeForReturned,
|
|
811
822
|
complete_for_decision_context: completeForReturned,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,18 +3,25 @@ import { readdirSync as fsReaddirSync, readFileSync as fsReadFileSync, statSync
|
|
|
3
3
|
import { resolvePath } from "../../core/paths.js";
|
|
4
4
|
import { resolveSourceRoot } from "../../core/sourceRoot.js";
|
|
5
5
|
import { validateAgentString, validatePathValue } from "../argvalidate.js";
|
|
6
|
-
import { HookCliAdapter } from "../../hooks/validateArtifact.js";
|
|
6
|
+
import { HookCliAdapter } from "../../hooks/validateArtifact/index.js";
|
|
7
7
|
import { validateCapability, validateContractSelf, validateProtocolSelf } from "../../validate/capability.js";
|
|
8
8
|
import { loadYamlMapping } from "../../core/yaml.js";
|
|
9
9
|
import { parseToml as parseTomlValidate } from "../../core/toml.js";
|
|
10
10
|
import { validateGraph } from "../../validate/crossCapability.js";
|
|
11
11
|
import { lifecycleMain } from "../../validate/lifecycleAdapters.js";
|
|
12
12
|
import { validate as validateAppHome } from "../../validate/appHomeContract.js";
|
|
13
|
+
import { selfAuditMain } from "../../validate/selfAudit.js";
|
|
14
|
+
import { vocabularyAuthorityMain } from "../../validate/vocabularyAuthority.js";
|
|
15
|
+
import { releaseMetadataMain } from "../../release/releaseMetadata.js";
|
|
16
|
+
import { VALIDATE_ARTIFACT_PROTOCOL_IDS, normalizeArtifactProtocolId, } from "../../registries/artifactProtocolIds.js";
|
|
13
17
|
import { emitStructured } from "../structured.js";
|
|
14
18
|
const VALIDATE_DELEGATED_SCRIPTS = {
|
|
15
19
|
"cross-capability": "validate_cross_capability.py",
|
|
16
20
|
"lifecycle-adapters": "validate_lifecycle_adapters.py",
|
|
17
21
|
"app-home-contract": "validate_app_home_contract.py",
|
|
22
|
+
vocabularyAuthority: "validate_vocabulary_authority.py",
|
|
23
|
+
selfAudit: "self_audit.py",
|
|
24
|
+
"release-metadata": "validate_release_metadata.py",
|
|
18
25
|
};
|
|
19
26
|
function pySplitlines(s) {
|
|
20
27
|
if (!s)
|
|
@@ -47,6 +54,21 @@ function runAppHomeContract() {
|
|
|
47
54
|
}
|
|
48
55
|
return { stdout: "OK: app-home contract terminology is release-ready\n", stderr: "", returncode: 0 };
|
|
49
56
|
}
|
|
57
|
+
function runVocabularyAuthority() {
|
|
58
|
+
const lines = [];
|
|
59
|
+
const rc = vocabularyAuthorityMain({ out: (line) => lines.push(line) });
|
|
60
|
+
return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
|
|
61
|
+
}
|
|
62
|
+
function runSelfAudit() {
|
|
63
|
+
const lines = [];
|
|
64
|
+
const rc = selfAuditMain({ out: (line) => lines.push(line) });
|
|
65
|
+
return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
|
|
66
|
+
}
|
|
67
|
+
function runReleaseMetadata() {
|
|
68
|
+
const lines = [];
|
|
69
|
+
const rc = releaseMetadataMain({ out: (line) => lines.push(line) });
|
|
70
|
+
return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
|
|
71
|
+
}
|
|
50
72
|
function repoRoot() {
|
|
51
73
|
// appHomeContract.validate resolves its own default root; pass the source root.
|
|
52
74
|
return process.cwd();
|
|
@@ -55,6 +77,9 @@ const DELEGATED_RUNNERS = {
|
|
|
55
77
|
"cross-capability": runCrossCapability,
|
|
56
78
|
"lifecycle-adapters": runLifecycleAdapters,
|
|
57
79
|
"app-home-contract": runAppHomeContract,
|
|
80
|
+
vocabularyAuthority: runVocabularyAuthority,
|
|
81
|
+
selfAudit: runSelfAudit,
|
|
82
|
+
"release-metadata": runReleaseMetadata,
|
|
58
83
|
};
|
|
59
84
|
function validationProcessPayload(targetFamily, target, p, result) {
|
|
60
85
|
const lines = pySplitlines(result.stderr).map((l) => l.trim());
|
|
@@ -85,7 +110,7 @@ export function cmdValidate(family, args, io) {
|
|
|
85
110
|
const err = io.err ?? ((t) => process.stderr.write(t));
|
|
86
111
|
if (!(family in DELEGATED_RUNNERS)) {
|
|
87
112
|
throw new Error("unsupported validate target family; valid families: capability, artifact, descriptors, " +
|
|
88
|
-
"cross-capability, lifecycle-adapters, app-home-contract, capability-contract.");
|
|
113
|
+
"cross-capability, lifecycle-adapters, app-home-contract, vocabularyAuthority, selfAudit, release-metadata, capability-contract.");
|
|
89
114
|
}
|
|
90
115
|
const result = DELEGATED_RUNNERS[family]();
|
|
91
116
|
if ((args.format ?? "text") === "json") {
|
|
@@ -332,7 +357,8 @@ function descriptorValidationPayload() {
|
|
|
332
357
|
checks.push(check);
|
|
333
358
|
continue;
|
|
334
359
|
}
|
|
335
|
-
const expectedRef = `
|
|
360
|
+
const expectedRef = `agentera prime --context ${name} --format json`;
|
|
361
|
+
const legacyRef = `capabilities/${name}/instructions.md`;
|
|
336
362
|
if (parsed.name !== name) {
|
|
337
363
|
check = { ...check, status: "fail", message: "name field does not match capability" };
|
|
338
364
|
violations.push(`codex ${name}: name field must be ${name}`);
|
|
@@ -345,6 +371,10 @@ function descriptorValidationPayload() {
|
|
|
345
371
|
check = { ...check, status: "fail", message: "developer_instructions must reference capability instructions" };
|
|
346
372
|
violations.push(`codex ${name}: developer_instructions must reference ${expectedRef}`);
|
|
347
373
|
}
|
|
374
|
+
else if (typeof parsed.developer_instructions === "string" && parsed.developer_instructions.includes(legacyRef)) {
|
|
375
|
+
check = { ...check, status: "fail", message: "developer_instructions must not reference the retired on-disk instructions.md" };
|
|
376
|
+
violations.push(`codex ${name}: developer_instructions must not reference ${legacyRef} (use the prime --context command)`);
|
|
377
|
+
}
|
|
348
378
|
else if (!pySplitlinesText(text).slice(0, 5).includes("# agentera_managed: true")) {
|
|
349
379
|
check = { ...check, status: "fail", message: "managed marker is required" };
|
|
350
380
|
violations.push(`codex ${name}: managed marker is required`);
|
|
@@ -397,7 +427,8 @@ function descriptorValidationPayload() {
|
|
|
397
427
|
catch {
|
|
398
428
|
frontmatter = {};
|
|
399
429
|
}
|
|
400
|
-
const expectedRefO = `
|
|
430
|
+
const expectedRefO = `agentera prime --context ${name} --format json`;
|
|
431
|
+
const legacyRefO = `capabilities/${name}/instructions.md`;
|
|
401
432
|
const expectedPermission = (capPermissions[name] ?? {});
|
|
402
433
|
const actualPermission = frontmatter.permission;
|
|
403
434
|
if ("name" in frontmatter) {
|
|
@@ -433,6 +464,10 @@ function descriptorValidationPayload() {
|
|
|
433
464
|
ocheck = { ...ocheck, status: "fail", message: "descriptor must reference capability instructions" };
|
|
434
465
|
violations.push(`opencode ${name}: descriptor must reference ${expectedRefO}`);
|
|
435
466
|
}
|
|
467
|
+
else if (otext.includes(legacyRefO)) {
|
|
468
|
+
ocheck = { ...ocheck, status: "fail", message: "descriptor must not reference the retired on-disk instructions.md" };
|
|
469
|
+
violations.push(`opencode ${name}: descriptor must not reference ${legacyRefO} (use the prime --context command)`);
|
|
470
|
+
}
|
|
436
471
|
else if (otext.includes("Dispatch only through the runtime-native") || otext.includes(`\`@${name}\``)) {
|
|
437
472
|
ocheck = { ...ocheck, status: "fail", message: "descriptor must not self-dispatch from a subagent" };
|
|
438
473
|
violations.push(`opencode ${name}: descriptor must execute directly without self-dispatch`);
|
|
@@ -467,24 +502,13 @@ export function cmdValidateDescriptors(args, io) {
|
|
|
467
502
|
return payload.status === "pass" ? 0 : 1;
|
|
468
503
|
}
|
|
469
504
|
// ── artifact family ─────────────────────────────────────────────────
|
|
470
|
-
const VALIDATE_ARTIFACT_LABELS = [
|
|
471
|
-
"CHANGELOG.md",
|
|
472
|
-
"DECISIONS.md",
|
|
473
|
-
"DESIGN.md",
|
|
474
|
-
"DOCS.md",
|
|
475
|
-
"HEALTH.md",
|
|
476
|
-
"PLAN.md",
|
|
477
|
-
"PROGRESS.md",
|
|
478
|
-
"TODO.md",
|
|
479
|
-
"VISION.md",
|
|
480
|
-
];
|
|
481
505
|
function validateArtifactLabel(artifact) {
|
|
482
506
|
validateAgentString(artifact, "artifact");
|
|
483
|
-
if (
|
|
484
|
-
const valid =
|
|
485
|
-
throw new Error(`unsupported artifact ${pyRepr(artifact)}; valid
|
|
486
|
-
"Syntax: agentera validate artifact --artifact <
|
|
487
|
-
"Example: agentera validate artifact --artifact
|
|
507
|
+
if (normalizeArtifactProtocolId(artifact) === null) {
|
|
508
|
+
const valid = VALIDATE_ARTIFACT_PROTOCOL_IDS.join(", ");
|
|
509
|
+
throw new Error(`unsupported artifact ${pyRepr(artifact)}; valid artifact_id values: ${valid}. ` +
|
|
510
|
+
"Syntax: agentera check validate artifact --artifact <ARTIFACT_ID> [--file <PATH>] [--format text|json]. " +
|
|
511
|
+
"Example: agentera check validate artifact --artifact plan --file .agentera/plan.yaml --format json");
|
|
488
512
|
}
|
|
489
513
|
}
|
|
490
514
|
export function cmdValidateArtifact(args, io) {
|