Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
263 commits
Select commit Hold shift + click to select a range
fd408ab
fix(checker): bind explicit type arguments in declaration order
metaphorics Aug 7, 2026
4320636
fix(checker): preserve readonly through instantiation
metaphorics Aug 7, 2026
d75ab96
fix(checker): recover instead of panicking on an unresolved type para…
metaphorics Aug 7, 2026
276a83a
fix(compiler): harden module-graph scanning
metaphorics Aug 7, 2026
6f1337a
fix(parser): roll back JSX spans with the rest of a speculation
metaphorics Aug 7, 2026
c392e5e
fix(emitter): route enum scalar output through the indentation machinery
metaphorics Aug 7, 2026
c4b460b
fix(pipeline): establish edge-child ordering by construction
metaphorics Aug 7, 2026
df86061
fix(enum-plan): restrict arithmetic diagnostics to arithmetic operators
metaphorics Aug 7, 2026
cd19934
fix(rules): stop flagging functions that return from every switch case
metaphorics Aug 7, 2026
4e702ec
fix(rules): walk every statement kind when collecting calls
metaphorics Aug 7, 2026
e28e696
fix(lint): clamp JavaScript severities by level, not by rule code
metaphorics Aug 7, 2026
bcebc3b
test(scanner): pin JSX span tiling
metaphorics Aug 7, 2026
785dca6
test(rules): fail on a broken rule example instead of skipping it
metaphorics Aug 7, 2026
d2dda37
fix(runtime): stop a guest-reachable panic in hex decoding
metaphorics Aug 7, 2026
a06ea91
fix(gc): drop the wrapping slot subtraction
metaphorics Aug 7, 2026
6a29ead
fix(vm): reject an unsupported timeout instead of dropping it
metaphorics Aug 7, 2026
d90ef07
fix(number): apply ToInt32 to the radix and stop after overflow
metaphorics Aug 7, 2026
9663421
fix(string): preflight the iterator's allocation
metaphorics Aug 7, 2026
8a3ea2a
feat(uint8array): install Symbol.iterator on the prototype
metaphorics Aug 7, 2026
286eb18
fix(promise): honor new.target and brand-check then
metaphorics Aug 7, 2026
bc0b37e
fix(date): return ToDateString from the call form and honor new.target
metaphorics Aug 7, 2026
6f39525
perf(array): validate the iterator receiver without cloning elements
metaphorics Aug 7, 2026
9703103
fix(collections): make the entry lifecycle coherent
metaphorics Aug 7, 2026
18b17c3
refactor(host-objects): one data-property helper
metaphorics Aug 7, 2026
5908f8c
fix(regexp): deduplicate backtracking states per repetition level
metaphorics Aug 7, 2026
bbeb4b0
fix(array): refund the speculative charge on a failed length redefini…
metaphorics Aug 7, 2026
a8594d3
fix(object): validate property descriptors and give a bound function …
metaphorics Aug 7, 2026
ccd5676
fix(regexp): give the literal and constructed forms the same own prop…
metaphorics Aug 7, 2026
86d73ff
fix(verification): key pin validation on a structured ref kind
metaphorics Aug 7, 2026
53d38b5
fix(verification): classify directory entries without following links
metaphorics Aug 7, 2026
8452ec5
fix(verification): bound the interpreter path and kill in process
metaphorics Aug 7, 2026
8e0ce38
fix(verification): compare diagnostics per file and group baselines once
metaphorics Aug 7, 2026
6c229ff
fix(perf): measure RSS per repeat and fail on a baseline with no tota…
metaphorics Aug 7, 2026
098cc77
perf(verification): serialize the ledger without the redundant copies
metaphorics Aug 7, 2026
8a8a753
refactor(verification): parameterize the feature requirement by package
metaphorics Aug 7, 2026
feb954d
test(verification): extract the tsc oracle parity helper
metaphorics Aug 7, 2026
8a0bdb0
fix(native): assert the dispose-capture helper's ABI signature
metaphorics Aug 7, 2026
25dfdbb
fix(node): pass the exact script name to the compiler
metaphorics Aug 7, 2026
e7c1b2e
fix(cli): make the cache-root containment check real
metaphorics Aug 7, 2026
47d7f0c
fix(cli): treat cargo fingerprint metadata as optional
metaphorics Aug 7, 2026
9cdcf60
fix(formal): make ProviderStep total so W^X refusal is provable
metaphorics Aug 7, 2026
7c4c5e0
refactor(formal): rename the Program alias to FunctionBody
metaphorics Aug 7, 2026
8362e46
fix(collections): restore the sorted-order invariant broken by slot r…
metaphorics Aug 7, 2026
d7dde5f
fix(object): remove an impossible NaN guard from same_value
metaphorics Aug 7, 2026
0473105
perf(regexp): reuse the dedup set across repetition levels
metaphorics Aug 7, 2026
c0534cd
perf(regexp): canonicalize stored flags without recompiling the pattern
metaphorics Aug 7, 2026
92a0245
refactor(regexp): build the initial own properties in one place
metaphorics Aug 7, 2026
4ea9aa6
refactor(runtime): give the native-function prototype convention an o…
metaphorics Aug 7, 2026
6b4d60c
feat(runtime): consult Symbol.hasInstance in instanceof
metaphorics Aug 7, 2026
38ef9b6
refactor(builtins): let define_data install function-valued properties
metaphorics Aug 7, 2026
fb41fe7
fix(error): install error own fields as non-enumerable
metaphorics Aug 7, 2026
4f8e569
refactor(cli): give project resolution one owner
metaphorics Aug 7, 2026
f02a0c6
fix(rules): run the shared signature checks on constructors
metaphorics Aug 7, 2026
198ea55
fix(emitter): refuse export = rather than silently changing its seman…
metaphorics Aug 7, 2026
e1238a4
refactor(bytecode): name the string conversion for what it does
metaphorics Aug 7, 2026
dffc4d5
fix(bytecode): give verify errors a readable Display
metaphorics Aug 7, 2026
2b9a0fd
refactor(bytecode): one LEB128 decoder for both readers
metaphorics Aug 7, 2026
c6975ef
fix(cli): derive explained budgets from the compiler's constants
metaphorics Aug 7, 2026
a06ce34
feat(timers): implement setInterval and clearInterval
metaphorics Aug 7, 2026
31b3754
fix(console): bound inspection output for arrays and byte arrays
metaphorics Aug 7, 2026
ce37f36
fix(verification): give the executing worker the normalized environment
metaphorics Aug 7, 2026
a8953ba
fix(runtime): validate redefinition at the internal descriptor seam
metaphorics Aug 7, 2026
afcda17
fix(promise): resolve intrinsics from the table, not the global map
metaphorics Aug 7, 2026
893d297
fix(string): stop dropping text between empty split matches
metaphorics Aug 7, 2026
a0683b0
perf(intrinsics): look up globals by key
metaphorics Aug 7, 2026
2ed676f
fix(rules): treat an empty case consequent as fall-through
metaphorics Aug 7, 2026
f20d4c0
fix(regexp): report step-budget exhaustion instead of a false non-match
metaphorics Aug 7, 2026
0aac686
fix(formal): lift verification from one function body to the envelope
metaphorics Aug 7, 2026
710de93
fix(formal): name the finalization theorem for what it proves
metaphorics Aug 7, 2026
b5b3a6a
test(regexp): make the parity test able to fail
metaphorics Aug 7, 2026
2253c20
fix(bytecode): dedup EcmaString encode and fix From doc
metaphorics Aug 8, 2026
b029c7b
fix(codegen): keep local lints with override comment
metaphorics Aug 8, 2026
a06000c
fix(checker): guard rest param inference against out-of-bounds slice
metaphorics Aug 8, 2026
d32e228
fix(checker): preserve nested generic signatures during instantiation
metaphorics Aug 8, 2026
8dd71f0
fix(checker): sync type inventory with value inventory
metaphorics Aug 8, 2026
3dab197
fix(lint): replace trivial clean examples and add W087 coverage
metaphorics Aug 8, 2026
2a851c0
fix(compiler): handle U+2028 and U+2029 line continuations
metaphorics Aug 8, 2026
3ca6382
perf(runtime): fix ephemeron loop double counting
metaphorics Aug 8, 2026
3f89c12
fix(runtime): remove pointless UTF-8 round-trip in host output
metaphorics Aug 8, 2026
b9c5a30
perf(runtime): add non-cloning array length accessor
metaphorics Aug 8, 2026
3cd07e3
fix(verification): generate snapshot before verification run
metaphorics Aug 8, 2026
d3eb881
fix(verification): gate real-root pin test on node_modules
metaphorics Aug 8, 2026
bba9d9f
fix(codegen): update jit_memory test for retained mappings on failure
metaphorics Aug 8, 2026
4821a2c
fix(lint, rules): make W059 clean example meaningful and fix its rule
metaphorics Aug 8, 2026
7bd8f30
fix(runtime): use CreateDataProperty for JSON parse/stringify
metaphorics Aug 8, 2026
7f3d400
style: cargo fmt
metaphorics Aug 8, 2026
62b7f01
fix(runtime): cache Uint8Array prototype in BuiltinTable
metaphorics Aug 8, 2026
f923e48
fix(runtime): honor NewTarget for Uint8Array subclassing
metaphorics Aug 8, 2026
658025c
fix(runtime): move Promise NUL-keyed statics to BuiltinTable
metaphorics Aug 8, 2026
1ebab70
fix(checker): handle union targets before strict-null leaf cases
metaphorics Aug 8, 2026
978a112
fix(checker): compare required arity on both signatures
metaphorics Aug 8, 2026
2df2efe
fix(checker): add coinductive depth guard for recursive relations
metaphorics Aug 8, 2026
4c09a19
fix(checker): handle rest param target in arity check
metaphorics Aug 8, 2026
1859d21
fix(runtime): trace every cached builtin GC root
metaphorics Aug 9, 2026
c31c217
fix(node): tag timer arming generations
metaphorics Aug 9, 2026
4bc4b98
fix(runtime): settle Promise.all result capabilities directly
metaphorics Aug 9, 2026
a8b773c
fix(runtime): make intrinsic GC roots exhaustive
metaphorics Aug 9, 2026
52b1fb6
fix(runtime): iterate Uint8Array values lazily
metaphorics Aug 9, 2026
062ea1d
perf(bamts-verification): reset peak RSS (VmHWM) before each benchmar…
metaphorics Aug 9, 2026
b3638a6
fix(bamts): mark Error and ResolutionError as #[non_exhaustive]
metaphorics Aug 9, 2026
41a6d47
checker: add borrowed check_source entry points
metaphorics Aug 9, 2026
a9db377
style: format merged Rust fixes
metaphorics Aug 9, 2026
e7805a9
feat(formal/lean): add moduleId to ShadowFrame ABI layout
metaphorics Aug 9, 2026
b24d611
fix(cli): return TruncationNotice from render_report and surface it i…
metaphorics Aug 9, 2026
1e50642
test(compiler): remove vacuous emitter equivalence check
metaphorics Aug 9, 2026
7bf75e6
perf(bamts-compiler): build export-by-declaration index in namespace …
metaphorics Aug 9, 2026
9dfc176
fix(bamts-bytecode): bound resolve_export by total export count
metaphorics Aug 9, 2026
40934fa
fix(cli): complete truncation notice propagation
metaphorics Aug 9, 2026
89264c7
feat(compiler): move semantic models through ProgramSemanticModel::re…
metaphorics Aug 9, 2026
6715afc
fix(compiler): remove dead namespace export accessor
metaphorics Aug 9, 2026
32b7fee
style(compiler): format pipeline regression
metaphorics Aug 9, 2026
097b74b
style(compiler): format namespace index tests
metaphorics Aug 9, 2026
e2b7022
fix(verification): match diagnostic truncation field
metaphorics Aug 9, 2026
2c1fef1
fix(bamts-verification): detect missing corpus worker response after …
metaphorics Aug 9, 2026
0cacc95
fix(npm): scope platform artifacts under @bamti and gate release with…
metaphorics Aug 9, 2026
3c7fbf6
feat(verification): route ledger serialization through write_to
metaphorics Aug 9, 2026
10a0bd5
style(verification): format ledger writer tests
metaphorics Aug 9, 2026
c122957
test(verification): avoid Debug bound in worker failure test
metaphorics Aug 9, 2026
5af8381
fix(verification): import ledger writer flush trait
metaphorics Aug 9, 2026
d9631a5
fix(formal/lean): explicit UTF-16 string constant codec in Bamti/Byte…
metaphorics Aug 9, 2026
459e0a9
fix(bamts-compiler): index resolved module edges and assert specifier…
metaphorics Aug 9, 2026
e843133
fix(rules): traverse JSX expressions in syntax lint
metaphorics Aug 9, 2026
623e923
fix(npm): block CLI publish until artifacts exist
metaphorics Aug 9, 2026
19d9de5
style(rules): format JSX traversal tests
metaphorics Aug 9, 2026
23769e5
feat(verification): reject selected perf-budget slices without baseline
metaphorics Aug 9, 2026
76c9460
style(verification): format perf baseline test
metaphorics Aug 9, 2026
2fdef86
feat(bytecode): require program entry index within envelope module bo…
metaphorics Aug 9, 2026
85a4aa7
fix(rules): suppress W065 when declared return type admits absence
metaphorics Aug 9, 2026
6f3d93f
style(rules): format optional-return lint tests
metaphorics Aug 9, 2026
6c9df02
fix(runtime): document and test runInNewContext shared intrinsics
metaphorics Aug 9, 2026
87d1cf6
style(runtime): format vm context regression
metaphorics Aug 9, 2026
64a610a
fix(runtime): preserve explicit zero exit codes
metaphorics Aug 9, 2026
53b8570
feat(verification): kill whole worker process group on timeout (C2)
metaphorics Aug 9, 2026
591608b
Cache Date/Map/Set/WeakMap/WeakSet prototypes in BuiltinTable
metaphorics Aug 9, 2026
62530ea
driver: route all cache roots through one private validation path
metaphorics Aug 9, 2026
4e0b3c9
G0.1: make Type wildcard fallbacks explicit or-patterns
metaphorics Aug 9, 2026
7b4af02
style: format merged campaign fixes
metaphorics Aug 9, 2026
4c580e1
test(cli): import Unix cache metadata extension
metaphorics Aug 9, 2026
c7ad0bb
build(verification): lock process-group dependency
metaphorics Aug 9, 2026
6443b72
refactor(checker): retain object type signatures
metaphorics Aug 9, 2026
816a7fd
refactor(checker): add tuple type representation
metaphorics Aug 9, 2026
ff31a95
refactor(checker): add intersection type representation
metaphorics Aug 9, 2026
48ba2df
refactor(checker): retain function overload signatures
metaphorics Aug 9, 2026
d51d3b7
fix(verification): render extended checker types
metaphorics Aug 9, 2026
02125aa
fix(verification): reject harness-owned compiler arguments
metaphorics Aug 9, 2026
de8f4ea
perf(checker): cache JSX factory declarations
metaphorics Aug 9, 2026
2d2fa58
fix(checker): tolerate opaque JSX spreads
metaphorics Aug 9, 2026
9107338
fix(checker): type JSX child spreads by element
metaphorics Aug 9, 2026
f65095b
test(cli): create private scratch directories
metaphorics Aug 9, 2026
d4ab0a0
fix(lower): keep nested namespaces in local bindings
metaphorics Aug 9, 2026
1137a0d
fix(runtime): unify global object authority
metaphorics Aug 9, 2026
1f9249e
refactor(checker): represent tuple shapes and applied class types
metaphorics Aug 10, 2026
c91699a
fix(checker): evaluate numeric enum literals
metaphorics Aug 10, 2026
12ee0e6
fix(parser): disambiguate optional property lookahead
metaphorics Aug 10, 2026
0ff94eb
fix(lint): visit attribute initializer expressions
metaphorics Aug 10, 2026
e3e173f
style(compiler): prefer empty-scope predicate
metaphorics Aug 10, 2026
886cda3
fix(runtime): reject non-callable iterator return hooks
metaphorics Aug 10, 2026
084e26e
fix(runtime): preserve interval cancellation generations
metaphorics Aug 10, 2026
fd394f0
refactor(runtime): package frame activation arguments
metaphorics Aug 10, 2026
581b219
fix(runtime): root iterator state across callbacks
metaphorics Aug 10, 2026
a3bb09e
fix(runtime): thread generator resume mode through the suspend ABI
metaphorics Aug 10, 2026
3bec407
fix(runtime): isolate vm context globals
metaphorics Aug 10, 2026
83f0e17
fix(runtime): preserve signed SameValue semantics
metaphorics Aug 11, 2026
f177c6b
fix(runtime): coerce apply array-like lengths observably
metaphorics Aug 11, 2026
6b6dee7
fix(runtime): coerce Date constructor arguments observably
metaphorics Aug 11, 2026
6f77832
fix(runtime): interleave Array.from iteration and mapping
metaphorics Aug 11, 2026
4c098f9
fix(runtime): close collection iterators on abrupt completion
metaphorics Aug 11, 2026
1c2c558
fix(runtime): interleave Uint8Array reads and coercion
metaphorics Aug 11, 2026
9bf9c88
fix(runtime): install standard Promise combinators
metaphorics Aug 11, 2026
24f0e8c
build(verification): register process-group safety boundary
metaphorics Aug 11, 2026
17030e3
fix(cli): harden private cache roots
metaphorics Aug 11, 2026
a6493ff
fix(cli): enforce clean frontend diagnostics
metaphorics Aug 11, 2026
1dfc122
style(compiler): normalize enum plan test formatting
metaphorics Aug 11, 2026
5c119a7
fix(runtime): canonicalize regexp string flags
metaphorics Aug 11, 2026
74be29e
refactor(cli): route explain through the driver
metaphorics Aug 11, 2026
26f3050
test(cli): run node vm coverage through jit
metaphorics Aug 11, 2026
dcdd0e3
docs(facade): state JavaScript compatibility policy
metaphorics Aug 11, 2026
de5563a
fix(runtime): stream Set constructor values
metaphorics Aug 11, 2026
7c751c7
fix(runtime): stream Object.fromEntries
metaphorics Aug 11, 2026
1e1efbd
fix(runtime): root collection construction state
metaphorics Aug 11, 2026
1a2eee3
fix(runtime): reject weak structured clones
metaphorics Aug 11, 2026
e5654ac
fix(runtime): inherit Uint8Array length
metaphorics Aug 11, 2026
6eb0979
fix(compiler): honor JavaScript checking policy
metaphorics Aug 11, 2026
ab11b24
fix(checker): match runtime globals
metaphorics Aug 11, 2026
d76b146
fix(checker): diagnose non-iterable for-of
metaphorics Aug 11, 2026
6d71722
fix(checker): type array indexed access
metaphorics Aug 11, 2026
033bf43
fix(checker): preserve class expression types
metaphorics Aug 11, 2026
2c789a9
fix(checker): type optional calls
metaphorics Aug 11, 2026
5324c57
fix(checker): validate type-reference arguments
metaphorics Aug 11, 2026
a87cc61
fix(checker): validate interface inheritance
metaphorics Aug 11, 2026
ce87956
fix(checker): require derived constructor super
metaphorics Aug 11, 2026
c4d18c4
fix(checker): diagnose annotated return fallthrough
metaphorics Aug 11, 2026
266eb50
fix(checker): reject abstract construction
metaphorics Aug 11, 2026
2a830e1
fix(checker): skip generator body fallthrough
metaphorics Aug 11, 2026
c6b9070
fix(checker): check fresh object excess properties
metaphorics Aug 11, 2026
5438d23
fix(checker): accept fresh properties for empty targets
metaphorics Aug 11, 2026
be4ca1d
fix(checker): cook fresh object property keys
metaphorics Aug 11, 2026
78af093
fix(checker): substitute complete generic constraints
metaphorics Aug 11, 2026
46aeaf6
fix(checker): reject optional inherited overrides
metaphorics Aug 11, 2026
c58289c
fix(checker): track labeled completion flow
metaphorics Aug 11, 2026
fe9b60d
fix(checker): check generator completion fallthrough
metaphorics Aug 11, 2026
a397069
fix(checker): ignore unreachable switch breaks
metaphorics Aug 11, 2026
445a653
fix(checker): preserve surrogate property keys
metaphorics Aug 11, 2026
526521c
refactor(runtime): share ECMAScript number formatting
metaphorics Aug 11, 2026
119029a
fix(checker): preserve generator completion semantics
metaphorics Aug 11, 2026
269f507
refactor(compiler): reuse ECMAScript number formatting
metaphorics Aug 11, 2026
5ab86af
fix(checker): await async return expressions
metaphorics Aug 11, 2026
f0fca6f
fix(checker): preserve structural iterator contracts
metaphorics Aug 11, 2026
7570e0c
fix(parser): bind type operators below postfix types
metaphorics Aug 11, 2026
334feb9
fix(checker): distinguish iterator absence from element errors
metaphorics Aug 11, 2026
f6e15af
fix(checker): preserve imported class type identities
metaphorics Aug 11, 2026
42579ec
fix(checker): combine covariant inference evidence
metaphorics Aug 11, 2026
c6e306c
refactor(checker): carry async iterator metadata
metaphorics Aug 11, 2026
a49a234
feat(checker): bind async iterator protocols
metaphorics Aug 11, 2026
5bc4fc6
feat(checker): resolve for-await iterator protocols
metaphorics Aug 11, 2026
efc735c
fix(checker): model intrinsic iterator protocols
metaphorics Aug 11, 2026
a2f36d4
fix(checker): infer generator protocol types
metaphorics Aug 11, 2026
f5cb175
fix(checker): preserve noncompletion inference contexts
metaphorics Aug 11, 2026
28f599e
fix(compiler): load declaration overlays for runtime imports
metaphorics Aug 11, 2026
3179dcc
fix(checker): relate constrained indexed accesses
metaphorics Aug 12, 2026
08f59c7
fix(checker): defer recursive class views
metaphorics Aug 12, 2026
14c014f
fix(checker): model polymorphic this types
metaphorics Aug 12, 2026
b5cee64
fix(checker): defer class constraint validation
metaphorics Aug 12, 2026
a8c1319
fix(verification): render polymorphic this types
metaphorics Aug 12, 2026
a26ae81
fix(checker): accept ambient function declarations
metaphorics Aug 12, 2026
14be1d3
fix(checker): recognize AbortSignal type
metaphorics Aug 12, 2026
15fb59a
fix(checker): relate arrays to iterable protocols
metaphorics Aug 12, 2026
17204cf
fix(checker): infer structural iterable yields
metaphorics Aug 12, 2026
af8c472
docs(audience): ground developer context
metaphorics Aug 12, 2026
364bb0e
docs(npm): correct pre-release CLI status
metaphorics Aug 12, 2026
341c151
fix(checker): allow class methods in declarations
metaphorics Aug 12, 2026
12dca3b
docs(npm): reflect published shim status
metaphorics Aug 12, 2026
61eaa7c
docs(contributing): define local verification workflow
metaphorics Aug 12, 2026
0dab1cd
docs(architecture): map compiler component boundaries
metaphorics Aug 12, 2026
cdc1838
docs(verification): state evidence scope and limits
metaphorics Aug 12, 2026
d032c53
docs(reference): document CLI and diagnostics
metaphorics Aug 12, 2026
abe1daa
docs(tutorial): add verified source quickstart
metaphorics Aug 12, 2026
0f96c23
docs(readme): clarify scope and working path
metaphorics Aug 12, 2026
166ae69
fix(checker): honor TypeScript error directives
metaphorics Aug 12, 2026
dccd1ee
fix(checker): terminate recursive comparable relations
metaphorics Aug 12, 2026
832c810
test(corpus): budget valita debug execution
metaphorics Aug 12, 2026
5164733
test(native): probe cross-platform Node strings
metaphorics Aug 12, 2026
c7f292d
test(native): cover environment serialization
metaphorics Aug 12, 2026
7ac6f29
refactor(cli): isolate invocation process context
metaphorics Aug 12, 2026
b3e8fc9
fix(cli): populate JIT process environment
metaphorics Aug 12, 2026
9e06bcf
refactor(cli): expose buffered invocation
metaphorics Aug 12, 2026
46a1f93
feat(cancel): add invocation cancellation token
metaphorics Aug 12, 2026
28f31fa
feat(compiler): complete native TypeScript pipeline
metaphorics Aug 13, 2026
45f28e6
Merge remote-tracking branch 'origin/main' into HEAD
metaphorics Aug 13, 2026
910e710
fix(npm): preserve scoped CLI artifact contracts
metaphorics Aug 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 116 additions & 0 deletions .agents/developer-audience-context.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Developer Audience Context

