@cassiomc1/forgeloop 1.13.0 → 2.0.0-rc.2
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/AGENT_COMPATIBILITY.md +8 -0
- package/CONTRIBUTING.md +11 -7
- package/DOCS_INDEX.md +37 -4
- package/ENG/c-development-eng.md +2 -2
- package/ENG/cpp-development-eng.md +2 -2
- package/ENG/dotnet-aspnetcore-development-eng.md +7 -1
- package/ENG/flutter-development-eng.md +4 -2
- package/ENG/go-development-eng.md +2 -2
- package/ENG/java-development-eng.md +3 -3
- package/ENG/nodejs-backend-development-eng.md +10 -6
- package/ENG/php-development-eng.md +3 -3
- package/ENG/python-development-eng.md +205 -0
- package/ENG/rust-development-eng.md +42 -1
- package/ENG/sec-code-eng.md +7 -7
- package/ENG/sql-development-eng.md +4 -4
- package/ENG/swift-development-eng.md +5 -4
- package/ENG/test-code-eng.md +1 -1
- package/ENG/typescript-development-eng.md +4 -4
- package/EXECUTION_STATE.md +12 -0
- package/GUIDE_ROUTER.md +6 -0
- package/LICENSE +133 -21
- package/LOOP_ENGINEERING.md +28 -2
- package/LOOP_SYSTEM_DESIGN.md +10 -10
- package/ORCHESTRATOR_INTEGRATION.md +9 -5
- package/PROTOCOL_INTEGRATION.md +55 -2
- package/README.md +63 -59
- package/TERMINOLOGY.md +2 -0
- package/THIRD_PARTY_NOTICES.md +3 -4
- package/THREAT_MODEL.md +140 -1
- package/completions/_forgeloop +29 -3
- package/completions/forgeloop.bash +55 -3
- package/completions/forgeloop.fish +183 -1
- package/docs/ADVISORY_CONTEXT.md +25 -0
- package/docs/AGENT_BROWSER_ADAPTER.md +81 -0
- package/docs/AGENT_BROWSER_VERIFICATION.md +6 -0
- package/docs/AGENT_PROTOCOL_SUMMARY.md +74 -39
- package/docs/AGENT_SKILL.md +66 -0
- package/docs/ARTIFACT_REFERENCE.md +171 -35
- package/docs/AUDIT_UX.md +46 -0
- package/docs/BROWSER_VERIFICATION.md +136 -0
- package/docs/CLI_REFERENCE.md +512 -8
- package/docs/CODE_ATTESTATION.md +2 -2
- package/docs/DOCUMENTATION_GUIDE.md +34 -11
- package/docs/GETTING_STARTED.md +3 -3
- package/docs/JEV_BENCHMARKS.md +31 -0
- package/docs/MODEL_ROUTING.md +37 -0
- package/docs/OPENSRC_ADAPTER.md +241 -0
- package/docs/PACKAGE_CONTENTS.md +46 -18
- package/docs/PROVIDERS.md +126 -0
- package/docs/PROVIDER_ARCHITECTURE.md +199 -0
- package/docs/RECIPES.md +9 -0
- package/docs/RELEASE_CHECKLIST.md +116 -12
- package/docs/SECURITY_REVIEW.md +71 -0
- package/docs/SELF_HOSTED_TESTS.md +121 -0
- package/docs/SEMANTIC_DECISION_PLANE.md +71 -0
- package/docs/TEST_INTELLIGENCE.md +29 -0
- package/docs/TEST_PRUNING.md +14 -0
- package/docs/TROUBLESHOOTING.md +198 -1
- package/docs/UNIVERSAL_INTEGRATION.md +31 -0
- package/docs/assets/diagrams/forgeloop-code-attestation-flow.html +2 -2
- package/docs/assets/diagrams/forgeloop-code-attestation-flow.receipt.json +5 -5
- package/docs/assets/diagrams/forgeloop-code-attestation-flow.svg +1 -1
- package/docs/assets/diagrams/forgeloop-engineering-flow.html +39 -26
- package/docs/assets/diagrams/forgeloop-engineering-flow.receipt.json +6 -6
- package/docs/assets/diagrams/forgeloop-engineering-flow.svg +26 -26
- package/docs/assets/diagrams/forgeloop-verification-trust-flow.html +2 -1
- package/docs/assets/diagrams/forgeloop-verification-trust-flow.receipt.json +5 -5
- package/docs/assets/diagrams/forgeloop-verification-trust-flow.svg +1 -1
- package/docs/diagrams/README.md +13 -9
- package/docs/diagrams/forgeloop-code-attestation-flow.workflow.json +1 -1
- package/docs/diagrams/forgeloop-engineering-flow.workflow.json +24 -19
- package/docs/diagrams/forgeloop-verification-trust-flow.workflow.json +1 -0
- package/docs/diagrams/reviews/forgeloop-code-attestation-flow.review.json +4 -4
- package/docs/diagrams/reviews/forgeloop-engineering-flow.review.json +4 -4
- package/docs/diagrams/reviews/forgeloop-verification-trust-flow.review.json +4 -4
- package/docs/documentation-manifest.json +774 -16
- package/docs/protocol-requirements.json +24 -0
- package/package.json +43 -11
- package/schemas/config.schema.json +14 -0
- package/schemas/context-plan.schema.json +18 -0
- package/schemas/semantic-decision.schema.json +46 -0
- package/schemas/task-bundle.schema.json +7 -2
- package/schemas/test-utility.schema.json +44 -0
- package/scripts/CI_VALIDATORS.md +6 -6
- package/scripts/benchmark-jev.mjs +5 -0
- package/scripts/benchmark-test-intelligence.mjs +4 -0
- package/scripts/generate-agent-protocol-summary.mjs +6 -3
- package/scripts/generate-forgeloop-skill.mjs +133 -0
- package/scripts/jev-smoke.mjs +19 -0
- package/scripts/run-mcp-clean-tests.mjs +30 -0
- package/skills/forgeloop/README.md +9 -0
- package/skills/forgeloop/SKILL.md +77 -0
- package/skills/forgeloop/references/lifecycle.md +9 -0
- package/skills/forgeloop/references/recovery.md +7 -0
- package/skills/forgeloop/references/verification.md +7 -0
- package/src/adapters/agent-browser/assertions.js +47 -0
- package/src/adapters/agent-browser/commands.js +54 -0
- package/src/adapters/agent-browser/index.js +3 -0
- package/src/adapters/agent-browser/locator.js +40 -0
- package/src/adapters/agent-browser/process.js +215 -0
- package/src/adapters/agent-browser/provider.js +316 -0
- package/src/adapters/emulated-services/constants.js +24 -0
- package/src/adapters/emulated-services/index.js +7 -0
- package/src/adapters/emulated-services/process.js +162 -0
- package/src/adapters/emulated-services/provider.js +289 -0
- package/src/adapters/opensrc/normalize.js +90 -0
- package/src/adapters/opensrc/process.js +248 -0
- package/src/adapters/opensrc/provider.js +338 -0
- package/src/adapters/opensrc/search.js +264 -0
- package/src/adapters/temporary-paths.js +18 -0
- package/src/adapters/typesafe/client.js +28 -0
- package/src/adapters/typesafe/engine.js +63 -0
- package/src/adapters/typesafe/normalize.js +41 -0
- package/src/cli.js +218 -174
- package/src/commands/action-show.js +5 -2
- package/src/commands/advance.js +5 -1
- package/src/commands/baseline.js +13 -11
- package/src/commands/checkpoint-revalidate.js +192 -0
- package/src/commands/complete.js +19 -3
- package/src/commands/context-plan.js +38 -0
- package/src/commands/contract-create.js +266 -0
- package/src/commands/contract-revise.js +236 -0
- package/src/commands/decision-show.js +14 -0
- package/src/commands/decision-status.js +22 -0
- package/src/commands/discover.js +41 -0
- package/src/commands/doctor.js +51 -13
- package/src/commands/gate-record.js +194 -0
- package/src/commands/gate-revalidate.js +135 -0
- package/src/commands/handoff-list.js +6 -1
- package/src/commands/handoff-show.js +6 -1
- package/src/commands/migrate-protocol.js +2 -2
- package/src/commands/model-route.js +40 -0
- package/src/commands/next.js +7 -1
- package/src/commands/policy-diff.js +25 -4
- package/src/commands/progress.js +17 -11
- package/src/commands/record-diagnosis.js +3 -0
- package/src/commands/route.js +146 -18
- package/src/commands/semantic-plan.js +41 -0
- package/src/commands/status.js +6 -1
- package/src/commands/storage-backup.js +15 -0
- package/src/commands/storage-migrate.js +5 -0
- package/src/commands/storage-migration-resume.js +5 -0
- package/src/commands/storage-migration-status.js +44 -0
- package/src/commands/storage-restore-resume.js +7 -0
- package/src/commands/storage-restore.js +8 -0
- package/src/commands/task-abandon.js +224 -0
- package/src/commands/task-list.js +8 -43
- package/src/commands/task-migrate-contract-bootstrap-repair.js +288 -0
- package/src/commands/task-migrate.js +3 -3
- package/src/commands/task-recover.js +10 -2
- package/src/commands/task-repair-contract-bootstrap.js +263 -0
- package/src/commands/task-scope.js +18 -2
- package/src/commands/task-show.js +16 -2
- package/src/commands/test-inventory.js +5 -0
- package/src/commands/test-prune-plan.js +5 -0
- package/src/commands/test-prune-probe.js +5 -0
- package/src/commands/test-utility.js +5 -0
- package/src/commands/validate-protocol.js +39 -15
- package/src/commands/validate-receipt.js +8 -1
- package/src/config/guides.json +4 -0
- package/src/core/action-ledger-projection.js +10 -3
- package/src/core/actions.js +38 -75
- package/src/core/activation.js +11 -3
- package/src/core/approvals.js +17 -51
- package/src/core/artifact-registry.js +83 -2
- package/src/core/artifacts.js +81 -27
- package/src/core/attachment-paths.js +45 -0
- package/src/core/attestation-coverage.js +6 -1
- package/src/core/attestation-verifier.js +21 -2
- package/src/core/attestation.js +17 -6
- package/src/core/audit-ux.js +514 -0
- package/src/core/audit.js +6 -1
- package/src/core/browser-verification/constants.js +149 -0
- package/src/core/browser-verification/normalize.js +254 -0
- package/src/core/browser-verification/provider.js +519 -0
- package/src/core/browser-verification/service.js +115 -0
- package/src/core/bundles.js +160 -66
- package/src/core/checkpoint-revalidation.js +321 -0
- package/src/core/cli-command-definitions.js +350 -7
- package/src/core/code-manifest.js +9 -3
- package/src/core/command-executors.js +274 -108
- package/src/core/command-input.js +136 -44
- package/src/core/completion-artifacts.js +85 -34
- package/src/core/completion-ownership.js +19 -8
- package/src/core/completion-recovery-rebind.js +11 -1
- package/src/core/completion.js +64 -15
- package/src/core/config.js +3 -0
- package/src/core/conformance.js +2 -1
- package/src/core/context-compiler/budget.js +9 -0
- package/src/core/context-compiler/candidates.js +39 -0
- package/src/core/context-compiler/compiler.js +63 -0
- package/src/core/context-compiler/fingerprint.js +11 -0
- package/src/core/context-compiler/policy.js +13 -0
- package/src/core/context-compiler/result.js +23 -0
- package/src/core/continuity-lint.js +13 -2
- package/src/core/continuity-reconciliation.js +16 -3
- package/src/core/continuity.js +16 -8
- package/src/core/contract-bootstrap-recovery.js +656 -0
- package/src/core/contract-revision.js +209 -0
- package/src/core/decision/artifact.js +70 -0
- package/src/core/decision/benchmarks.js +103 -0
- package/src/core/decision/cache.js +27 -0
- package/src/core/decision/constants.js +58 -0
- package/src/core/decision/cutover.js +34 -0
- package/src/core/decision/engine.js +22 -0
- package/src/core/decision/errors.js +68 -0
- package/src/core/decision/events.js +104 -0
- package/src/core/decision/freshness.js +19 -0
- package/src/core/decision/normalizers/index.js +115 -0
- package/src/core/decision/policy.js +18 -0
- package/src/core/decision/projection.js +16 -0
- package/src/core/decision/question-registry.js +201 -0
- package/src/core/decision/request.js +26 -0
- package/src/core/decision/resolver.js +138 -0
- package/src/core/decision/result.js +58 -0
- package/src/core/decision/service.js +181 -0
- package/src/core/decision/state-builder.js +65 -0
- package/src/core/decision/task-bindings.js +35 -0
- package/src/core/decision/test-provider.js +32 -0
- package/src/core/decision/thresholds.js +15 -0
- package/src/core/diagnosis-model.js +11 -0
- package/src/core/diagnosis.js +10 -1
- package/src/core/diagnostic-projection.js +29 -12
- package/src/core/diagnostic-record.js +28 -3
- package/src/core/efficiency.js +6 -1
- package/src/core/error-codes.js +278 -0
- package/src/core/events.js +535 -147
- package/src/core/evidence-readiness.js +9 -0
- package/src/core/execution-prerequisites.js +36 -13
- package/src/core/execution-profile.js +63 -38
- package/src/core/execution.js +26 -40
- package/src/core/filesystem.js +11 -0
- package/src/core/gate-artifact.js +105 -19
- package/src/core/gate-provenance.js +125 -0
- package/src/core/handoff.js +26 -14
- package/src/core/history.js +39 -35
- package/src/core/hypothesis-projection.js +32 -0
- package/src/core/information-gain-projection.js +104 -100
- package/src/core/inspect.js +12 -3
- package/src/core/integration-invocation-policy.js +37 -4
- package/src/core/integration-resources.js +119 -87
- package/src/core/ledger-event-collection.js +189 -0
- package/src/core/ledger-relations.js +23 -0
- package/src/core/model-router/constants.js +10 -0
- package/src/core/model-router/policy.js +103 -0
- package/src/core/model-router/router.js +37 -0
- package/src/core/native-storage.js +12 -0
- package/src/core/next-action-continuity.js +31 -9
- package/src/core/next-action-model.js +58 -0
- package/src/core/next-action-phases.js +131 -43
- package/src/core/next-action-refresh.js +43 -9
- package/src/core/next-action-review-phase.js +9 -4
- package/src/core/next-action-verification-phase.js +2 -1
- package/src/core/next-action.js +56 -9
- package/src/core/phase.js +266 -103
- package/src/core/policy-engine.js +12 -13
- package/src/core/preflight-consistency.js +89 -62
- package/src/core/preflight-loaders.js +48 -9
- package/src/core/preflight-model.js +6 -1
- package/src/core/preflight.js +29 -12
- package/src/core/progress.js +21 -10
- package/src/core/protocol-info.js +68 -0
- package/src/core/protocol-migration.js +7 -6
- package/src/core/protocol.js +20 -0
- package/src/core/reconcile-closure.js +281 -67
- package/src/core/recovery-history.js +67 -47
- package/src/core/reflection.js +72 -77
- package/src/core/responsibility.js +25 -13
- package/src/core/resumability.js +154 -44
- package/src/core/route-artifact.js +28 -4
- package/src/core/router.js +67 -1
- package/src/core/runtime-context.js +123 -61
- package/src/core/schema-validation.js +11 -3
- package/src/core/security-review/constants.js +64 -0
- package/src/core/security-review/normalize.js +245 -0
- package/src/core/security-review/provider.js +204 -0
- package/src/core/security-review/service.js +134 -0
- package/src/core/semantic-planning/constants.js +19 -0
- package/src/core/semantic-planning/projection.js +94 -0
- package/src/core/semantic-planning/service.js +15 -0
- package/src/core/settlement.js +12 -1
- package/src/core/signing/bundle-file.js +53 -0
- package/src/core/signing/bundle-reference.js +15 -0
- package/src/core/signing/sigstore.js +60 -33
- package/src/core/signing/statement-file.js +27 -0
- package/src/core/sources.js +37 -0
- package/src/core/storage-runtime-registry.js +41 -0
- package/src/core/structural-quality/artifacts.js +20 -14
- package/src/core/structural-quality/service.js +81 -56
- package/src/core/target-layout.js +1 -1
- package/src/core/task-claim-state.js +249 -15
- package/src/core/task-command.js +21 -1
- package/src/core/task-conflict-inspection.js +133 -102
- package/src/core/task-descriptor.js +29 -22
- package/src/core/task-discovery.js +288 -90
- package/src/core/task-lock.js +66 -306
- package/src/core/task-migration-validation.js +5 -5
- package/src/core/task-migration.js +17 -287
- package/src/core/task-paths.js +13 -0
- package/src/core/task-recovery.js +1 -0
- package/src/core/task-snapshot.js +51 -8
- package/src/core/task-storage-migration.js +18 -0
- package/src/core/templates.js +23 -8
- package/src/core/test-intelligence/benchmarks.js +68 -0
- package/src/core/test-intelligence/inventory.js +73 -0
- package/src/core/test-intelligence/prune.js +94 -0
- package/src/core/test-intelligence/semantic-state.js +15 -0
- package/src/core/test-intelligence/service.js +40 -0
- package/src/core/test-intelligence/utility.js +50 -0
- package/src/core/trace.js +164 -105
- package/src/core/trajectory-evaluation.js +15 -3
- package/src/core/trajectory-metrics.js +47 -32
- package/src/core/transaction.js +16 -287
- package/src/core/verification-scope.js +20 -12
- package/src/core/work-state.js +100 -59
- package/src/integration.d.ts +492 -0
- package/src/integration.js +54 -0
- package/src/providers/README.md +47 -0
- package/src/providers/capabilities.js +46 -0
- package/src/providers/errors.js +15 -0
- package/src/providers/index.js +29 -0
- package/src/providers/json-snapshot.js +105 -0
- package/src/providers/registry.js +152 -0
- package/src/repository-index/binary-manager.js +7 -5
- package/src/storage/artifact-bytes.js +22 -0
- package/src/storage/attachment-binding.js +11 -0
- package/src/storage/attachment-files.js +82 -0
- package/src/storage/attachment-references.js +36 -0
- package/src/storage/backup.js +53 -0
- package/src/storage/capabilities.js +31 -0
- package/src/storage/connection-owner.js +119 -0
- package/src/storage/connection.js +376 -0
- package/src/storage/existing-project-scope.js +45 -0
- package/src/storage/export-destination.js +44 -0
- package/src/storage/exporter.js +284 -0
- package/src/storage/file-durability.js +46 -0
- package/src/storage/importer.js +461 -0
- package/src/storage/index.js +74 -0
- package/src/storage/leases.js +63 -0
- package/src/storage/ledger-event-snapshot.js +150 -0
- package/src/storage/ledger-relations.js +220 -0
- package/src/storage/legacy-maintenance-boundary.js +18 -0
- package/src/storage/legacy-signature.js +115 -0
- package/src/storage/maintenance-handoff.js +129 -0
- package/src/storage/maintenance-owner.js +42 -0
- package/src/storage/maintenance.js +310 -0
- package/src/storage/metadata-json.js +35 -0
- package/src/storage/migration-activate.js +59 -0
- package/src/storage/migration-archive.js +57 -0
- package/src/storage/migration-attachment-root.js +61 -0
- package/src/storage/migration-candidate.js +398 -0
- package/src/storage/migration-publication.js +143 -0
- package/src/storage/migration-rollback-admission.js +54 -0
- package/src/storage/migration-rollback-preparation.js +132 -0
- package/src/storage/migration-rollback-publication.js +183 -0
- package/src/storage/migration-rollback-release.js +66 -0
- package/src/storage/migration-rollback-source-stage.js +103 -0
- package/src/storage/migration-rollback.js +43 -0
- package/src/storage/migration-source-partition.js +56 -0
- package/src/storage/migration-source.js +255 -0
- package/src/storage/migration-terminal.js +39 -0
- package/src/storage/migration-validation.js +75 -0
- package/src/storage/migration.js +43 -0
- package/src/storage/operational-attachments.js +49 -0
- package/src/storage/operational-context.js +50 -0
- package/src/storage/project-backup.js +98 -0
- package/src/storage/project-bootstrap.js +24 -0
- package/src/storage/project-boundary.js +79 -0
- package/src/storage/project-read-snapshot.js +18 -0
- package/src/storage/project-replacement.js +137 -0
- package/src/storage/project-restore.js +203 -0
- package/src/storage/record-definitions.js +45 -0
- package/src/storage/repository.js +507 -0
- package/src/storage/restore-journal.js +62 -0
- package/src/storage/restore-layout.js +30 -0
- package/src/storage/restore-preparation.js +84 -0
- package/src/storage/restore-replacement-archive.js +162 -0
- package/src/storage/restore-replacement-owner.js +31 -0
- package/src/storage/restore-replacement-preparation.js +128 -0
- package/src/storage/restore-replacement.js +142 -0
- package/src/storage/restore-terminal.js +32 -0
- package/src/storage/runtime.js +31 -0
- package/src/storage/schema.js +214 -0
- package/src/storage/singleton-import.js +84 -0
- package/src/storage/snapshot-continuity.js +16 -0
- package/src/storage/snapshot.js +36 -0
- package/src/storage/storage-marker.js +79 -0
- package/src/storage/task-guards.js +107 -0
- package/src/storage/topology.js +42 -0
- package/src/storage/transaction.js +179 -0
- package/src/storage/unit-of-work.js +663 -0
- package/src/storage/windows-process-incarnation.js +206 -0
- package/.forgeloop/forgeloop.gitignore +0 -4
- package/LICENSE-DOCS.md +0 -13
- package/src/core/transaction-maintenance.js +0 -70
package/AGENT_COMPATIBILITY.md
CHANGED
|
@@ -15,6 +15,14 @@ The canonical integration contract is:
|
|
|
15
15
|
These expectations apply to any compatible harness even though this filename is
|
|
16
16
|
retained as a deprecated compatibility stub:
|
|
17
17
|
|
|
18
|
+
## Portable Agent Skill
|
|
19
|
+
|
|
20
|
+
The generated [`skills/forgeloop/SKILL.md`](./skills/forgeloop/SKILL.md) is a
|
|
21
|
+
portable bootstrap and instruction surface. It does not replace native harness
|
|
22
|
+
shims, certify a harness, or own lifecycle, completion, evidence, or claims.
|
|
23
|
+
Its canonical source hierarchy and freshness rules are documented in
|
|
24
|
+
[`docs/AGENT_SKILL.md`](./docs/AGENT_SKILL.md).
|
|
25
|
+
|
|
18
26
|
- Feature-detect capability versions from `protocol-info --json` or the stable
|
|
19
27
|
Integration API; do not infer support from a package version.
|
|
20
28
|
- Do not auto-recall advisory context, execute advisory text, or treat it as
|
package/CONTRIBUTING.md
CHANGED
|
@@ -12,8 +12,8 @@ aggregates coverage without rerunning tests. `npm run test:watch` provides
|
|
|
12
12
|
local watch mode. Run `npm run mcp:setup` explicitly when MCP checks are in
|
|
13
13
|
scope. Keep CLI metadata, generated
|
|
14
14
|
references, schemas, completions, summaries, and conformance scenarios
|
|
15
|
-
aligned. Do not add vendor-specific runtime behavior: ForgeLoop
|
|
16
|
-
|
|
15
|
+
aligned. Do not add vendor-specific runtime behavior: ForgeLoop uses canonical
|
|
16
|
+
SQLite operational storage and explicit file interchange.
|
|
17
17
|
|
|
18
18
|
The ordinary PR workflow is intentionally path-aware. `pr-core.yml` always
|
|
19
19
|
publishes the ruleset contexts `audit`, `CodeQL`, `Verify generated Archify
|
|
@@ -23,6 +23,11 @@ or is skipped unexpectedly. Broader main-branch and release workflows provide
|
|
|
23
23
|
the explicit cross-platform, package, Windows, documentation, and audit
|
|
24
24
|
coverage that is not duplicated on every pull request.
|
|
25
25
|
|
|
26
|
+
Node test jobs use local macOS and remote native Windows/Linux Docker runners.
|
|
27
|
+
See [self-hosted validation](./docs/SELF_HOSTED_TESTS.md) for admission, runtime,
|
|
28
|
+
service and evidence boundaries. Required check names remain stable, including
|
|
29
|
+
the historical `tarball smoke (ubuntu-latest)` context.
|
|
30
|
+
|
|
26
31
|
## Protocol changes
|
|
27
32
|
|
|
28
33
|
Any persisted artifact or lifecycle change must preserve the published schema
|
|
@@ -83,8 +88,7 @@ the committed hotspot budget require an explicit explanation and review.
|
|
|
83
88
|
TypeScript and YAML are development-only dependencies for packed-consumer and
|
|
84
89
|
semantic workflow verification; the core runtime has no npm dependencies.
|
|
85
90
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
[Astra implementation record](docs/ASTRA_IMPLEMENTATION.md) for boundaries.
|
|
91
|
+
Filesystem transaction-payload maintenance is retired with the SQLite
|
|
92
|
+
migration. Preserve legacy evidence for explicit migration and diagnosis. See
|
|
93
|
+
the [Astra implementation record](docs/ASTRA_IMPLEMENTATION.md) for historical
|
|
94
|
+
boundaries.
|
package/DOCS_INDEX.md
CHANGED
|
@@ -18,6 +18,7 @@ integration and guide context. Use this map before editing documentation.
|
|
|
18
18
|
| Getting started tutorial | [`docs/GETTING_STARTED.md`](./docs/GETTING_STARTED.md) | First-time walkthrough from init to completion |
|
|
19
19
|
| Cross-harness continuity | [`docs/CROSS_HARNESS_CONTINUITY.md`](./docs/CROSS_HARNESS_CONTINUITY.md) | Operational resume guidance, immutable handoffs, and multi-tool resumption |
|
|
20
20
|
| Agent bootstrap summary | [`docs/AGENT_PROTOCOL_SUMMARY.md`](./docs/AGENT_PROTOCOL_SUMMARY.md) | Generated concise navigation aid for protocol invariants and commands |
|
|
21
|
+
| Agent Skill integration | [`docs/AGENT_SKILL.md`](./docs/AGENT_SKILL.md) | Generated portable, non-authoritative agent guidance and freshness contract |
|
|
21
22
|
| CLI command reference | [`docs/CLI_REFERENCE.md`](./docs/CLI_REFERENCE.md) | Full syntax, options, and JSON examples for all commands |
|
|
22
23
|
| Repository Index and Search | [`docs/REPOSITORY_INDEX.md`](./docs/REPOSITORY_INDEX.md) | Mandatory managed engine, indexed search contract, lifecycle, resource, security, and benchmark behavior |
|
|
23
24
|
| Persistent CLI search transport | [`docs/PERSISTENT_SEARCH_TRANSPORT.md`](./docs/PERSISTENT_SEARCH_TRANSPORT.md) | CLI-only local IPC, host lifecycle, ownership, recovery, bounds, privacy, and direct API/MCP boundary |
|
|
@@ -34,14 +35,33 @@ integration and guide context. Use this map before editing documentation.
|
|
|
34
35
|
| Revision and signing providers | [`docs/REVISION_PROVIDERS.md`](./docs/REVISION_PROVIDERS.md) and [`docs/SIGNING_PROVIDERS.md`](./docs/SIGNING_PROVIDERS.md) | Provider-neutral extension contracts |
|
|
35
36
|
| Platform adapters | [`docs/PLATFORM_ADAPTERS.md`](./docs/PLATFORM_ADAPTERS.md) | Generic CI boundary and platform mapping guidance |
|
|
36
37
|
| Universal integration API | [`docs/UNIVERSAL_INTEGRATION.md`](./docs/UNIVERSAL_INTEGRATION.md) | Programmatic integration subpath, envelope semantics, and consumer map |
|
|
38
|
+
| Audit UX read model | [`docs/AUDIT_UX.md`](./docs/AUDIT_UX.md) | Bounded read-only task timeline, health, verification, ownership, and completion projection |
|
|
37
39
|
| Advisory context providers | [`docs/ADVISORY_CONTEXT.md`](./docs/ADVISORY_CONTEXT.md) | Optional external host context, non-evidence trust boundary, allowlist normalization, and safety rules |
|
|
40
|
+
| Provider extension architecture | [`docs/PROVIDER_ARCHITECTURE.md`](./docs/PROVIDER_ARCHITECTURE.md) | Provider-neutral architecture, invocation lifecycle, strict snapshots, cancellation, trust, and authority boundaries |
|
|
41
|
+
| Provider extension reference | [`docs/PROVIDERS.md`](./docs/PROVIDERS.md) | Capability discovery, provider kinds, common contract, limits, errors, and maintainer checklist |
|
|
42
|
+
| Security Review provider | [`docs/SECURITY_REVIEW.md`](./docs/SECURITY_REVIEW.md) | Bounded host-injected observation API, strict findings, timeout/cancellation, and non-authority boundary |
|
|
38
43
|
| Ripwire advisory adapter | [`docs/RIPWIRE_ADAPTER.md`](./docs/RIPWIRE_ADAPTER.md) | Ripwire-specific registration, process contract, JSON mapping, limits, and verification |
|
|
44
|
+
| OpenSrc advisory adapter | [`docs/OPENSRC_ADAPTER.md`](./docs/OPENSRC_ADAPTER.md) | OpenSrc-specific registration, version qualification, cache containment, deterministic search, limits, and verification |
|
|
45
|
+
| Agent Browser verification adapter | [`docs/AGENT_BROWSER_ADAPTER.md`](./docs/AGENT_BROWSER_ADAPTER.md) | Optional host-owned browser executable, bounded observation mapping, isolation, exact origins, screenshots, and trust boundary |
|
|
39
46
|
| Local-first MCP adapter | [`docs/MCP.md`](./docs/MCP.md) | stdio default, optional strict loopback HTTP; server modes/capabilities and canonical resources |
|
|
40
47
|
| Adaptive execution-profile benchmarks | [`docs/EXECUTION_PROFILE_BENCHMARKS.md`](./docs/EXECUTION_PROFILE_BENCHMARKS.md) | Measured provider/host runs, robust statistics, paired/distribution deltas, tail status, outliers, and profile-aware host context |
|
|
41
48
|
| Knowledge integration gap analysis | [`docs/KNOWLEDGE_INTEGRATION_GAP_ANALYSIS.md`](./docs/KNOWLEDGE_INTEGRATION_GAP_ANALYSIS.md) | Repository-only research audit of candidate coverage, proven gaps, canonical homes, context cost, and intentional skip/defer decisions |
|
|
42
49
|
| Knowledge sources and provenance | [`docs/KNOWLEDGE_SOURCES.md`](./docs/KNOWLEDGE_SOURCES.md) | Snapshot, licensing observations, source roles, accepted/skipped concepts, and reuse boundaries |
|
|
50
|
+
| Semantic decision plane | [`docs/SEMANTIC_DECISION_PLANE.md`](./docs/SEMANTIC_DECISION_PLANE.md) | Mandatory bounded Jev/TypeSafe System One decisions, typed non-authoritative results, freshness, and fail-closed boundaries |
|
|
51
|
+
| Model routing | [`docs/MODEL_ROUTING.md`](./docs/MODEL_ROUTING.md) | Model-route tiers, host-model selection, deterministic safety floors, and ForgeLoop authority boundaries |
|
|
52
|
+
| Jev benchmarks | [`docs/JEV_BENCHMARKS.md`](./docs/JEV_BENCHMARKS.md) | Offline fixtures, live interoperability smoke, live benchmark calls, usage, latency, and non-generalized claims |
|
|
53
|
+
| Test intelligence | [`docs/TEST_INTELLIGENCE.md`](./docs/TEST_INTELLIGENCE.md) | Bounded test utility analysis, protected-test rules, semantic classification, and non-evidence status |
|
|
54
|
+
| Test pruning | [`docs/TEST_PRUNING.md`](./docs/TEST_PRUNING.md) | Keep/probe/block planning, isolated probes, and deterministic proof before any removal or rewrite |
|
|
55
|
+
| Repository Index | [`docs/REPOSITORY_INDEX.md`](./docs/REPOSITORY_INDEX.md) | Managed engine, index lifecycle, CLI/API/MCP behavior, privacy, recovery, and search boundaries |
|
|
56
|
+
| Persistent search transport | [`docs/PERSISTENT_SEARCH_TRANSPORT.md`](./docs/PERSISTENT_SEARCH_TRANSPORT.md) | CLI-only local IPC, host ownership, recovery, limits, and direct API/MCP differences |
|
|
57
|
+
| Provider architecture | [`docs/PROVIDER_ARCHITECTURE.md`](./docs/PROVIDER_ARCHITECTURE.md) and [`docs/PROVIDERS.md`](./docs/PROVIDERS.md) | Provider-neutral invocation, strict normalization, cancellation, trust, and non-authority boundaries |
|
|
58
|
+
| Structural quality | [`docs/STRUCTURAL_QUALITY.md`](./docs/STRUCTURAL_QUALITY.md) | Optional provider-neutral baseline, delta policy, and evidence boundaries |
|
|
59
|
+
| Security review | [`docs/SECURITY_REVIEW.md`](./docs/SECURITY_REVIEW.md) | Host-injected bounded security observations and non-authoritative findings |
|
|
60
|
+
| Agent Browser verification | [`docs/AGENT_BROWSER_ADAPTER.md`](./docs/AGENT_BROWSER_ADAPTER.md) and [`docs/AGENT_BROWSER_VERIFICATION.md`](./docs/AGENT_BROWSER_VERIFICATION.md) | Optional browser adapter, exact-origin observations, screenshots, and non-evidence limits |
|
|
61
|
+
| Documentation history | [`docs/history/README.md`](./docs/history/README.md) | Archived audits, release evidence, and completed validation records with current-owner links |
|
|
43
62
|
| Documentation guide | [`docs/DOCUMENTATION_GUIDE.md`](./docs/DOCUMENTATION_GUIDE.md) | Rules and checklist for modifying documentation |
|
|
44
63
|
| Current release checklist | [`docs/RELEASE_CHECKLIST.md`](./docs/RELEASE_CHECKLIST.md) | Package, protocol, attestation, integration, and publication gates |
|
|
64
|
+
| Self-hosted Node tests | [`docs/SELF_HOSTED_TESTS.md`](./docs/SELF_HOSTED_TESTS.md) | Local macOS, remote Windows/Linux Docker runners, event admission and verification boundaries |
|
|
45
65
|
| Core npm package contents | [`docs/PACKAGE_CONTENTS.md`](./docs/PACKAGE_CONTENTS.md) | Published consumer surface, intentional inclusions, exclusions, and clean-room verification |
|
|
46
66
|
| ForgeLoop 1.6.1 release checklist (historical) | [`docs/RELEASE_CHECKLIST_1_6_1.md`](./docs/RELEASE_CHECKLIST_1_6_1.md) | Verification adapter boundary, isolation invariants, and publication gates |
|
|
47
67
|
| ForgeLoop 1.5/MCP release checklist (historical) | [`docs/RELEASE_CHECKLIST_1_5_MCP.md`](./docs/RELEASE_CHECKLIST_1_5_MCP.md) | Integration API v1, MCP package, and publication gates |
|
|
@@ -54,7 +74,7 @@ integration and guide context. Use this map before editing documentation.
|
|
|
54
74
|
| Architecture and safety boundaries | [`LOOP_SYSTEM_DESIGN.md`](./LOOP_SYSTEM_DESIGN.md) and [`THREAT_MODEL.md`](./THREAT_MODEL.md) | Design rationale and residual risk |
|
|
55
75
|
| Artifact and phase schemas | [`schemas/`](./schemas/) and [`CONTRACT_COVERAGE.md`](./CONTRACT_COVERAGE.md) | Versioned machine-readable contract |
|
|
56
76
|
| CLI/package behavior | [`src/`](./src/) and [`tests/`](./tests/) | Executable implementation and regression evidence |
|
|
57
|
-
| Guide content | [`ENG/`](./ENG/) | Context-specific, English-only operational guides, including Flutter, .NET, Node.js, Rust, C, C++, Java, SQL, Go, TypeScript, PHP, and
|
|
77
|
+
| Guide content | [`ENG/`](./ENG/) | Context-specific, English-only operational guides, including Flutter, .NET, Node.js, Rust, C, C++, Java, SQL, Go, TypeScript, PHP, Swift, and Python specialist guides; Python is documentation-only and is not yet selected automatically by the router; ASP.NET Core and ABP remain .NET overlays |
|
|
58
78
|
| Diagram governance | [`docs/diagrams/manifest.json`](./docs/diagrams/manifest.json) | Authoritative taxonomy, renderer mapping, canonical purposes, artifact ownership, and references |
|
|
59
79
|
| Diagram maintainer entrypoint | [`docs/diagrams/README.md`](./docs/diagrams/README.md) | Typed Archify source, animated HTML explorer, animated SVG fallback, review, and regeneration workflow |
|
|
60
80
|
| Engineering flow diagram | [`docs/assets/diagrams/forgeloop-engineering-flow.html`](./docs/assets/diagrams/forgeloop-engineering-flow.html) | Conceptual lifecycle from request through validator-backed completion |
|
|
@@ -75,8 +95,13 @@ is historical evidence and is not part of the published core package.
|
|
|
75
95
|
| --- | --- |
|
|
76
96
|
| **First-time user or developer** | [`docs/GETTING_STARTED.md`](./docs/GETTING_STARTED.md) |
|
|
77
97
|
| **AI coding agent / harness** | [`docs/AGENT_PROTOCOL_SUMMARY.md`](./docs/AGENT_PROTOCOL_SUMMARY.md) → [`AGENTS.md`](./AGENTS.md) → [`LOOP_ENGINEERING.md`](./LOOP_ENGINEERING.md) |
|
|
98
|
+
| **Understanding mandatory semantic decisions** | [`docs/SEMANTIC_DECISION_PLANE.md`](./docs/SEMANTIC_DECISION_PLANE.md) |
|
|
99
|
+
| **Selecting a model route** | [`docs/MODEL_ROUTING.md`](./docs/MODEL_ROUTING.md) |
|
|
100
|
+
| **Evaluating test utility or pruning** | [`docs/TEST_INTELLIGENCE.md`](./docs/TEST_INTELLIGENCE.md) → [`docs/TEST_PRUNING.md`](./docs/TEST_PRUNING.md) |
|
|
101
|
+
| **Reviewing historical repository evidence** | [`docs/history/README.md`](./docs/history/README.md) |
|
|
78
102
|
| **Technical auditor / Evaluator** | [`poc/README.md`](./poc/README.md) → [`poc/reports/poc-20260826-real-execution-technical-audit-v2.md`](./poc/reports/poc-20260826-real-execution-technical-audit-v2.md) |
|
|
79
103
|
| **Harness integrator** | [`PROTOCOL_INTEGRATION.md`](./PROTOCOL_INTEGRATION.md) |
|
|
104
|
+
| **Audit or operator UI integrator** | [`docs/AUDIT_UX.md`](./docs/AUDIT_UX.md) |
|
|
80
105
|
| **External runtime / orchestrator integrator** | [`ORCHESTRATOR_INTEGRATION.md`](./ORCHESTRATOR_INTEGRATION.md) |
|
|
81
106
|
| **Resuming another tool / session** | [`docs/CROSS_HARNESS_CONTINUITY.md`](./docs/CROSS_HARNESS_CONTINUITY.md) |
|
|
82
107
|
| **Looking up CLI commands** | [`docs/CLI_REFERENCE.md`](./docs/CLI_REFERENCE.md) |
|
|
@@ -86,6 +111,8 @@ is historical evidence and is not part of the published core package.
|
|
|
86
111
|
| **Looking for quick recipes** | [`docs/RECIPES.md`](./docs/RECIPES.md) |
|
|
87
112
|
| **Configuring structural quality feedback** | [`docs/STRUCTURAL_QUALITY.md`](./docs/STRUCTURAL_QUALITY.md) |
|
|
88
113
|
| **Configuring Ripwire advisory context** | [`docs/RIPWIRE_ADAPTER.md`](./docs/RIPWIRE_ADAPTER.md) |
|
|
114
|
+
| **Configuring OpenSrc advisory context** | [`docs/OPENSRC_ADAPTER.md`](./docs/OPENSRC_ADAPTER.md) |
|
|
115
|
+
| **Understanding provider extensions** | [`docs/PROVIDER_ARCHITECTURE.md`](./docs/PROVIDER_ARCHITECTURE.md) → [`docs/PROVIDERS.md`](./docs/PROVIDERS.md) |
|
|
89
116
|
| **Understanding verification trust** | [`docs/REVISION_PROVIDERS.md`](./docs/REVISION_PROVIDERS.md#differential-verification-scope) |
|
|
90
117
|
| **Understanding attestation trust** | [`docs/CODE_ATTESTATION.md`](./docs/CODE_ATTESTATION.md#trust-levels) |
|
|
91
118
|
| **Maintaining generated diagrams** | [`docs/diagrams/README.md`](./docs/diagrams/README.md) |
|
|
@@ -112,12 +139,17 @@ is historical evidence and is not part of the published core package.
|
|
|
112
139
|
- **Measure structural quality without replacing tests**: [`docs/STRUCTURAL_QUALITY.md`](./docs/STRUCTURAL_QUALITY.md)
|
|
113
140
|
- **Read the normative protocol specification**: [`LOOP_ENGINEERING.md`](./LOOP_ENGINEERING.md)
|
|
114
141
|
- **Integrate a new AI environment**: [`PROTOCOL_INTEGRATION.md`](./PROTOCOL_INTEGRATION.md)
|
|
142
|
+
- **Build a task audit view**: [`docs/AUDIT_UX.md`](./docs/AUDIT_UX.md)
|
|
115
143
|
- **Map ForgeLoop state into an external runtime/orchestrator**: [`ORCHESTRATOR_INTEGRATION.md`](./ORCHESTRATOR_INTEGRATION.md)
|
|
116
144
|
- **Edit documentation safely**: [`docs/DOCUMENTATION_GUIDE.md`](./docs/DOCUMENTATION_GUIDE.md)
|
|
117
145
|
- **Audit the npm package boundary**: [`docs/PACKAGE_CONTENTS.md`](./docs/PACKAGE_CONTENTS.md)
|
|
118
146
|
- **Verify source-content attestations**: [`docs/CODE_ATTESTATION.md`](./docs/CODE_ATTESTATION.md)
|
|
119
147
|
- **Understand narrow verification and checker binding**: [`docs/REVISION_PROVIDERS.md`](./docs/REVISION_PROVIDERS.md#differential-verification-scope)
|
|
120
148
|
- **Inspect the governed diagrams**: [`docs/diagrams/README.md`](./docs/diagrams/README.md)
|
|
149
|
+
- **Understand mandatory Jev semantics**: [`docs/SEMANTIC_DECISION_PLANE.md`](./docs/SEMANTIC_DECISION_PLANE.md)
|
|
150
|
+
- **Understand model routing**: [`docs/MODEL_ROUTING.md`](./docs/MODEL_ROUTING.md)
|
|
151
|
+
- **Review test utility and pruning safety**: [`docs/TEST_INTELLIGENCE.md`](./docs/TEST_INTELLIGENCE.md) and [`docs/TEST_PRUNING.md`](./docs/TEST_PRUNING.md)
|
|
152
|
+
- **Review historical validation evidence**: [`docs/history/README.md`](./docs/history/README.md)
|
|
121
153
|
|
|
122
154
|
`README.md` is intentionally a catalog and quickstart. Do not copy the full
|
|
123
155
|
process into adapters or README sections; link to the canonical source.
|
|
@@ -125,7 +157,7 @@ process into adapters or README sections; link to the canonical source.
|
|
|
125
157
|
## Lifecycle reading order
|
|
126
158
|
|
|
127
159
|
1. Read [`README.md`](./README.md) for scope and quickstart.
|
|
128
|
-
2. Read [`LOOP_ENGINEERING.md`](./LOOP_ENGINEERING.md) for the process gates.
|
|
160
|
+
2. Read [`LOOP_ENGINEERING.md`](./LOOP_ENGINEERING.md) for the process gates and [`docs/SEMANTIC_DECISION_PLANE.md`](./docs/SEMANTIC_DECISION_PLANE.md) for mandatory bounded semantic checkpoints.
|
|
129
161
|
3. Read [`PROTOCOL_INTEGRATION.md`](./PROTOCOL_INTEGRATION.md) for the active
|
|
130
162
|
runtime or harness boundary.
|
|
131
163
|
4. Inspect [`PROJECT_PROFILE.md`](./PROJECT_PROFILE.md) and confirm facts from
|
|
@@ -152,8 +184,9 @@ loop, and secret-scanning contracts that have not been migrated to Node. Their
|
|
|
152
184
|
scope, exact commands, and migration boundary are recorded in
|
|
153
185
|
[`scripts/CI_VALIDATORS.md`](./scripts/CI_VALIDATORS.md).
|
|
154
186
|
|
|
155
|
-
The package uses the approved exact
|
|
156
|
-
|
|
187
|
+
The package uses the approved exact `@typesafe-ai/sdk` dependency for the pinned
|
|
188
|
+
semantic decision plane and `smol-toml` for bounded Cargo manifest parsing.
|
|
189
|
+
Development dependencies remain limited to c8, ESLint,
|
|
157
190
|
TypeScript, and YAML and are checked by `npm run dependency:policy`. GitHub
|
|
158
191
|
Actions use `npm ci`, pinned action SHAs, CodeQL, dependency review, and
|
|
159
192
|
generated-release notes; npm publication still uses trusted OIDC publishing
|
package/ENG/c-development-eng.md
CHANGED
|
@@ -3,7 +3,7 @@ name: c-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production C libraries, services, embedded components, and native build systems."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: c
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -31,7 +31,7 @@ Repository architecture, supported platforms, compiler configuration, ABI,
|
|
|
31
31
|
warning policy, and minimum supported toolchain win over generic advice. Use
|
|
32
32
|
the matching repository standard and toolchain first, then the ISO/WG14
|
|
33
33
|
material and version-matched platform documentation. C23 (ISO/IEC 9899:2024)
|
|
34
|
-
is the current published
|
|
34
|
+
is the current published C language standard; C2y remains
|
|
35
35
|
development work and is not an automatic migration target.
|
|
36
36
|
|
|
37
37
|
## Project and standard discovery
|
|
@@ -3,7 +3,7 @@ name: cpp-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production C++ libraries, services, tools, and native build systems."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: cpp
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -32,7 +32,7 @@ Repository architecture, standard mode, ABI, supported compilers, target
|
|
|
32
32
|
platforms, and public compatibility policy win over generic best practice.
|
|
33
33
|
Use WG21, the actual compiler documentation, and version-matched platform
|
|
34
34
|
documentation after repository evidence. C++23 (ISO/IEC 14882:2024) is the
|
|
35
|
-
published reference
|
|
35
|
+
published reference as of 2026-10-13. C++26 compiler support is
|
|
36
36
|
not permission to migrate a C++17/20/23 repository.
|
|
37
37
|
|
|
38
38
|
## Project and standard discovery
|
|
@@ -3,7 +3,7 @@ name: dotnet-aspnetcore-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guide for architecture, implementation, testing, performance, security, data access, hosting, observability, and release of production .NET and ASP.NET Core applications."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: dotnet
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -75,6 +75,10 @@ Use structural project evidence for routing, but use source and configuration in
|
|
|
75
75
|
|
|
76
76
|
## 4. Version-sensitive decisions
|
|
77
77
|
|
|
78
|
+
As of 2026-10-13, .NET 10 is the current LTS line; its latest patch is 10.0.12.
|
|
79
|
+
.NET 9 is in maintenance and reaches end of support on 2026-11-10. These are
|
|
80
|
+
dated references only: use the repository's pinned SDK and target framework.
|
|
81
|
+
|
|
78
82
|
Treat these as version-sensitive:
|
|
79
83
|
|
|
80
84
|
- `global.json`, SDK selection, target frameworks, trimming, Native AOT, single-file publish, and roll-forward;
|
|
@@ -388,6 +392,8 @@ The router must not activate this guide from prose, source snippets, `Dockerfile
|
|
|
388
392
|
|
|
389
393
|
Official references for version-sensitive work:
|
|
390
394
|
|
|
395
|
+
- [.NET support policy](https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core)
|
|
396
|
+
|
|
391
397
|
- [ASP.NET Core best practices](https://learn.microsoft.com/aspnet/core/fundamentals/best-practices)
|
|
392
398
|
- [.NET SDK overview](https://learn.microsoft.com/dotnet/core/sdk)
|
|
393
399
|
- [`global.json` overview](https://learn.microsoft.com/dotnet/core/tools/global-json)
|
|
@@ -3,14 +3,14 @@ name: flutter-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guide for architecture, implementation, testing, performance, accessibility, platform integration, and release of production Flutter applications."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: flutter
|
|
8
8
|
---
|
|
9
9
|
# Flutter Development Engineering Guide
|
|
10
10
|
|
|
11
11
|
> Production-oriented Flutter specialist guidance for ForgeLoop-enabled AI coding agents and developers.
|
|
12
12
|
>
|
|
13
|
-
> This guide is an operational synthesis of the official Flutter documentation at `https://docs.flutter.dev/`, reviewed
|
|
13
|
+
> This guide is an operational synthesis of the official Flutter documentation at `https://docs.flutter.dev/`, reviewed on 2026-10-13. The current stable release line is Flutter 3.47. Version-sensitive behavior MUST be verified against the project's pinned SDK and the current official documentation before changing code.
|
|
14
14
|
>
|
|
15
15
|
> This guide complements, rather than replaces, ForgeLoop's general engineering guides. For code structure and maintainability use `clean-code-eng.md`; for verification strategy use `test-code-eng.md`; for threat modeling and trust boundaries use `sec-code-eng.md`; for measured optimization use `perf-code-eng.md`; for visual design use `design-code-eng.md`; and for inclusive interfaces use `accessibility-eng.md`.
|
|
16
16
|
>
|
|
@@ -1991,6 +1991,8 @@ Do not add identifiers to ForgeLoop protocol schemas without updating validators
|
|
|
1991
1991
|
|
|
1992
1992
|
## 56. Official documentation map
|
|
1993
1993
|
|
|
1994
|
+
- [Flutter SDK archive](https://docs.flutter.dev/install/archive)
|
|
1995
|
+
|
|
1994
1996
|
Primary official Flutter documentation areas used to synthesize this guide:
|
|
1995
1997
|
|
|
1996
1998
|
- Flutter documentation home
|
|
@@ -3,7 +3,7 @@ name: go-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production Go services, workers, CLIs, modules, and concurrent systems."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: go
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -31,7 +31,7 @@ Repository module boundaries, supported Go versions, build tags, target
|
|
|
31
31
|
matrix, compatibility policy, and release process win over generic advice.
|
|
32
32
|
Use the matching Go specification, standard-library documentation, module and
|
|
33
33
|
workspace documentation, and official Go security guidance after repository
|
|
34
|
-
evidence.
|
|
34
|
+
evidence. Go 1.27.2 is the current stable reference as of 2026-10-13;
|
|
35
35
|
that is not permission to upgrade a repository.
|
|
36
36
|
|
|
37
37
|
Keep the `go` language minimum directive distinct from `toolchain`, the build
|
|
@@ -3,7 +3,7 @@ name: java-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production Java services, libraries, workers, and JVM build systems."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: java
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -40,8 +40,8 @@ boundaries remain isolated.
|
|
|
40
40
|
Repository architecture, toolchain/build configuration, source/target policy,
|
|
41
41
|
ABI, and supported runtime win over generic advice. Then use the matching Java
|
|
42
42
|
Language Specification/API, official Maven/Gradle/Bazel documentation, and
|
|
43
|
-
version-matched framework documentation.
|
|
44
|
-
|
|
43
|
+
version-matched framework documentation. JDK 27 is the current Java SE release
|
|
44
|
+
and JDK 25 is the latest Oracle LTS as of 2026-10-13;
|
|
45
45
|
neither is an automatic migration target.
|
|
46
46
|
|
|
47
47
|
Keep separate the JDK running the build tool, Java source level, `--release`,
|
|
@@ -3,7 +3,7 @@ name: nodejs-backend-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for architecture, implementation, testing, security, performance, observability, and release of production Node.js backend services and workers."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: nodejs
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -148,6 +148,10 @@ descendants; unrelated frontend packages remain isolated.
|
|
|
148
148
|
|
|
149
149
|
## 3. Runtime and module-system decisions
|
|
150
150
|
|
|
151
|
+
As of 2026-10-13, Node.js 26 is Current and Node.js 24 is the latest LTS
|
|
152
|
+
release. Production deployments should use an Active or Maintenance LTS line;
|
|
153
|
+
check the official release schedule again when selecting a runtime.
|
|
154
|
+
|
|
151
155
|
Record the actual runtime range before changing APIs:
|
|
152
156
|
|
|
153
157
|
- inspect `engines.node`, version files, CI matrices, container images, and
|
|
@@ -589,17 +593,17 @@ Useful primary references include:
|
|
|
589
593
|
- [Node.js documentation](https://nodejs.org/docs/latest/api/)
|
|
590
594
|
- [Node.js LLM documentation index](https://nodejs.org/docs/latest-v26.x/llms.txt)
|
|
591
595
|
- [Node.js release policy](https://nodejs.org/en/about/previous-releases)
|
|
592
|
-
- [Node.js HTTP](https://nodejs.org/api/http.html), [HTTP/2](https://nodejs.org/api/http2.html),
|
|
593
|
-
[net](https://nodejs.org/api/net.html), and [TLS](https://nodejs.org/api/tls.html)
|
|
594
|
-
- [Node.js package exports](https://nodejs.org/api/packages.html)
|
|
596
|
+
- [Node.js HTTP](https://nodejs.org/docs/latest-v24.x/api/http.html), [HTTP/2](https://nodejs.org/docs/latest-v24.x/api/http2.html),
|
|
597
|
+
[net](https://nodejs.org/docs/latest-v24.x/api/net.html), and [TLS](https://nodejs.org/docs/latest-v24.x/api/tls.html)
|
|
598
|
+
- [Node.js package exports](https://nodejs.org/docs/latest-v24.x/api/packages.html)
|
|
595
599
|
- [Express](https://expressjs.com/), [Fastify](https://fastify.dev/docs/latest/),
|
|
596
600
|
[NestJS](https://docs.nestjs.com/), [Koa](https://koajs.com/), and
|
|
597
601
|
[hapi](https://hapi.dev/)
|
|
598
602
|
- [TypeScript handbook](https://www.typescriptlang.org/docs/handbook/intro.html)
|
|
599
|
-
- [OWASP API Security Top 10](https://owasp.org/
|
|
603
|
+
- [OWASP API Security Top 10](https://owasp.org/projects/api-security-project)
|
|
600
604
|
- [OWASP SSRF prevention](https://cheatsheetseries.owasp.org/cheatsheets/Server_Side_Request_Forgery_Prevention_Cheat_Sheet.html)
|
|
601
605
|
- [OWASP Node.js security guidance](https://cheatsheetseries.owasp.org/cheatsheets/Nodejs_Security_Cheat_Sheet.html)
|
|
602
|
-
- [RFC 9110 HTTP semantics](https://
|
|
606
|
+
- [RFC 9110 HTTP semantics](https://datatracker.ietf.org/doc/html/rfc9110)
|
|
603
607
|
|
|
604
608
|
These sources inform implementation decisions; they do not replace the
|
|
605
609
|
repository's pinned runtime, local policy, tests, or ForgeLoop evidence.
|
|
@@ -3,7 +3,7 @@ name: php-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production PHP applications, Composer packages, web services, and command-line workers."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: php
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -32,8 +32,8 @@ package resolution, or project code, and it does not access the network.
|
|
|
32
32
|
Repository PHP/Composer constraints, runtime platform, extensions, deployment
|
|
33
33
|
model, and compatibility policy win over generic advice. Then use the matching
|
|
34
34
|
official PHP manual/migration guide, Composer documentation, and
|
|
35
|
-
version-matched framework documentation.
|
|
36
|
-
|
|
35
|
+
version-matched framework documentation. As of 2026-10-13, PHP 8.5.10 is the
|
|
36
|
+
current patch reference and supported branches are 8.2–8.5; neither changes
|
|
37
37
|
the repository runtime constraint automatically.
|
|
38
38
|
|
|
39
39
|
Keep PHP language version, engine/runtime, extensions, Composer platform
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: python-development-eng
|
|
3
|
+
language: en
|
|
4
|
+
description: "Specialist guidance for production Python applications, libraries, command-line tools, data pipelines, and native extensions."
|
|
5
|
+
version: "2026.09"
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
|
+
guide-id: python
|
|
8
|
+
requires-gates:
|
|
9
|
+
- threat-boundary
|
|
10
|
+
completion-evidence:
|
|
11
|
+
- python-validation
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Python Development Engineering Guide
|
|
15
|
+
|
|
16
|
+
## Mission and activation
|
|
17
|
+
|
|
18
|
+
Use this guide for Python applications, libraries, command-line tools, build
|
|
19
|
+
and automation scripts, data pipelines, and CPython extensions. Confirm the
|
|
20
|
+
actual project from owned `.py` files and its packaging/build metadata, such as
|
|
21
|
+
`pyproject.toml`, `setup.cfg`, `setup.py`, or a declared requirements file.
|
|
22
|
+
Do not infer Python project identity from documentation, editor settings,
|
|
23
|
+
Jupyter output, a Python executable used only by CI, or a transitive package.
|
|
24
|
+
|
|
25
|
+
This guide is based on the official Python 3.15.0 documentation. Python 3.15.0
|
|
26
|
+
was released as a stable release on 2026-10-09. Its release highlights include
|
|
27
|
+
the `sentinel` and `frozendict` built-ins, UTF-8 as the default encoding,
|
|
28
|
+
unpacking in comprehensions, and explicit lazy imports. Treat each feature as
|
|
29
|
+
version-gated: verify its exact semantics and availability in the project's
|
|
30
|
+
target version before using it. The project interpreter and support policy
|
|
31
|
+
always take precedence over the newest release.
|
|
32
|
+
|
|
33
|
+
## Authority and version boundaries
|
|
34
|
+
|
|
35
|
+
Resolve conflicts in this order:
|
|
36
|
+
|
|
37
|
+
1. Platform and safety requirements.
|
|
38
|
+
2. The user's explicit request.
|
|
39
|
+
3. Repository instructions, supported interpreter range, dependency lock,
|
|
40
|
+
packaging metadata, tests, and deployment configuration.
|
|
41
|
+
4. This guide.
|
|
42
|
+
5. The version-matched official Python documentation and PEPs.
|
|
43
|
+
6. Framework, packaging-tool, and community examples.
|
|
44
|
+
|
|
45
|
+
Keep separate the CPython or alternative implementation version, Python
|
|
46
|
+
language compatibility, minimum supported version, build interpreter,
|
|
47
|
+
runtime interpreter, ABI (including free-threaded builds), platform, and
|
|
48
|
+
dependency resolver. `requires-python`, classifiers, tox/nox matrices, CI,
|
|
49
|
+
containers, and deployment manifests may express different constraints;
|
|
50
|
+
reconcile them rather than choosing one by recency. Python 3.15.0 is a
|
|
51
|
+
reference point, not an automatic upgrade target.
|
|
52
|
+
|
|
53
|
+
## Project discovery and packaging
|
|
54
|
+
|
|
55
|
+
Inspect the narrowest complete project boundary:
|
|
56
|
+
|
|
57
|
+
- `pyproject.toml`, including `[build-system]`, `[project]`, tool-specific
|
|
58
|
+
tables, and workspace configuration;
|
|
59
|
+
- `requires-python`, build backend, package discovery, entry points, optional
|
|
60
|
+
dependencies, extras, and dynamic metadata;
|
|
61
|
+
- lockfiles and the exact tool that owns each one (`uv.lock`, Poetry, PDM,
|
|
62
|
+
Pipenv, or another declared workflow);
|
|
63
|
+
- `src/`, package modules, `__init__.py`, namespace-package layout, scripts,
|
|
64
|
+
tests, fixtures, generated code, and vendored files;
|
|
65
|
+
- `tox.ini`, `noxfile.py`, `pytest.ini`, `setup.cfg`, `setup.py`, and
|
|
66
|
+
requirements files when present;
|
|
67
|
+
- CI interpreter matrices, container images, deployment commands, native
|
|
68
|
+
libraries, and platform-specific build steps.
|
|
69
|
+
|
|
70
|
+
Do not execute package build hooks, project imports, setup scripts, arbitrary
|
|
71
|
+
`pyproject.toml` backends, or test collection during static discovery. Do not
|
|
72
|
+
install tools or dependencies merely to answer a routing or documentation
|
|
73
|
+
question. Preserve the repository's package manager and lockfile strategy.
|
|
74
|
+
Avoid adding a second environment manager or migrating packaging metadata as
|
|
75
|
+
incidental cleanup.
|
|
76
|
+
|
|
77
|
+
## Python semantics and API design
|
|
78
|
+
|
|
79
|
+
Prefer explicit, unsurprising behavior over clever metaprogramming. Keep
|
|
80
|
+
mutable defaults out of function signatures; use immutable values or create
|
|
81
|
+
fresh state inside the function. Distinguish identity from equality, shallow
|
|
82
|
+
from deep copying, and iteration from materialization. Make generators,
|
|
83
|
+
context managers, descriptors, decorators, metaclasses, and dynamic imports
|
|
84
|
+
serve a concrete need and document non-obvious lifetime or execution behavior.
|
|
85
|
+
|
|
86
|
+
Use annotations to communicate contracts, not as runtime validation. Preserve
|
|
87
|
+
the project's typing style and supported-version constraints when choosing
|
|
88
|
+
built-in generics, unions, protocols, overloads, `TypedDict`, generics,
|
|
89
|
+
`TypeVar`, `ParamSpec`, or `Self`. Treat `Any`, casts, ignores, and
|
|
90
|
+
`# type: ignore` as explicit escapes; narrow untrusted values with runtime
|
|
91
|
+
checks at boundaries. Keep public annotations and stubs compatible with the
|
|
92
|
+
declared interpreter range and type checker.
|
|
93
|
+
|
|
94
|
+
Prefer cohesive modules and explicit imports. Avoid import-time network,
|
|
95
|
+
filesystem, process, or service side effects. Keep module initialization
|
|
96
|
+
predictable and make circular dependencies visible rather than masking them
|
|
97
|
+
with local imports without a clear reason.
|
|
98
|
+
|
|
99
|
+
## Errors, resources, and concurrency
|
|
100
|
+
|
|
101
|
+
Raise specific exceptions with useful context and preserve causal chains with
|
|
102
|
+
`raise ... from ...` when translating failures. Do not swallow broad
|
|
103
|
+
exceptions, return ambiguous sentinels, or expose secrets and internal paths
|
|
104
|
+
in public errors. Use `finally`, context managers, or structured cleanup for
|
|
105
|
+
files, sockets, locks, temporary directories, subprocesses, and transactions.
|
|
106
|
+
|
|
107
|
+
Use `asyncio` only when the workload and dependencies benefit from concurrent
|
|
108
|
+
I/O. Keep blocking work off the event loop, propagate cancellation, bound
|
|
109
|
+
queues and fan-out, set timeouts, and close tasks and clients during shutdown.
|
|
110
|
+
Choose threads, processes, native extensions, or free-threaded Python from
|
|
111
|
+
measured workload and dependency compatibility. Do not assume that the GIL
|
|
112
|
+
provides application-level synchronization or that releasing it makes shared
|
|
113
|
+
state safe.
|
|
114
|
+
|
|
115
|
+
## Security and trust boundaries
|
|
116
|
+
|
|
117
|
+
Treat request data, files, environment variables, serialized objects, SQL,
|
|
118
|
+
templates, archive members, subprocess arguments, plugin metadata, and network
|
|
119
|
+
responses as untrusted. Validate type, size, encoding, and allowed values
|
|
120
|
+
before use. Prefer parameterized SQL and argument arrays; avoid shell
|
|
121
|
+
interpolation, unsafe YAML loaders, `eval`, `exec`, and untrusted `pickle`
|
|
122
|
+
deserialization. Apply archive path containment and decompression limits.
|
|
123
|
+
|
|
124
|
+
Keep secrets out of source, exceptions, tracebacks exposed to users, test
|
|
125
|
+
fixtures, and logs. Bound file and request sizes, recursion, concurrency,
|
|
126
|
+
memory, CPU-heavy parsing, retries, and subprocess lifetimes. Use maintained
|
|
127
|
+
dependencies with a recorded source and lock; review build backends and
|
|
128
|
+
installation plugins as executable supply-chain code.
|
|
129
|
+
|
|
130
|
+
## Testing and verification
|
|
131
|
+
|
|
132
|
+
Select checks from risk and the project's declared tools:
|
|
133
|
+
|
|
134
|
+
- unit tests for pure behavior and boundary cases;
|
|
135
|
+
- integration tests for filesystem, database, network, subprocess, and
|
|
136
|
+
framework behavior;
|
|
137
|
+
- contract tests for public APIs, serialization, CLI behavior, and supported
|
|
138
|
+
Python versions;
|
|
139
|
+
- concurrency and cancellation tests for async tasks, workers, and shared
|
|
140
|
+
resources;
|
|
141
|
+
- static typing and linting with the repository's configured tools;
|
|
142
|
+
- packaging and installation checks in a clean environment when packaging
|
|
143
|
+
changes.
|
|
144
|
+
|
|
145
|
+
Test malformed, empty, oversized, duplicated, reordered, and unexpected
|
|
146
|
+
inputs; failure cleanup; cancellation; retries; and resource closure where
|
|
147
|
+
applicable. Do not test only private implementation details. Keep tests
|
|
148
|
+
deterministic, isolate external services, and do not claim skipped or
|
|
149
|
+
unavailable platform checks passed. Record the exact interpreter, command,
|
|
150
|
+
environment, and result.
|
|
151
|
+
|
|
152
|
+
## Performance and operations
|
|
153
|
+
|
|
154
|
+
Profile representative workloads before optimizing. Measure the relevant
|
|
155
|
+
latency, throughput, memory, startup, allocation, and queue behavior with the
|
|
156
|
+
same interpreter build, dependency set, input, and environment before and
|
|
157
|
+
after a change. Avoid speculative micro-optimization and unbounded caches.
|
|
158
|
+
|
|
159
|
+
Expose useful structured logs and metrics without logging secrets or
|
|
160
|
+
high-cardinality user data. Make readiness, graceful shutdown, worker
|
|
161
|
+
ownership, retry policy, and idempotency explicit for services and jobs.
|
|
162
|
+
Document interpreter and OS support, native dependencies, environment
|
|
163
|
+
variables, migration steps, and rollback behavior for deployable applications.
|
|
164
|
+
|
|
165
|
+
## Python 3.15 compatibility review
|
|
166
|
+
|
|
167
|
+
When adopting Python 3.15 features, verify the corresponding section of the
|
|
168
|
+
versioned documentation and test the minimum supported interpreter. In
|
|
169
|
+
particular:
|
|
170
|
+
|
|
171
|
+
- explicit lazy imports change when import work and import errors occur;
|
|
172
|
+
- UTF-8 default encoding can expose code that relied on locale-dependent
|
|
173
|
+
defaults;
|
|
174
|
+
- comprehension unpacking and new built-in types may not parse or exist on
|
|
175
|
+
older supported interpreters;
|
|
176
|
+
- experimental JIT or interpreter configuration is not a production
|
|
177
|
+
performance guarantee; benchmark the actual deployment build;
|
|
178
|
+
- C API, ABI, build, deprecation, and removal changes require a separate
|
|
179
|
+
extension and dependency compatibility review.
|
|
180
|
+
|
|
181
|
+
Do not copy preview-only behavior or assume that a 3.15 feature is available
|
|
182
|
+
in every implementation or distribution build.
|
|
183
|
+
|
|
184
|
+
## Definition of done
|
|
185
|
+
|
|
186
|
+
- The project boundary, interpreter range, packaging tool, and target
|
|
187
|
+
platforms are confirmed from repository evidence.
|
|
188
|
+
- The change preserves supported Python versions and public package/API
|
|
189
|
+
behavior, or documents an intentional migration.
|
|
190
|
+
- Trust boundaries, exceptions, cancellation, and resource cleanup are
|
|
191
|
+
handled for the changed path.
|
|
192
|
+
- Focused tests, configured static checks, and relevant package/build checks
|
|
193
|
+
pass; unavailable checks are `NOT_VERIFIED`.
|
|
194
|
+
- Documentation describes the tested behavior and exact Python compatibility
|
|
195
|
+
range.
|
|
196
|
+
|
|
197
|
+
## Official sources
|
|
198
|
+
|
|
199
|
+
- [Python 3.15.0 documentation](https://docs.python.org/release/3.15.0/)
|
|
200
|
+
- [What's New in Python 3.15](https://docs.python.org/3.15/whatsnew/3.15.html)
|
|
201
|
+
- [Python version status](https://devguide.python.org/versions/)
|
|
202
|
+
- [Python Enhancement Proposals](https://peps.python.org/)
|
|
203
|
+
- [Python Packaging User Guide](https://packaging.python.org/)
|
|
204
|
+
- [Python typing documentation](https://docs.python.org/3/library/typing.html)
|
|
205
|
+
- [Python asyncio documentation](https://docs.python.org/3/library/asyncio.html)
|
|
@@ -3,7 +3,7 @@ name: rust-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for architecture, implementation, testing, security, performance, and release of production Rust applications, services, libraries, and workers."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: rust
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -108,6 +108,47 @@ manifest, lockfile, configuration, source, or generated output.
|
|
|
108
108
|
|
|
109
109
|
## 2. Authority, discovery, and version truth
|
|
110
110
|
|
|
111
|
+
Rust 1.99.0 is the latest stable release as of 2026-10-13. This dated reference
|
|
112
|
+
does not change a project's declared MSRV, toolchain, or edition.
|
|
113
|
+
|
|
114
|
+
### Rust 1.99.0 release review
|
|
115
|
+
|
|
116
|
+
The [Rust 1.99.0 release notes](https://releases.rs/docs/1.99.0/) report a
|
|
117
|
+
stable release on 2026-10-01. Apply these changes only when the affected
|
|
118
|
+
project's toolchain and compatibility policy permit them:
|
|
119
|
+
|
|
120
|
+
- **Language and unsafe code:** C-variadic function definitions are stable;
|
|
121
|
+
naked C-variadic functions remain behind the nightly
|
|
122
|
+
`c_variadic_naked_functions` feature. The new
|
|
123
|
+
`raw_borrows_via_references` lint is allow-by-default, so it does not replace
|
|
124
|
+
an explicit lint policy. Review unsafe code that relies on `UnsafeCell`
|
|
125
|
+
access or reference-to-raw-borrow behavior alongside the release's adjusted
|
|
126
|
+
`invalid_reference_casting` lint; do not infer that these changes relax
|
|
127
|
+
aliasing or safety invariants.
|
|
128
|
+
- **Cargo and workspaces:** Cargo adds a `debug` profile that is currently
|
|
129
|
+
identical to `dev` and prepares for a possible later profile transition.
|
|
130
|
+
On edition 2024 or later, a workspace member can override an inherited
|
|
131
|
+
dependency's `default-features`; on earlier editions,
|
|
132
|
+
`default-features = false` remains ignored with a warning. Check the edition
|
|
133
|
+
before relying on the override.
|
|
134
|
+
- **Library APIs and targets:** the release stabilizes APIs including
|
|
135
|
+
`Vec::into_parts`/`Vec::from_parts`, `Box::into_non_null`/`Box::from_non_null`,
|
|
136
|
+
`String::from_utf8_lossy_owned`, `VecDeque::retain_back`, and
|
|
137
|
+
`std::fs::set_times`. `riscv64-unknown-linux-musl` is promoted to Tier 2
|
|
138
|
+
with host tools. Check each API's stabilization version and target support
|
|
139
|
+
against the package MSRV and supported deployment matrix before adoption.
|
|
140
|
+
- **Compatibility checks:** legacy integral modules such as `std::i32` are
|
|
141
|
+
fully deprecated, `no_mangle_generic_items` is a hard error, and the safety
|
|
142
|
+
invariants of `Pin::new_unchecked` have changed slightly. Rust 1.99 also
|
|
143
|
+
disables Cargo incremental compilation by default in CI and expands the
|
|
144
|
+
non-local macro semicolon warning to macros from dependencies. Review these
|
|
145
|
+
changes when diagnosing new warnings, build-time shifts, or compatibility
|
|
146
|
+
failures.
|
|
147
|
+
|
|
148
|
+
These release notes are a version-specific review aid, not a reason to raise
|
|
149
|
+
MSRV or change edition, lint levels, profiles, or targets without an explicit
|
|
150
|
+
project decision and matching CI coverage.
|
|
151
|
+
|
|
111
152
|
Resolve conflicts in this order:
|
|
112
153
|
|
|
113
154
|
1. Platform and safety rules.
|