@senoldogann/context-manager 0.1.8 → 0.1.9

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.
Files changed (2) hide show
  1. package/bin/ccm.js +7 -1
  2. package/package.json +1 -1
package/bin/ccm.js CHANGED
@@ -126,8 +126,8 @@ async function getBinary() {
126
126
 
127
127
  function downloadFile(url, dest) {
128
128
  return new Promise((resolve, reject) => {
129
- const file = fs.createWriteStream(dest);
130
129
  https.get(url, (response) => {
130
+ // Handle redirects BEFORE creating file
131
131
  if (response.statusCode === 302 || response.statusCode === 301) {
132
132
  downloadFile(response.headers.location, dest).then(resolve).catch(reject);
133
133
  return;
@@ -136,10 +136,16 @@ function downloadFile(url, dest) {
136
136
  reject(new Error(`Failed to download: ${response.statusCode}`));
137
137
  return;
138
138
  }
139
+ // Only create file after we know we have a valid response
140
+ const file = fs.createWriteStream(dest);
139
141
  response.pipe(file);
140
142
  file.on('finish', () => {
141
143
  file.close(resolve);
142
144
  });
145
+ file.on('error', (err) => {
146
+ fs.unlink(dest, () => { });
147
+ reject(err);
148
+ });
143
149
  }).on('error', (err) => {
144
150
  fs.unlink(dest, () => { });
145
151
  reject(err);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@senoldogann/context-manager",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "LLM Context Manager MCP Server & CLI wrapper using npx",
5
5
  "main": "bin/ccm.js",
6
6
  "bin": {