Last updated: 2026-08-11

## Product Overview

| Field | Repository Evidence & State |
|-------|-----------------------------|
| **Product Name** | `bamTiScript` (Rust workspace); CLI binary `bamts`; Node/npm shims `bamti` and `bamti-cli`. Repository: `metaphorics/bamTiScript`. |
| **One-liner** | A pre-release TypeScript compiler and runtime implemented primarily in Rust, with AOT/JIT execution paths and Lean 4 models for selected invariants. |
| **Category** | Open-source compiler toolchain, CLI utility, native runtime, and planned Node.js package surface. |
| **Core Technology** | Rust 2024 (`rust-version = 1.97.1`), TypeScript 7.0.2 compatibility oracle (`package.json`), Node.js-hosted execution surfaces, Lean 4 specifications (`formal/lean`), and vendored libuv (`vendor/libuv-1.52.1`). |
| **Pricing / Licensing** | Open source under the MIT License (`Cargo.toml`). |
| **Operational Status** | Pre-release / Unreleased. The npm wrapper packages (`npm/bamti-cli`, `npm/bamti`) and native binaries are not yet published to npm or crates.io (`npm/bamti-cli/README.md`). |

## Developer Persona

| Field | Maintainer Grounding & Scope |
|-------|------------------------------|
| **Primary Role** | Systems engineers, compiler developers, language runtime authors, and TypeScript/Rust platform engineers. |
| **Seniority** | *Hypothesis*: Senior, Staff, and Principal Engineers or Infrastructure Architects evaluating alternative TypeScript runtimes and fast native compilation pipelines. |
| **Company Size** | *Unknown*: No production customer telemetry or user database exists in the repository. |
| **Industry Verticals** | *Unknown*: Repository evidence provides no vertical segmentation data. |
| **Tech Stack** | Rust 1.97.1+, TypeScript 7.0.2 as the compatibility oracle, Node.js, Lean 4, and native C toolchains used by AOT linking. |
| **Decision Authority** | Toolchain maintainers, platform engineers, open-source contributors, and compiler researchers. |

