fix(stdlib): option.affine — final STAGE-A file, stdlib 19/19 (#128)#192
Merged
Conversation
- take/get_or_insert: Rust-style `&mut Option<T>` -> AffineScript
`mut opt: Option<T>` ownership-prefix param (grammar has no `&mut`)
- drop prelude `map` from the import (option defines its own Option
`map`; prelude's is the list map — name conflict, same class as
collections#191)
- transpose/map_filter: rewrite the list-map with the file's own
for-loop ++ idiom instead of the (shadowed) map
- cat_options: Unit statement-block match arm so it matches the
`None => {}` arm (a bare assignment expr is typed as its RHS ->
Array vs Unit across arms; collect already works via its Never arm)
- collect/cat_options: reassigned `values` -> `let mut`
stdlib 18->19/19 — STAGE A coherence complete. 233/233 dune test, zero regression.
Refs #128
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
🔍 Hypatia Security ScanFindings: 44 issues detected
View findings[
{
"reason": "Stray AI.a2ml in root -- use 0-AI-MANIFEST.a2ml only",
"type": "banned",
"file": "AI.a2ml",
"action": "delete",
"rule_module": "root_hygiene",
"severity": "high"
},
{
"reason": "Superseded by 0-AI-MANIFEST.a2ml",
"type": "banned",
"file": "AI.djot",
"action": "delete",
"rule_module": "root_hygiene",
"severity": "high"
},
{
"reason": "Issue in quality.yml",
"type": "missing_workflow",
"file": "quality.yml",
"action": "create",
"rule_module": "workflow_audit",
"severity": "high"
},
{
"reason": "Issue in security-policy.yml",
"type": "missing_workflow",
"file": "security-policy.yml",
"action": "create",
"rule_module": "workflow_audit",
"severity": "medium"
},
{
"reason": "Action hyperpolymath/standards/.github/workflows/governance-reusable.yml@main needs attention",
"type": "unpinned_action",
"file": "governance.yml",
"action": "pin_sha",
"rule_module": "workflow_audit",
"severity": "high"
},
{
"reason": "TypeScript file detected -- banned language",
"type": "banned_language_file",
"file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/example/smoke_driver.ts",
"action": "flag",
"rule_module": "cicd_rules",
"severity": "critical"
},
{
"reason": "TypeScript file detected -- banned language",
"type": "banned_language_file",
"file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/cli.ts",
"action": "flag",
"rule_module": "cicd_rules",
"severity": "critical"
},
{
"reason": "TypeScript file detected -- banned language",
"type": "banned_language_file",
"file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/mod.ts",
"action": "flag",
"rule_module": "cicd_rules",
"severity": "critical"
},
{
"reason": "TypeScript file detected -- banned language",
"type": "banned_language_file",
"file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/lib/compile.ts",
"action": "flag",
"rule_module": "cicd_rules",
"severity": "critical"
},
{
"reason": "TypeScript file detected -- banned language",
"type": "banned_language_file",
"file": "/home/runner/work/affinescript/affinescript/affinescript-deno-test/lib/runner.ts",
"action": "flag",
"rule_module": "cicd_rules",
"severity": "critical"
}
]Powered by Hypatia Neurosymbolic CI/CD Intelligence |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Last failing
stdlib/*.affine. With this, every stdlib module type-checks (19/19).take/get_or_insert: Rust-style&mut Option<T>→ AffineScriptmut opt: Option<T>(grammar has no&mut; ownership-prefix is the convention)drop prelude
mapimport (option defines its own Optionmap; prelude's is the list map — same name-conflict class as fix(stdlib): collections.affine prelude arg-order + let mut (#128) #191)transpose/map_filter: rewrite list-map via the file's own for-loop++idiom (the shadowedmapwas Option-map)cat_options: Unit statement-block arm so it matchesNone => {}(a bare assignment expr is typed as its RHS → Array vs Unit;collectalready works via itsNeverarm)collect/cat_options: reassignedvalues→let mutstdlib 18 → 19/19 — STAGE A coherence complete
dune test233/233, zero regressionRefs #128