Skip to content

Commit da39276

Browse files
committed
fix(release): tighten package audit gates
1 parent 259257c commit da39276

7 files changed

Lines changed: 24 additions & 13 deletions

File tree

‎.gitignore‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ editors/vscode-cellscript/dist/
33

44
.DS_Store
55
.vscode/
6+
__pycache__/
7+
*.py[cod]
68
*.swp
79
*.swo
810

@@ -14,6 +16,8 @@ editors/vscode-cellscript/dist/
1416
.cell/
1517
Cell.lock
1618

19+
proposals/
20+
1721
# Keep translated prose out of the CellScript repository by default.
1822
# README_CH.md is the one maintained Chinese document.
1923
*_CN.md

‎Cargo.toml‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,16 @@ autobins = false
77
authors = ["CellScript Core Team"]
88
description = "CellScript compiler for the Cell model"
99
license = "MIT"
10-
repository = "https://github.com/tsukifune-kosei/CellScript"
10+
repository = "https://github.com/a19q3/CellScript"
1111
exclude = [
1212
".gitignore",
1313
".rustfmt.toml",
1414
".github/",
1515
"docs/",
1616
"docs/wiki/",
1717
"editors/",
18+
"proposals/",
19+
"scripts/__pycache__/",
1820
"src/bin/",
1921
"tools/",
2022
]