*Explicit Unknowns*: Actual developer demographics, developer team sizes, enterprise adoption percentages, and user geographic distribution are entirely unknown from repository evidence.

## Where They Hang Out

| Channel Category | Known Repository Anchors & Ecosystem Hypotheses |
|------------------|-------------------------------------------------|
| **Code & Issue Tracking** | Primary channel: GitHub repository `https://github.com/metaphorics/bamTiScript` (`Cargo.toml`). |
| **Communities** | *Hypothesis*: `r/rust`, `r/typescript`, compiler design Discord/Slack communities, Rust user groups. |
| **Aggregators & Content** | *Hypothesis*: Hacker News (`news.ycombinator.com`), Lobsters (`lobste.rs`), Rust Weekly, TypeScript release tracking blogs. |
| **Events** | *Hypothesis*: Systems programming conferences (RustConf, EuroRust, TSConf). |

*Explicit Unknowns*: The repository contains no links or records for official Discord servers, Slack channels, subreddit moderation, or social media accounts (X/Twitter, LinkedIn). All non-GitHub channels remain unverified hypotheses.

## Problems & Pain Points

| Level | Evidence-Grounded Description |
|-------|-------------------------------|
| **Functional** | *Hypothesis*: Developers evaluating this project want TypeScript checking and native execution in one toolchain. The repository does not contain user research that establishes their current latency, memory, or CI pain. |
| **Emotional** | *Unknown*: The repository contains no interviews, surveys, or support records from which to infer emotional pain. |
| **Situational** | *Hypothesis*: Evaluation occurs when a team is comparing TypeScript compiler or runtime architectures, native execution, stricter diagnostics, or machine-checked models. |

