@cassiomc1/forgeloop 1.14.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/CONTRIBUTING.md +11 -7
- package/DOCS_INDEX.md +2 -1
- 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 +8 -4
- 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/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/GUIDE_ROUTER.md +6 -0
- package/LICENSE +133 -21
- package/LOOP_SYSTEM_DESIGN.md +10 -10
- package/README.md +28 -39
- package/THIRD_PARTY_NOTICES.md +3 -4
- package/completions/_forgeloop +11 -3
- package/completions/forgeloop.bash +19 -3
- package/completions/forgeloop.fish +61 -1
- package/docs/AGENT_PROTOCOL_SUMMARY.md +50 -40
- package/docs/ARTIFACT_REFERENCE.md +50 -37
- package/docs/CLI_REFERENCE.md +147 -3
- package/docs/DOCUMENTATION_GUIDE.md +6 -4
- package/docs/GETTING_STARTED.md +3 -3
- package/docs/PACKAGE_CONTENTS.md +14 -13
- package/docs/RELEASE_CHECKLIST.md +81 -10
- package/docs/SELF_HOSTED_TESTS.md +121 -0
- package/docs/documentation-manifest.json +25 -12
- package/package.json +15 -10
- package/schemas/task-bundle.schema.json +7 -2
- package/scripts/generate-agent-protocol-summary.mjs +2 -2
- package/scripts/run-mcp-clean-tests.mjs +30 -0
- package/src/adapters/agent-browser/provider.js +14 -11
- package/src/adapters/emulated-services/provider.js +11 -4
- package/src/adapters/temporary-paths.js +18 -0
- package/src/cli.js +146 -210
- 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 +24 -8
- package/src/commands/complete.js +19 -3
- package/src/commands/contract-create.js +3 -1
- package/src/commands/doctor.js +36 -13
- package/src/commands/gate-record.js +20 -31
- package/src/commands/gate-revalidate.js +11 -13
- 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 +9 -1
- 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/semantic-plan.js +26 -2
- 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 +1 -1
- package/src/commands/task-list.js +8 -43
- package/src/commands/task-migrate.js +3 -3
- package/src/commands/task-recover.js +10 -2
- package/src/commands/task-scope.js +18 -2
- package/src/commands/task-show.js +16 -2
- package/src/commands/validate-protocol.js +29 -14
- 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 +59 -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.js +6 -1
- package/src/core/bundles.js +160 -66
- package/src/core/checkpoint-revalidation.js +12 -10
- package/src/core/cli-command-definitions.js +109 -7
- package/src/core/code-manifest.js +9 -3
- package/src/core/command-executors.js +182 -126
- package/src/core/command-input.js +21 -1
- package/src/core/completion-artifacts.js +71 -29
- package/src/core/completion-ownership.js +19 -8
- package/src/core/completion-recovery-rebind.js +11 -1
- package/src/core/completion.js +60 -9
- package/src/core/conformance.js +2 -1
- 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 +42 -41
- package/src/core/contract-revision.js +8 -9
- package/src/core/decision/artifact.js +2 -1
- package/src/core/decision/events.js +9 -6
- package/src/core/decision/resolver.js +19 -11
- package/src/core/decision/service.js +63 -38
- package/src/core/decision/task-bindings.js +6 -1
- 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/events.js +316 -97
- package/src/core/execution-prerequisites.js +22 -13
- 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 +6 -5
- 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 +10 -0
- package/src/core/integration-resources.js +41 -34
- package/src/core/ledger-event-collection.js +189 -0
- package/src/core/ledger-relations.js +23 -0
- package/src/core/native-storage.js +12 -0
- package/src/core/next-action-continuity.js +31 -9
- package/src/core/next-action-phases.js +1 -1
- package/src/core/next-action-review-phase.js +2 -2
- package/src/core/next-action-verification-phase.js +2 -1
- package/src/core/next-action.js +21 -2
- package/src/core/phase.js +138 -93
- package/src/core/policy-engine.js +12 -13
- package/src/core/preflight-consistency.js +72 -59
- package/src/core/preflight-loaders.js +19 -12
- 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 +3 -0
- package/src/core/protocol-migration.js +7 -6
- package/src/core/reconcile-closure.js +162 -24
- package/src/core/recovery-history.js +66 -47
- package/src/core/reflection.js +72 -77
- package/src/core/responsibility.js +25 -13
- package/src/core/route-artifact.js +13 -3
- package/src/core/runtime-context.js +5 -0
- package/src/core/schema-validation.js +8 -3
- 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/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 +52 -18
- package/src/core/task-command.js +21 -1
- package/src/core/task-conflict-inspection.js +112 -107
- 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-snapshot.js +51 -8
- package/src/core/task-storage-migration.js +18 -0
- package/src/core/templates.js +20 -8
- package/src/core/test-intelligence/prune.js +5 -1
- package/src/core/trace.js +154 -99
- package/src/core/trajectory-evaluation.js +15 -3
- package/src/core/trajectory-metrics.js +47 -32
- package/src/core/transaction.js +16 -288
- package/src/core/verification-scope.js +20 -12
- package/src/core/work-state.js +100 -59
- 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/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
|
@@ -61,6 +61,7 @@ integration and guide context. Use this map before editing documentation.
|
|
|
61
61
|
| Documentation history | [`docs/history/README.md`](./docs/history/README.md) | Archived audits, release evidence, and completed validation records with current-owner links |
|
|
62
62
|
| Documentation guide | [`docs/DOCUMENTATION_GUIDE.md`](./docs/DOCUMENTATION_GUIDE.md) | Rules and checklist for modifying documentation |
|
|
63
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 |
|
|
64
65
|
| Core npm package contents | [`docs/PACKAGE_CONTENTS.md`](./docs/PACKAGE_CONTENTS.md) | Published consumer surface, intentional inclusions, exclusions, and clean-room verification |
|
|
65
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 |
|
|
66
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 |
|
|
@@ -73,7 +74,7 @@ integration and guide context. Use this map before editing documentation.
|
|
|
73
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 |
|
|
74
75
|
| Artifact and phase schemas | [`schemas/`](./schemas/) and [`CONTRACT_COVERAGE.md`](./CONTRACT_COVERAGE.md) | Versioned machine-readable contract |
|
|
75
76
|
| CLI/package behavior | [`src/`](./src/) and [`tests/`](./tests/) | Executable implementation and regression evidence |
|
|
76
|
-
| 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 |
|
|
77
78
|
| Diagram governance | [`docs/diagrams/manifest.json`](./docs/diagrams/manifest.json) | Authoritative taxonomy, renderer mapping, canonical purposes, artifact ownership, and references |
|
|
78
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 |
|
|
79
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 |
|
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,9 +593,9 @@ 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/)
|
|
@@ -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.
|
|
@@ -3,7 +3,7 @@ name: sql-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist overlay guidance for SQL schemas, queries, migrations, and database-boundary changes."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: sql
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -37,9 +37,9 @@ migration, reads credentials, or introspects a schema.
|
|
|
37
37
|
The repository's database engine, version, migration policy, transaction model,
|
|
38
38
|
compatibility window, and deployment process win over generic SQL advice. Use
|
|
39
39
|
the matching engine's official reference first, then ISO/IEC 9075:2023 for
|
|
40
|
-
portable semantics. The
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
portable semantics. The 2026-10-13 reference check covers PostgreSQL 18.6, MySQL 9.7 Innovation
|
|
41
|
+
and 8.4 LTS, SQL Server 17 T-SQL, Oracle AI Database 26, and SQLite 3.54.0.
|
|
42
|
+
These are reference points, not automatic upgrade targets.
|
|
43
43
|
|
|
44
44
|
Never infer a dialect, isolation guarantee, identifier rule, timestamp
|
|
45
45
|
behavior, JSON extension, or migration capability from a file extension.
|
|
@@ -3,7 +3,7 @@ name: swift-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for production Swift applications, packages, services, and Apple-platform components."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: swift
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -34,9 +34,8 @@ plugins, build scripts, tests, or network resolution.
|
|
|
34
34
|
Repository package manifest, toolchain, deployment target, SDK, target triple,
|
|
35
35
|
entitlements, signing policy, ABI, and platform support win over generic
|
|
36
36
|
advice. Use version-matched Swift language, SwiftPM, Apple SDK, and Xcode
|
|
37
|
-
documentation after repository evidence. Swift 6.
|
|
38
|
-
|
|
39
|
-
an automatic target.
|
|
37
|
+
documentation after repository evidence. Swift 6.4 is the current stable reference as of 2026-10-13; it is not an
|
|
38
|
+
automatic migration target.
|
|
40
39
|
|
|
41
40
|
Keep Swift language mode, compiler/toolchain, SDK, deployment target, runtime
|
|
42
41
|
OS, architecture, signing, entitlements, and package/platform compatibility
|
|
@@ -103,6 +102,8 @@ setting evaluation, macro execution, or Xcode build execution.
|
|
|
103
102
|
|
|
104
103
|
## Official sources
|
|
105
104
|
|
|
105
|
+
- [Swift 6.4 release](https://www.swift.org/blog/swift-6.4-released/)
|
|
106
|
+
|
|
106
107
|
- [The Swift Programming Language](https://docs.swift.org/swift-book/documentation/the-swift-programming-language/)
|
|
107
108
|
- [Swift.org documentation](https://www.swift.org/documentation/)
|
|
108
109
|
- [Swift Package Manager](https://github.com/swiftlang/swift-package-manager)
|
package/ENG/test-code-eng.md
CHANGED
|
@@ -57,7 +57,7 @@ A tool is a candidate, not a ranking winner. Record the decision in the reposito
|
|
|
57
57
|
|
|
58
58
|
| Context | Candidates with official documentation | Reproducible decision basis |
|
|
59
59
|
| --- | --- | --- |
|
|
60
|
-
| Node.js/TypeScript | [`node:test`](https://nodejs.org/api/test.html), [Vitest](https://vitest.dev/guide/), [Jest](https://jestjs.io/docs/getting-started) | existing framework/build, ESM/CJS, TypeScript, mocks, watch, coverage, and CI runtime |
|
|
60
|
+
| Node.js/TypeScript | [`node:test`](https://nodejs.org/docs/latest-v24.x/api/test.html), [Vitest](https://vitest.dev/guide/), [Jest](https://jestjs.io/docs/getting-started) | existing framework/build, ESM/CJS, TypeScript, mocks, watch, coverage, and CI runtime |
|
|
61
61
|
| Components and browser | [Testing Library](https://testing-library.com/docs/), [Playwright](https://playwright.dev/docs/intro), [Cypress](https://docs.cypress.io/) | required browsers, isolation, failure artifacts, parallelism, accessibility, and app compatibility |
|
|
62
62
|
| Python | [pytest](https://docs.pytest.org/), [`unittest`](https://docs.python.org/3/library/unittest.html) | dependency policy, fixtures/plugins, Python versions, and existing integration |
|
|
63
63
|
| .NET | [xUnit.net](https://xunit.net/), [NUnit](https://docs.nunit.org/), [MSTest](https://learn.microsoft.com/dotnet/core/testing/unit-testing-mstest-intro) | .NET version, runner/IDE, fixture model, assertions, and existing projects |
|
|
@@ -3,7 +3,7 @@ name: typescript-development-eng
|
|
|
3
3
|
language: en
|
|
4
4
|
description: "Specialist guidance for TypeScript applications, libraries, build configurations, and typed JavaScript boundaries."
|
|
5
5
|
version: "2026.09"
|
|
6
|
-
last-reviewed: "2026-
|
|
6
|
+
last-reviewed: "2026-10-13"
|
|
7
7
|
guide-id: typescript
|
|
8
8
|
requires-gates:
|
|
9
9
|
- threat-boundary
|
|
@@ -33,9 +33,9 @@ compiler, package script, or project code.
|
|
|
33
33
|
Repository compiler/configuration, emitted module contract, runtime support,
|
|
34
34
|
public type compatibility, and build policy win over generic advice. Use the
|
|
35
35
|
matching repository TypeScript version/config first, then official TypeScript
|
|
36
|
-
documentation and release notes, then runtime/framework documentation.
|
|
37
|
-
2026-
|
|
38
|
-
|
|
36
|
+
documentation and release notes, then runtime/framework documentation. As of
|
|
37
|
+
2026-10-13, TypeScript 7.0 is the current reference. TS 7.0 uses the native
|
|
38
|
+
Go-based toolset and does not provide a stable programmatic
|
|
39
39
|
compiler API; TS 6 compatibility can remain necessary for tooling. Do not
|
|
40
40
|
auto-migrate TS 6 projects or compiler integrations to TS 7.
|
|
41
41
|
|
package/GUIDE_ROUTER.md
CHANGED
|
@@ -63,8 +63,14 @@ project commands.
|
|
|
63
63
|
| `typescript` | [TypeScript development engineering](./ENG/typescript-development-eng.md) | Type-system/compiler contracts, runtime boundaries, module compatibility, testing, and release |
|
|
64
64
|
| `php` | [PHP development engineering](./ENG/php-development-eng.md) | Composer applications, web services, workers, runtime constraints, security, testing, and deployment |
|
|
65
65
|
| `swift` | [Swift development engineering](./ENG/swift-development-eng.md) | SwiftPM/Xcode applications, concurrency, platform boundaries, interoperability, testing, and release |
|
|
66
|
+
| `python` | [Python development engineering](./ENG/python-development-eng.md) | Python applications, packages, CLIs, async services, data pipelines, and native extensions (reference guide; project auto-routing is not implemented) |
|
|
66
67
|
| `rust` | [Rust development engineering](./ENG/rust-development-eng.md) | Architecture, implementation, testing, security, performance, reproducibility, and release of production Rust applications, services, libraries, and workers |
|
|
67
68
|
|
|
69
|
+
The Python guide is available as bounded reference material, but the current
|
|
70
|
+
`forgeloop route` project-evidence schema does not detect Python projects or
|
|
71
|
+
select the guide automatically. Do not claim automatic Python routing until
|
|
72
|
+
structural detection and route tests are implemented.
|
|
73
|
+
|
|
68
74
|
## Domain rules
|
|
69
75
|
|
|
70
76
|
### `clean` — code and structure
|