argustack 0.1.0 → 0.1.4

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/dist/cli/index.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "argustack",
3
- "version": "0.1.0",
3
+ "version": "0.1.4",
4
4
  "description": "Project analysis platform — Jira + Git + DB",
5
5
  "type": "module",
6
6
  "bin": {
@@ -37,6 +37,10 @@
37
37
  "cli",
38
38
  "devtools"
39
39
  ],
40
+ "repository": {
41
+ "type": "git",
42
+ "url": "https://github.com/InfoCodeStreamly/argustack"
43
+ },
40
44
  "license": "MIT",
41
45
  "engines": {
42
46
  "node": ">=20"
@@ -1,3 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare function registerJiraCommands(program: Command): void;
3
- //# sourceMappingURL=jira.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jira.d.ts","sourceRoot":"","sources":["../../src/cli/jira.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoF3D"}
package/dist/cli/jira.js DELETED
@@ -1,78 +0,0 @@
1
- import chalk from 'chalk';
2
- import ora from 'ora';
3
- import dotenv from 'dotenv';
4
- import { requireWorkspace } from '../workspace/resolver.js';
5
- import { readConfig } from '../workspace/config.js';
6
- import { JiraProvider } from '../adapters/jira/index.js';
7
- import { PostgresStorage } from '../adapters/postgres/index.js';
8
- import { PullUseCase } from '../use-cases/pull.js';
9
- export function registerJiraCommands(program) {
10
- const jira = program.command('jira').description('Jira operations');
11
- jira
12
- .command('pull')
13
- .description('Pull all issues from Jira into PostgreSQL')
14
- .option('-p, --project <key>', 'Pull specific project only')
15
- .option('--since <date>', 'Pull issues updated since date (YYYY-MM-DD)')
16
- .action(async (options) => {
17
- try {
18
- // 1. Find workspace, check source is enabled, load config
19
- const workspaceRoot = requireWorkspace();
20
- const config = readConfig(workspaceRoot);
21
- if (!config?.sources.jira?.enabled) {
22
- console.log(chalk.red('\n Jira is not configured in this workspace.'));
23
- console.log(chalk.dim(` Add it: ${chalk.cyan('argustack add jira')}`));
24
- process.exit(1);
25
- }
26
- dotenv.config({ path: `${workspaceRoot}/.env` });
27
- const { JIRA_URL, JIRA_EMAIL, JIRA_API_TOKEN } = process.env;
28
- const { DB_HOST, DB_PORT, DB_USER, DB_PASSWORD, DB_NAME } = process.env;
29
- if (!JIRA_URL || !JIRA_EMAIL || !JIRA_API_TOKEN) {
30
- console.log(chalk.red('Missing Jira credentials in .env'));
31
- console.log(chalk.dim('Required: JIRA_URL, JIRA_EMAIL, JIRA_API_TOKEN'));
32
- process.exit(1);
33
- }
34
- // 2. Create adapters (concrete implementations)
35
- const source = new JiraProvider({
36
- host: JIRA_URL,
37
- email: JIRA_EMAIL,
38
- apiToken: JIRA_API_TOKEN,
39
- });
40
- const storage = new PostgresStorage({
41
- host: DB_HOST ?? 'localhost',
42
- port: parseInt(DB_PORT ?? '5434', 10),
43
- user: DB_USER ?? 'argustack',
44
- password: DB_PASSWORD ?? 'argustack_local',
45
- database: DB_NAME ?? 'argustack',
46
- });
47
- // 3. Create use case (pure logic, doesn't know about Jira or PostgreSQL)
48
- const pullUseCase = new PullUseCase(source, storage);
49
- // 4. Execute
50
- const spinner = ora('Starting pull...').start();
51
- const pullOptions = {
52
- onProgress: (msg) => {
53
- spinner.text = msg;
54
- },
55
- };
56
- if (options.project) {
57
- pullOptions.projectKey = options.project;
58
- }
59
- if (options.since) {
60
- pullOptions.since = options.since;
61
- }
62
- const results = await pullUseCase.execute(pullOptions);
63
- spinner.succeed('Pull complete!');
64
- // 5. Summary
65
- console.log('');
66
- for (const r of results) {
67
- console.log(chalk.green(` ${r.projectKey}: ${r.issuesCount} issues, ${r.commentsCount} comments, ${r.changelogsCount} changelogs`));
68
- }
69
- console.log('');
70
- await storage.close();
71
- }
72
- catch (err) {
73
- console.error(chalk.red(`\n Error: ${err instanceof Error ? err.message : String(err)}`));
74
- process.exit(1);
75
- }
76
- });
77
- }
78
- //# sourceMappingURL=jira.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jira.js","sourceRoot":"","sources":["../../src/cli/jira.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=connection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- export {};
2
- // PostgreSQL connection
3
- // TODO: implement
4
- //# sourceMappingURL=connection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/db/connection.ts"],"names":[],"mappings":";AAAA,wBAAwB;AACxB,kBAAkB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=import.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../src/db/import.ts"],"names":[],"mappings":""}
package/dist/db/import.js DELETED
@@ -1,4 +0,0 @@
1
- export {};
2
- // JSON → PostgreSQL bulk insert
3
- // TODO: implement
4
- //# sourceMappingURL=import.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/db/import.ts"],"names":[],"mappings":";AAAA,gCAAgC;AAChC,kBAAkB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=schema.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":""}
package/dist/db/schema.js DELETED
@@ -1,4 +0,0 @@
1
- export {};
2
- // Database schema creation and migrations
3
- // TODO: implement
4
- //# sourceMappingURL=schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":";AAAA,0CAA0C;AAC1C,kBAAkB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- export {};
2
- // Jira API client wrapper
3
- // TODO: implement
4
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/jira/client.ts"],"names":[],"mappings":";AAAA,0BAA0B;AAC1B,kBAAkB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=pull.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/jira/pull.ts"],"names":[],"mappings":""}
package/dist/jira/pull.js DELETED
@@ -1,5 +0,0 @@
1
- export {};
2
- // Paginated pull from Jira API → raw JSON files
3
- // All fields as-is, no mapping, no renaming
4
- // TODO: implement
5
- //# sourceMappingURL=pull.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/jira/pull.ts"],"names":[],"mappings":";AAAA,gDAAgD;AAChD,4CAA4C;AAC5C,kBAAkB"}