*Explicit Unknowns*: External problem statements and verbatim complaint logs do not exist in the repository. Resource diagnostics such as `BAMTS-R001` and `BAMTS-R002` describe bamTiScript's own operating limits, not user pain.

## Current Alternatives

| Alternative | Role & Distinction Relative to bamTiScript |
|-------------|--------------------------------------------|
| **`tsc` (Official TypeScript Compiler)** | Compatibility oracle (`typescript: 7.0.2` in the root `package.json`). bamTiScript is a separate pre-release implementation and does not yet claim complete compatibility. |
| **Node.js / V8** | Current execution oracle and host surface for corpus comparisons. bamTiScript implements separate bytecode, runtime, and code-generation crates. |
| **Bun / Deno** | Alternative JavaScript and TypeScript runtimes. No repository evidence supports a performance or compatibility comparison yet. |
| **swc / oxc / other native toolchains** | Native parser and compiler alternatives. No repository evidence supports a feature-completeness or performance comparison yet. |

*Explicit Unknowns*: User switching behavior, comparative market share, and external developer sentiment toward alternatives are unknown from repository data.

## Key Differentiators

| Dimension | Grounded Technical Feature |
|-----------|----------------------------|
| **Technical Safety** | Workspace-wide `#![forbid(unsafe_code)]` policy (`Cargo.toml`), preventing memory corruption risks in Rust code. |
| **Formal Verification** | Lean 4 formal proofs validating bytecode execution semantics, ABI correctness, and JIT lifecycle invariants (`formal/lean/`). |
| **Execution Targets** | Multi-target architecture supporting AOT binary compilation, JIT compilation, and interpreter execution (`--target aot|jit` in CLI). |
| **Exact Semantics** | Exact ECMAScript UTF-16 string compliance model (`docs/solutions/architecture-patterns/exact-ecmascript-utf16-strings.md`). |
| **Developer Experience (DX)** | Integrated rule explainer (`bamts explain <rule>`); postinstall-free npm platform shims (`npm/bamti-cli/README.md`). |

