igniter_lang 0.1.0.alpha.1

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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: fdb98a8602153b45f024cdc1119fc44b48a49bd252a1d2df43b648066526911e
4
+ data.tar.gz: e43e160b131d99de48ec2c8e81e49dc96b14b9c44d52f32bbcb3eb93f114dc33
5
+ SHA512:
6
+ metadata.gz: 144200d8bba3de920e1125cf802c86258abfdf9189cf3e8dd2fe959b63d37cd9801eff16562b33be262b7378877ccb3230bc08b841f9a9673fe697a6f6448e81
7
+ data.tar.gz: 7d86530329526fdc770c90a9349a0663902a5eb50214b091fda8e282bae75e90c8b3fdfb157954c14fe7b358e18e3bd88f85775384421c73c893c08f1d83898a
data/README.md ADDED
@@ -0,0 +1,65 @@
1
+ # igniter-lang
2
+
3
+ Status: separate research workspace
4
+ Owner: `[Architect Supervisor / Codex]`
5
+ Agent identity: `[Igniter-Lang Research Agent]`
6
+
7
+ `igniter-lang` is a contract-native language research ecosystem adjacent to,
8
+ but separate from, the Igniter platform.
9
+
10
+ ## Working Hypothesis
11
+
12
+ ```text
13
+ Igniter = framework/platform for real systems.
14
+ Igniter-Lang = language research ecosystem for contract-native computation.
15
+ ```
16
+
17
+ They share concepts, but they should not share release pressure, package
18
+ boundaries, or premature syntax/runtime commitments.
19
+
20
+ ## Why Separate
21
+
22
+ - The platform must stay practical and shippable.
23
+ - The language needs room for theory, axioms, and new paradigms.
24
+ - Research docs should not pollute platform docs.
25
+ - Language experiments should influence Igniter through explicit bridge notes,
26
+ not by silently changing packages.
27
+
28
+ ## Start Here
29
+
30
+ 1. Read [AGENTS.md](AGENTS.md).
31
+ 2. Read [handoff/START_PROMPT.md](handoff/START_PROMPT.md).
32
+ 3. Use [docs/README.md](docs/README.md) as the research index.
33
+ 4. Start with [docs/tracks/observable-contract-language-v0.md](docs/tracks/observable-contract-language-v0.md).
34
+
35
+ ## Package Status
36
+
37
+ `igniter_lang 0.1.0.alpha.1` — alpha prerelease candidate. Not yet published.
38
+ See [RELEASE_NOTES.md](RELEASE_NOTES.md) for scope, accepted local evidence,
39
+ required fresh smoke, and exclusions.
40
+
41
+ RubyGems publish, release execution, and tag/push/sign/deploy remain closed
42
+ pending fresh package/install smoke and profile-source installed smoke for
43
+ this version.
44
+
45
+ ## Current Navigation
46
+
47
+ Internal read-only context (local evidence only — not a release, publish, or public demo claim):
48
+
49
+ - [docs/README.md](docs/README.md) — documentation index
50
+ - [docs/current-status.md](docs/current-status.md) — stage scoreboard and accepted local evidence
51
+ - [docs/ruby-api.md](docs/ruby-api.md) — caller-facing local proof compiler API
52
+
53
+ Accepted local evidence (for `0.1.0.pre.stage2`; repo-local; fresh smoke required for `0.1.0.alpha.1`; release execution and public release/demo claims remain closed):
54
+
55
+ - Repo-local compiler RC evidence: PASS
56
+ - Local package install smoke: PASS
57
+ - Bounded installed profile-source smoke: PASS
58
+
59
+ RubyGems publish, release execution, version/tag/push/sign/deploy, profile
60
+ finalization/discovery/defaulting, branch/conditional `if_expr`, Spark
61
+ integration, runtime, and production behavior remain out of scope.
62
+
63
+ ## Write Rule
64
+
65
+ Write only inside this `igniter-lang/` workspace.
data/RELEASE_NOTES.md ADDED
@@ -0,0 +1,137 @@
1
+ # Igniter-Lang Release Notes
2
+
3
+ ## 0.1.0.alpha.1 (alpha prerelease candidate — not yet published)
4
+
5
+ **Status:** alpha / prerelease candidate
6
+ **Package:** `igniter_lang`
7
+ **Executable:** `igc`
8
+ **Tag candidate:** `igniter-lang-v0.1.0.alpha.1` (candidate only — no tag created)
9
+
10
+ ---
11
+
12
+ ### What This Is
13
+
14
+ This is the first public prerelease candidate for the `igniter_lang` package.
15
+ It is an alpha release of the bounded compiler CLI for the Igniter contract-native
16
+ language research workspace.
17
+
18
+ This is **not** a stable release, **not** a production release, and **not** a
19
+ public demo claim.
20
+
21
+ ---
22
+
23
+ ### Accepted Local Evidence (pre-publish)
24
+
25
+ The following local evidence was accepted for the prior internal version
26
+ (`0.1.0.pre.stage2`). Fresh smoke is required for `0.1.0.alpha.1` before any
27
+ publish authorization can be reconsidered.
28
+
29
+ | Evidence | Status |
30
+ |---|---|
31
+ | Repo-local compiler RC evidence | PASS (`0.1.0.pre.stage2`) |
32
+ | Local package install smoke | PASS (`0.1.0.pre.stage2`) |
33
+ | Bounded installed profile-source smoke | PASS (`0.1.0.pre.stage2`) |
34
+
35
+ The prior accepted gem SHA256 (`sha256:dba3f0044535e8c05ad913a02c08ab06bab1602fb085290f225de206505ba46a`)
36
+ is **invalidated** by this version change. It no longer applies.
37
+
38
+ ---
39
+
40
+ ### Required Fresh Smoke Before Publish Authorization
41
+
42
+ Because the version changed from `0.1.0.pre.stage2` to `0.1.0.alpha.1`, the
43
+ following fresh smoke must be run and accepted before any publish authorization
44
+ can open:
45
+
46
+ | Smoke | Required |
47
+ |---|---|
48
+ | Post-prep package/install smoke for `igniter_lang 0.1.0.alpha.1` | **yes** |
49
+ | Post-prep profile-source installed smoke for `igniter_lang 0.1.0.alpha.1` | **yes** |
50
+
51
+ Minimum checks required in each smoke run:
52
+
53
+ - gemspec syntax check
54
+ - `gem build` → `igniter_lang-0.1.0.alpha.1.gem`
55
+ - isolated gem install (no repo-relative `-I`)
56
+ - installed `igc` present at `$BIN_DIR/igc`
57
+ - `require "igniter_lang"` without repo path leak
58
+ - positive corpus compile via installed `igc`
59
+ - negative corpus refusal via installed `igc`
60
+ - valid finalized profile-source success
61
+ - malformed JSON profile-source preflight refusal
62
+ - semantic wrong-kind profile-source refusal
63
+ - artifact SHA256 captured for the new gem
64
+
65
+ ---
66
+
67
+ ### Bounded CLI
68
+
69
+ The installed `igc` CLI supports bounded contract compilation:
70
+
71
+ ```text
72
+ igc compile SOURCE --out OUT.igapp
73
+ igc compile SOURCE --out OUT.igapp --compiler-profile-source PATH.json
74
+ ```
75
+
76
+ `PATH.json` must be an already-finalized `compiler_profile_id_source` JSON object.
77
+ The CLI does not discover, default, finalize, or infer compiler profile sources.
78
+
79
+ ---
80
+
81
+ ### Exclusions
82
+
83
+ The following are **explicitly excluded** from this release:
84
+
85
+ | Surface | Status |
86
+ |---|---|
87
+ | Stable release | Not this version |
88
+ | Production-ready | No claim |
89
+ | Public demo-ready | No claim |
90
+ | All grammar support | No claim — bounded accepted corpus only |
91
+ | Branch/conditional `if_expr` | **Excluded** from first RC scope |
92
+ | Profile finalization | Closed — explicit finalized path transport only |
93
+ | Profile discovery | Closed |
94
+ | Profile defaulting | Closed |
95
+ | Named/generated profile lookup | Closed |
96
+ | Inline JSON profile source | Closed |
97
+ | Env/config/sidecar profile lookup | Closed |
98
+ | Spark integration | Out of scope |
99
+ | Ruby Framework compatibility | Not claimed |
100
+ | Runtime / Ledger / TBackend / BiHistory | Not claimed |
101
+ | Public API/CLI widening | No widening beyond accepted `--compiler-profile-source PATH.json` |
102
+ | RubyGems availability | Not yet — publish not authorized |
103
+ | Release execution | Closed pending fresh smoke and explicit authorization |
104
+ | Tag/push/sign/deploy | Closed |
105
+
106
+ ---
107
+
108
+ ### What Remains Closed
109
+
110
+ Release execution, RubyGems publish, git tag creation, git push, signing,
111
+ and deployment remain closed until:
112
+
113
+ 1. Fresh package/install smoke passes for `igniter_lang 0.1.0.alpha.1`
114
+ 2. Fresh profile-source installed smoke passes for `igniter_lang 0.1.0.alpha.1`
115
+ 3. RubyGems version-collision check is run for `0.1.0.alpha.1`
116
+ 4. Tag collision check is run for `igniter-lang-v0.1.0.alpha.1`
117
+ 5. Explicit release-execution authorization is granted by a separate card
118
+
119
+ ---
120
+
121
+ ### Non-Claims
122
+
123
+ ```text
124
+ not_stable: true
125
+ not_production_ready: true
126
+ not_public_demo_ready: true
127
+ not_all_grammar_support: true
128
+ branch_conditional_if_expr_excluded: true
129
+ profile_finalization_closed: true
130
+ profile_discovery_closed: true
131
+ profile_defaulting_closed: true
132
+ spark_out_of_scope: true
133
+ ruby_framework_compatibility_not_claimed: true
134
+ rubygems_available_claim: false
135
+ release_execution_authorized: false
136
+ tag_push_sign_deploy_authorized: false
137
+ ```
data/bin/igc ADDED
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require "igniter_lang/cli"
5
+
6
+ success = IgniterLang::CLI.run(ARGV)
7
+ exit(success ? 0 : 1)