@maccesar/titools 5.2.0 → 5.2.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.
- package/CONTRIBUTING.md +69 -0
- package/README.md +80 -72
- package/agents/ti-pro.md +1 -1
- package/commands/ti-audit.md +2 -2
- package/docs/examples.md +91 -0
- package/docs/knowledge-index.md +57 -0
- package/lib/downloader.js +1 -1
- package/package.json +4 -2
- package/skills/purgetss/references/multi-density-images.md +1 -1
- package/skills/ti-admob-unified/SKILL.md +21 -7
- package/skills/ti-admob-unified/assets/example/app.js +229 -25
- package/skills/ti-admob-unified/assets/example/lib/ads.js +30 -2
- package/skills/ti-admob-unified/assets/example/library-usage.js +33 -1
- package/skills/ti-admob-unified/references/api-reference.md +39 -16
- package/skills/ti-admob-unified/references/banners.md +9 -9
- package/skills/ti-admob-unified/references/contributing.md +14 -9
- package/skills/ti-admob-unified/references/dependencies.md +31 -25
- package/skills/ti-admob-unified/references/fullscreen.md +43 -28
- package/skills/ti-admob-unified/references/game-monetization.md +138 -7
- package/skills/ti-admob-unified/references/getting-started.md +75 -31
- package/skills/ti-admob-unified/references/index.md +5 -2
- package/skills/ti-admob-unified/references/integration.md +8 -6
- package/skills/ti-admob-unified/references/library.md +41 -10
- package/skills/ti-admob-unified/references/mediation-parity.md +17 -0
- package/skills/ti-admob-unified/references/mediation.md +22 -9
- package/skills/ti-admob-unified/references/migration.md +11 -7
- package/skills/ti-admob-unified/references/module-changelog.md +41 -11
- package/skills/ti-admob-unified/references/privacy.md +35 -8
- package/skills/ti-admob-unified/references/production.md +67 -0
- package/skills/ti-admob-unified/references/rewarded-interstitial.md +101 -0
- package/skills/ti-admob-unified/references/roadmap.md +28 -31
- package/skills/ti-admob-unified/references/source-notes.md +51 -4
- package/skills/ti-admob-unified/references/source-snapshot.json +249 -45
- package/skills/ti-admob-unified/references/third-party-notices.md +4 -4
- package/skills/ti-game/SKILL.md +23 -6
- package/skills/ti-game/references/api.md +34 -30
- package/skills/ti-game/references/debugging-performance.md +18 -9
- package/skills/ti-game/references/examples.md +103 -20
- package/skills/ti-game/references/input.md +101 -0
- package/skills/ti-game/references/patterns.md +39 -15
- package/skills/ti-game/references/physics.md +80 -52
- package/skills/ti-game/references/project-setup.md +118 -56
- package/skills/ti-game/references/recipes-action.md +107 -8
- package/skills/ti-game/references/recipes-adventure-effects.md +41 -9
- package/skills/ti-game/references/roadmap.md +10 -3
- package/skills/ti-game/references/source-notes.md +81 -0
- package/skills/ti-game/references/tilemaps.md +12 -4
- package/skills/ti-synthengine/SKILL.md +81 -95
- package/skills/ti-synthengine/assets/example/README.md +84 -0
- package/skills/ti-synthengine/assets/example/app.js +1178 -0
- package/skills/ti-synthengine/assets/example/lib/sequenceOwner.js +83 -0
- package/skills/ti-synthengine/assets/example/lib/sequenceScore.js +25 -0
- package/skills/ti-synthengine/references/advanced-examples.md +174 -0
- package/skills/ti-synthengine/references/android-sim80-correction-evidence.zip +0 -0
- package/skills/ti-synthengine/references/android-sim80-correction.json +162 -0
- package/skills/ti-synthengine/references/api.md +434 -380
- package/skills/ti-synthengine/references/audio-engine.md +157 -230
- package/skills/ti-synthengine/references/bypass-physical-recheck-evidence.zip +0 -0
- package/skills/ti-synthengine/references/examples.md +123 -253
- package/skills/ti-synthengine/references/frontier-android-evidence.zip +0 -0
- package/skills/ti-synthengine/references/frontier-ipad-evidence.zip +0 -0
- package/skills/ti-synthengine/references/frontier-physical-validation.json +1918 -0
- package/skills/ti-synthengine/references/guide.md +188 -156
- package/skills/ti-synthengine/references/performance-review-evidence.zip +0 -0
- package/skills/ti-synthengine/references/performance-review.json +1146 -0
- package/skills/ti-synthengine/references/physical-validation.json +1457 -0
- package/skills/ti-synthengine/references/recipes-interaction.md +549 -0
- package/skills/ti-synthengine/references/recipes.md +423 -599
- package/skills/ti-synthengine/references/recommendations.md +63 -113
- package/skills/ti-synthengine/references/sound-design.md +134 -258
- package/skills/ti-synthengine/references/source-notes.md +93 -105
- package/skills/ti-synthengine/references/source-snapshot.json +379 -32
- package/skills/ti-synthengine/references/stats-performance.md +64 -20
- package/skills/ti-synthengine/references/studio-validation.json +6202 -0
- package/skills/ti-synthengine/references/troubleshooting.md +109 -121
- package/skills/ti-synthengine/references/unified-bypass-performance.json +22425 -0
- package/skills/ti-synthengine/references/unified-validation.json +314 -0
- package/AGENTS-VERCEL-RESEARCH.md +0 -175
|
@@ -1,121 +1,109 @@
|
|
|
1
1
|
# Maintaining the synthesis snapshot
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
[source-snapshot.json](source-snapshot.json).
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
3
|
+
These references mirror the **public TiSynthEngine 1.0.0 release** at
|
|
4
|
+
`e7cbbe8a6f9ab38088fd8029c7b43cef6501101f`, recorded in
|
|
5
|
+
[source-snapshot.json](source-snapshot.json). The clean local checkout and remote
|
|
6
|
+
main matched that commit on 2026-10-24. The repository is public; the Android
|
|
7
|
+
and iOS releases are published, neither draft nor prerelease. Module availability
|
|
8
|
+
is independent of publishing a new TiTools version.
|
|
9
|
+
|
|
10
|
+
## Public downloads and artifact provenance
|
|
11
|
+
|
|
12
|
+
| Platform | Published release | Package SHA-256 |
|
|
13
|
+
| --- | --- | --- |
|
|
14
|
+
| Android | [android-1.0.0](https://github.com/macCesar/TiSynthEngine/releases/tag/android-1.0.0) | `cf3510f290eca6dd00e8e0742a7db4f09dd2b8c4ef9270ed1f34d30eb32389cf` |
|
|
15
|
+
| iOS / Mac Catalyst | [ios-1.0.0](https://github.com/macCesar/TiSynthEngine/releases/tag/ios-1.0.0) | `bc2e3f88c2945df721dd2196dfbb852c64aa98954b04460adf56ca41c75e6e91` |
|
|
16
|
+
|
|
17
|
+
Both platform tags and `v1.0.0` point at the reviewed commit; only the two
|
|
18
|
+
platform tags have GitHub release pages. Downloaded ZIPs were independently
|
|
19
|
+
hashed and inspected: module ID `ti.synthengine`, version `1.0.0`, minimum
|
|
20
|
+
Titanium `13.2.0.GA`; Android includes four ABIs and the Apple manifest enables
|
|
21
|
+
Mac Catalyst. See the [guide](guide.md) for Android API35 and iOS15 requirements,
|
|
22
|
+
app-root ZIP installation and both `tiapp.xml` declarations. These checks do not
|
|
23
|
+
constitute a fresh device installation or audio acceptance run.
|
|
15
24
|
|
|
16
25
|
## Sources and permitted transformations
|
|
17
26
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
`example/app.js` at the base commit. Its label explicitly distinguishes that
|
|
30
|
-
demo from the pending statistics example in the reviewed working tree; a
|
|
31
|
-
GitHub commit link cannot expose uncommitted changes. It requires access to
|
|
32
|
-
the official module repository; the runnable app is not bundled here.
|
|
33
|
-
- `examples.md` and `sound-design.md` retain their TiTools links to
|
|
34
|
-
[curated recipes](recipes.md). These additions are recorded as reversible
|
|
35
|
-
`link_fixes`, with the complete original and mirrored Markdown fragments.
|
|
36
|
-
|
|
37
|
-
For Markdown mirrors, the snapshot test removes the header and generated
|
|
38
|
-
navigation, reverses those fragments, and checks the full original source hash.
|
|
39
|
-
The raw JSON is checked byte for byte. Update the declared
|
|
40
|
-
transformations when an intentional source-derived edit is reviewed; never
|
|
41
|
-
regenerate hashes merely to conceal an unexplained difference.
|
|
27
|
+
Eight official Markdown documents are mirrored into nine parts, including the
|
|
28
|
+
ordered examples/advanced-examples split. The current snapshot inventories all
|
|
29
|
+
complete JSON reports, bundled example assets and linked raw-evidence archives.
|
|
30
|
+
The new [performance review](performance-review.json) and its raw archive are
|
|
31
|
+
preserved alongside historical reports; none is replaced by a favorable summary.
|
|
32
|
+
Read snapshot records for exact counts and hashes. Example JavaScript and raw
|
|
33
|
+
reports/archives remain byte-identical to source.
|
|
34
|
+
|
|
35
|
+
Each Markdown part and the example README have a local-commit provenance header and recorded navigation transformations. Native-backed corrections to stale official prose are also declared as reversible `link_fixes`; the source hash still identifies the original official text, not the corrected mirror. Reversible `link_fixes` rebase links into the split advanced examples, preserve [curated recipes](recipes.md), and resolve current example links to bundled assets. The example README points back to this skill's current API and guides. All three example JavaScript files remain byte-identical to source; none requires a historical GitHub snapshot.
|
|
36
|
+
|
|
37
|
+
The fidelity regression strips provenance/navigation, concatenates example parts, reverses declared transformations and compares the complete source hash. Raw records must remain byte-identical. Update transformations intentionally; never change hashes merely to hide unexplained source drift.
|
|
42
38
|
|
|
43
39
|
## Protected curated content
|
|
44
40
|
|
|
45
|
-
[recipes.md](recipes.md)
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
41
|
+
[Retro recipes](recipes.md) and [interaction/instrument recipes](recipes-interaction.md) are TiTools contributions. Preserve their acoustic intent, lifecycle ownership and entry links when upstream docs change. Their native sequence examples keep the original millisecond onsets and total envelopes through separate `duration` and `length`; no JavaScript timer schedules notes. The repeated chord is now one centered native chord sequence; the separate one-off layered chord retains its per-voice stereo pans.
|
|
42
|
+
|
|
43
|
+
Focused executable recipe tests inspect submitted intervals, envelope lengths, pitch and cancellation IDs. They do not render audio or measure native callback timing.
|
|
44
|
+
|
|
45
|
+
## Current contract and acceptance boundaries
|
|
46
|
+
|
|
47
|
+
`start` configures one engine, up to 32 shared voices and one to four preallocated sequence slots. `playSequence` is the only successive-sound scheduler and returns a positive ID or zero. Sequence edits, state queries and cancellation name that ID. Global `setTempo` governs beat timing and synchronized modulation; millisecond sequences retain fixed times. Finite playback is the default, and circular patterns explicitly opt into looping.
|
|
48
|
+
|
|
49
|
+
Selective `music`, `effects`, `ui` and `ambience` categories feed one shared effect chain; an explicit per-voice send overrides category selection. Live spatial position, noise clock, low-pass cutoff and compatible continuous voice controls ramp over 10 ms while preserving history. Priorities protect higher-priority voices without reserved quotas. See the [API](api.md) for exact limits, source compatibility, return values and event delivery.
|
|
50
|
+
|
|
51
|
+
The [performance review](performance-review.json) documents the accepted
|
|
52
|
+
control-thread changes: partial sequence-bank preparation and removal of idle
|
|
53
|
+
allocations/orphan held-position metadata. The Apple rendering bundle was
|
|
54
|
+
rejected after a physical stereo regression, and production returned to the
|
|
55
|
+
stable callback. Earlier candidate timings and fidelity checks remain evidence
|
|
56
|
+
of that rejected candidate, not a promised Apple render speedup. Current matched
|
|
57
|
+
Apple bypass measurements and actual hardware/rate/block-size scope are in the
|
|
58
|
+
report; global performance acceptance remains open.
|
|
59
|
+
|
|
60
|
+
Historical statistics, Studio/unified transport, physical/Frontier measurements
|
|
61
|
+
and Android FIR8 correction reports keep their original artifact and acceptance
|
|
62
|
+
boundaries. The short Android Sim80 headphone result had zero backend xruns and
|
|
63
|
+
accepted listening; it does not close the distinct ten-minute maximum-load,
|
|
64
|
+
bypass, memory and strict Frontier presentation criteria. Current evidence and
|
|
65
|
+
rejected candidates must not be combined into a general pass. This skill update
|
|
66
|
+
did not rerun devices, install binaries or alter native source.
|
|
67
|
+
|
|
68
|
+
The October 23 native findings were independently rechecked against the
|
|
69
|
+
published source on October 24. These current differences remain explicit;
|
|
70
|
+
hash fidelity alone cannot establish them:
|
|
71
|
+
|
|
72
|
+
- iOS timed tone/chord command construction still rounds accepted zero attack
|
|
73
|
+
and release to at least one sample; Android preserves zero. Validator
|
|
74
|
+
acceptance does not establish identical sample envelopes.
|
|
75
|
+
- iOS early tempo/sequence/processing rejections and incompatible held spatial/
|
|
76
|
+
modulation edits can bypass rejection counters. Android also leaves some
|
|
77
|
+
unknown/retired sequence-stop returns uncounted. The recorded reason sum is
|
|
78
|
+
consistent with recorded totals, not a complete API-call rejection tally.
|
|
79
|
+
- Sequence cutoff coefficients currently refresh every 16 samples on Android
|
|
80
|
+
and every 8 samples on Apple; both use note length but do not promise identical
|
|
81
|
+
sample output. See [engine details](audio-engine.md).
|
|
82
|
+
- Android `getDefaults()` includes capabilities and additional limit metadata
|
|
83
|
+
that the current iOS dictionary omits. Both expose the corresponding APIs;
|
|
84
|
+
detect methods rather than requiring Android-only metadata flags. Sequence
|
|
85
|
+
intervals use different beat and millisecond ranges; see [API](api.md).
|
|
86
|
+
- Remaining stale official claims are corrected only where verified against
|
|
87
|
+
current native behavior, with exact reversible transformations. Corrections
|
|
88
|
+
already adopted upstream are removed from the transformation list.
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
These findings are skill corrections and module implementation findings, not
|
|
92
|
+
native fixes. No module code, public range or hardware acceptance was changed.
|
|
93
|
+
A validator corpus establishes accepted/rejected dictionaries, not sample-identical
|
|
94
|
+
rendering on a physical device. Consumer scenarios and exact native locators
|
|
95
|
+
are recorded in the maintainer's October 23 audit evidence.
|
|
74
96
|
|
|
75
97
|
## Upstream documents outside the mirror set
|
|
76
98
|
|
|
77
|
-
The
|
|
78
|
-
`documentation/third-party-notices.md` in `excluded_documents`, including each
|
|
79
|
-
reviewed hash and reason. SKILL.md supplies the distributed navigation;
|
|
80
|
-
dependency notices accompany the official module and native packages. This
|
|
81
|
-
skill does not distribute Oboe, native binaries or KEMAR impulse responses.
|
|
82
|
-
Changes or deletion of these excluded documents still require review. New
|
|
83
|
-
upstream documents remain visible as new documents until reviewed and mapped
|
|
84
|
-
or explicitly excluded; these records are not a blanket ignore rule.
|
|
99
|
+
The official index is replaced by this skill's task routing. Dependency/license notices remain in the official module and binary packages. Both are recorded with hashes and reasons in `excluded_documents`, so changed or newly added documents still require review.
|
|
85
100
|
|
|
86
101
|
## Verification after a reviewed update
|
|
87
102
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
103
|
+
Run the focused mirror/link and recipe tests, then:
|
|
104
|
+
|
|
105
|
+
```sh
|
|
106
|
+
node scripts/verify-module-snapshot.mjs --source /path/to/TiSynthEngine --skill ti-synthengine
|
|
91
107
|
```
|
|
92
108
|
|
|
93
|
-
|
|
94
|
-
commit drift, source/mirror changes, missing files and new official documents.
|
|
95
|
-
It never fetches, pulls or synchronizes. In the module checkout, also run the
|
|
96
|
-
applicable official documentation, contract and DSP checks described in
|
|
97
|
-
[audio-engine.md](audio-engine.md#regression-coverage).
|
|
98
|
-
|
|
99
|
-
Regenerate navigation only after inspecting the generator's dry run. Refresh
|
|
100
|
-
the snapshot's mirror hashes after navigation and declared additions are final.
|
|
101
|
-
Before committing, inspect source differences and the distributed package;
|
|
102
|
-
neither an old passing test count nor hash equality substitutes for that review.
|
|
103
|
-
|
|
104
|
-
## Native findings and acceptance boundaries
|
|
105
|
-
|
|
106
|
-
At the 2026-10-14 audit, iOS command construction converted zero attack/release
|
|
107
|
-
to at least one sample; Android preserved zero. The shared envelope therefore
|
|
108
|
-
has a one-sample boundary difference. This remains an upstream implementation
|
|
109
|
-
finding: no native changes were made during the documentation correction.
|
|
110
|
-
Recheck command construction or rendered output before calling it resolved.
|
|
111
|
-
|
|
112
|
-
Java/iOS corpus parity covers validator acceptance/reasons, not rendered
|
|
113
|
-
samples. The shared FIR suite and Android host tests establish narrower DSP
|
|
114
|
-
properties. Inspect their current assertions for rate endpoints and exact
|
|
115
|
-
tail-history coverage rather than assuming every advertised case is tested.
|
|
116
|
-
The JavaScript rhythm checks interpret submitted options; they are not native
|
|
117
|
-
scheduler timing measurements.
|
|
118
|
-
|
|
119
|
-
Device startup/route behavior, iOS rendering, headphone localization, CPU,
|
|
120
|
-
battery and underruns need their own evidence. Contract-valid recipes are not
|
|
121
|
-
automatically pleasant or perceptually well localized.
|
|
109
|
+
The verifier checks source/mirror hashes, exclusions, new documents, base HEAD and the exact tracked/untracked worktree fingerprint. Refresh that fingerprint only after the source changes are finished. No npm version, publication or native-device acceptance follows from this procedure.
|