*Explicit Unknowns*: Verified production benchmark multipliers (e.g., "10x faster than tsc") cannot be claimed because performance benchmarks (`perf/benchmarks.toml`) represent internal testing fixtures rather than published production measurements.

## Verbatim Developer Language

Because the repository has no external issue tracker export, user survey, or community chat logs, external developer quotes **must not be fabricated**. The following terms represent verified internal CLI and diagnostic vocabulary:

- **CLI Operations**: `check`, `compile`, `run`, `explain`.
- **Execution Targets**: `aot`, `jit`.
- **Compatibility Options**: `--js-compat`, `--compat <standard|esnext|es2022|node|strict|loose>`, `--allow-js`, `--check-js`, `--jsx-preserve`.
- **Diagnostic Formats**: `text`, `pretty`, `json`, `github`, `compact`.
- **Budget Breach Identifiers**: `BAMTS-R001` (file source byte limit exceeded), `BAMTS-R002` (session total source byte limit exceeded).
- **Frontend Diagnostic Codes**: `BAMTS-C004` (and related semantic checking error codes).

*Explicit Unknowns*: Outside developer quotes, praise, tweets, or verbatim feature requests are completely absent from repository evidence.

## Technical Trust Signals

| Signal Type | Repository Grounding & Status |
|-------------|-------------------------------|
| **Code Quality & Safety** | Workspace lint rule `[workspace.lints.rust] unsafe_code = "forbid"` (`Cargo.toml`). |
| **Formal Correctness** | Lean 4 proof specifications in `formal/lean/Bytecode/Verify.lean` and `JitLifecycle.lean`. |
| **Transparency** | The npm package README states that packages are prepared for a future release and are not published. |
| **Test Coverage** | Conformance and differential verification suites in `crates/bamts-verification`. |