‎roadmap/CELLSCRIPT_ROADMAP.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ The current project direction is simple:
2828
| Surface syntax | Low-risk syntax pass and 0.13.2 syntax-governance hardening are implemented; authority-sensitive syntax remains staged. | [Surface elegance RFC](../docs/CELLSCRIPT_SURFACE_ELEGANCE_RFC.md), [Syntax-combination audit](../docs/CELLSCRIPT_SYNTAX_COMBO_AUDIT_METHODOLOGY.md), [0.13.2 release notes](../docs/releases/CELLSCRIPT_0_13_2_RELEASE_NOTES.md) |
2929
| Collections | Stack-backed fixed-width `Vec<T>` helper surface is implemented; cell-backed and generic map ownership remain fail-closed. | [Collections support matrix](../docs/CELLSCRIPT_COLLECTIONS_SUPPORT_MATRIX.md), [0.13 release scope](../docs/releases/CELLSCRIPT_0_13_RELEASE_SCOPE.md) |
3030
| CKB production evidence | Bundled actions and locks have builder-backed local CKB evidence; full release claims also require stateful coverage for every production acceptance action. | [Metadata and production gates wiki](../docs/wiki/Tutorial-06-Metadata-Verification-and-Production-Gates.md) |
31-
| Documentation and wiki | Wiki is version-neutral, cookbook-oriented, includes a standard-library chapter, and is published separately to GitHub Wiki. | [GitHub Wiki](https://github.com/tsukifune-kosei/CellScript/wiki) |
31+
| Documentation and wiki | Wiki is version-neutral, cookbook-oriented, includes a standard-library chapter, and is published separately to GitHub Wiki. | [GitHub Wiki](https://github.com/a19q3/CellScript/wiki) |
3232

3333
## Release Tracks
3434

@@ -209,7 +209,7 @@ Future work:
209209

210210
Source documents:
211211

212-
- [GitHub Wiki](https://github.com/tsukifune-kosei/CellScript/wiki)
212+
- [GitHub Wiki](https://github.com/a19q3/CellScript/wiki)
213213
- [Surface elegance RFC](../docs/CELLSCRIPT_SURFACE_ELEGANCE_RFC.md)
214214

215215
## Roadmap Discipline
-53.8 KB
Binary file not shown.

‎scripts/cellscript_gate.sh‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ check_package_contents() {
171171
package_files="$(mktemp)"
172172
printf '\n==> cargo package --list --locked --allow-dirty --offline\n'
173173
cargo package --list --locked --allow-dirty --offline | tee "$package_files"
174-
if grep -E '^(\.github/|docs/|editors/|tools/|src/bin/)' "$package_files"; then
174+
if grep -E '^(\.github/|docs/|editors/|proposals/|tools/|src/bin/|.*__pycache__/|.*\.py[co]$)' "$package_files"; then
175175
printf 'crates.io package includes repository-only files or unpublished helper binaries\n' >&2
176176
exit 1
177177
fi

‎scripts/validate_cellscript_tooling_release.py‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,14 @@ def main() -> int:
137137
'"docs/"',
138138
'"docs/wiki/"',
139139
'"editors/"',
140+
'"proposals/"',
141+
'"scripts/__pycache__/"',
140142
]:
141143
require(excluded in cargo_toml, f"Cargo.toml package exclude is missing {excluded}")
142144

145+
require("__pycache__/" in read(".gitignore"), ".gitignore must ignore generated Python bytecode directories")
146+
require("*.py[cod]" in read(".gitignore"), ".gitignore must ignore generated Python bytecode files")
147+
143148
print("valid CellScript tooling release boundary")
144149
return 0
145150

‎src/ir/mod.rs‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7320,7 +7320,7 @@ mod tests {
73207320
}
73217321

73227322
#[test]
7323-
fn ir_verifier_rejects_raw_syscall_status_returned_as_domain_u64() {
7323+
fn status_boundary_ir_verifier_rejects_raw_syscall_status_returned_as_domain_u64() {
73247324
let status = raw_status_var(0);
73257325
let ir = module_with_instructions(
73267326
vec![raw_status_call(Some(status.clone()))],
@@ -7334,7 +7334,7 @@ mod tests {
73347334
}
73357335

73367336
#[test]
7337-
fn ir_verifier_rejects_raw_syscall_status_stored_as_dsl_local() {
7337+
fn status_boundary_ir_verifier_rejects_raw_syscall_status_stored_as_dsl_local() {
73387338
let status = raw_status_var(0);
73397339
let ir = module_with_instructions(
73407340
vec![
@@ -7351,7 +7351,7 @@ mod tests {
73517351
}
73527352

73537353
#[test]
7354-
fn ir_verifier_rejects_dropped_raw_syscall_status() {
7354+
fn status_boundary_ir_verifier_rejects_dropped_raw_syscall_status() {
73557355
let ir = module_with_instructions(vec![raw_status_call(None)], None, IrTerminator::Return(None));
73567356

73577357
let err = verify_module(&ir).unwrap_err();
@@ -7360,7 +7360,7 @@ mod tests {
73607360
}
73617361

73627362
#[test]
7363-
fn ir_verifier_rejects_raw_syscall_status_in_tuple_field() {
7363+
fn status_boundary_ir_verifier_rejects_raw_syscall_status_in_tuple_field() {
73647364
let status = raw_status_var(0);
73657365
let tuple = IrVar { id: 1, name: "tuple".to_string(), ty: IrType::Tuple(vec![IrType::U64]) };
73667366
let ir = module_with_instructions(
@@ -7375,7 +7375,7 @@ mod tests {
73757375
}
73767376

73777377
#[test]
7378-
fn ir_verifier_rejects_raw_syscall_status_as_domain_call_argument() {
7378+
fn status_boundary_ir_verifier_rejects_raw_syscall_status_as_domain_call_argument() {
73797379
let status = raw_status_var(0);
73807380
let ir = module_with_instructions(
73817381
vec![
@@ -7406,7 +7406,7 @@ mod tests {
74067406
}
74077407

74087408
#[test]
7409-
fn ir_verifier_rejects_raw_syscall_status_produced_without_checked_consumer() {
7409+
fn status_boundary_ir_verifier_rejects_raw_syscall_status_produced_without_checked_consumer() {
74107410
let status = raw_status_var(0);
74117411
let ir = module_with_instructions(vec![raw_status_call(Some(status))], None, IrTerminator::Return(None));
74127412

@@ -7416,7 +7416,7 @@ mod tests {
74167416
}
74177417

74187418
#[test]
7419-
fn ir_verifier_rejects_unit_runtime_helper_status_stored_as_domain_u64() {
7419+
fn status_boundary_ir_verifier_rejects_unit_runtime_helper_status_stored_as_domain_u64() {
74207420
let status = raw_status_var(0);
74217421
let ir = module_with_instructions(vec![raw_unit_helper_call(Some(status))], None, IrTerminator::Return(None));
74227422

@@ -7426,14 +7426,14 @@ mod tests {
74267426
}
74277427

74287428
#[test]
7429-
fn ir_verifier_allows_unit_runtime_helper_when_status_is_checked_by_codegen_boundary() {
7429+
fn status_boundary_ir_verifier_allows_unit_runtime_helper_when_status_is_checked_by_codegen_boundary() {
74307430
let ir = module_with_instructions(vec![raw_unit_helper_call(None)], None, IrTerminator::Return(None));
74317431

74327432
verify_module(&ir).expect("unit helper statement should be checked by codegen boundary");
74337433
}
74347434

74357435
#[test]
7436-
fn ir_verifier_allows_domain_u64_return_tuple_and_call_argument() {
7436+
fn status_boundary_ir_verifier_allows_domain_u64_return_tuple_and_call_argument() {
74377437
let value = IrVar { id: 0, name: "value".to_string(), ty: IrType::U64 };
74387438
let tuple = IrVar { id: 1, name: "tuple".to_string(), ty: IrType::Tuple(vec![IrType::U64]) };
74397439
let ir = module_with_instructions(

0 commit comments

Comments
 (0)