*Explicit Unknowns*: GitHub star count (UNKNOWN), npm download numbers (0 / UNPUBLISHED), third-party security audit reports (NONE), and corporate sponsors (UNKNOWN).

## Conversion Actions

| Funnel Stage | Maintainer & Contributor Action |
|--------------|---------------------------------|
| **Awareness / Discovery** | Review repository architecture, `Cargo.toml`, and compiler rules (`RULES.md`). |
| **Consideration / Evaluation** | Clone workspace; inspect Lean formal verification proofs (`formal/lean/`); examine CLI argument contracts (`crates/bamts-cli/src/args.rs`). |
| **Local Verification** | Execute Rust workspace checks (`cargo check --workspace`) and test suites (`cargo test --workspace`). |
| **Future Trial (Post-Release)** | Install the planned `bamti-cli` npm package, then run `bamts check <file.ts>` or `bamts run <file.ts>`. |
| **Future Integration** | Use the planned `bamti` Node package after its native artifact and API contracts are implemented and published. |

## Voice & Tone

| Dimension | Setting & Maintainer Rule |
|-----------|---------------------------|
| **Formality** | **Professional / Academic**: Precise technical language without informal slang. |
| **Technicality** | **Deep Technical**: Direct reference to AST nodes, bytecode verification, Lean semantics, UTF-16 representation, and Rust workspace layout. |
| **Personality** | **Rigorous and Transparent**: Separate behavior verified in the current tree from compatibility targets and release plans. |
| **Humor** | **Serious**: Zero marketing hyperbole or playful detours. |

*Maintainer Rule*: Maintain documentation as evidence-backed internal records. State facts verified in code, label all unproven items as hypotheses, and explicitly identify unknown parameters where repository evidence is silent.
Loading