diff --git a/ARCHITECTURE.adoc b/ARCHITECTURE.adoc new file mode 100644 index 0000000..1c0a7a6 --- /dev/null +++ b/ARCHITECTURE.adoc @@ -0,0 +1,48 @@ +== Architecture + +=== Overview + +This repository follows a modular, maintainable architecture designed +for clarity, scalability, and long-term sustainability. + +=== Directory Structure + +.... +. +├── src/ # Source code +├── tests/ # Test suites +├── docs/ # Documentation +├── scripts/ # Utility scripts +├── config/ # Configuration files +├── LICENSE # License file +├── LICENSES/ # Full license texts +└── README.adoc # Project documentation +.... + +=== Design Principles + +* *Separation of Concerns*: Each module has a single responsibility +* *Testability*: Code is written to be easily testable +* *Documentation*: All public APIs are documented +* *Configuration*: Environment-specific settings are externalized + +=== Dependencies + +* External dependencies are minimized and clearly declared +* Version pinning is used for reproducibility + +=== Security Considerations + +* Sensitive data is never committed to the repository +* Secrets are managed through environment variables or secure vaults +* Regular dependency audits are performed + +=== Maintainability + +* Code follows consistent style guidelines +* Pull requests require review and CI checks +* Issues and discussions are tracked transparently + +''''' + +_Last updated: 2026-07-18_ diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md deleted file mode 100644 index 607e3d8..0000000 --- a/ARCHITECTURE.md +++ /dev/null @@ -1,47 +0,0 @@ -# Architecture - -## Overview - -This repository follows a modular, maintainable architecture designed for clarity, scalability, and long-term sustainability. - -## Directory Structure - -``` -. -├── src/ # Source code -├── tests/ # Test suites -├── docs/ # Documentation -├── scripts/ # Utility scripts -├── config/ # Configuration files -├── LICENSE # License file -├── LICENSES/ # Full license texts -└── README.adoc # Project documentation -``` - -## Design Principles - -- **Separation of Concerns**: Each module has a single responsibility -- **Testability**: Code is written to be easily testable -- **Documentation**: All public APIs are documented -- **Configuration**: Environment-specific settings are externalized - -## Dependencies - -- External dependencies are minimized and clearly declared -- Version pinning is used for reproducibility - -## Security Considerations - -- Sensitive data is never committed to the repository -- Secrets are managed through environment variables or secure vaults -- Regular dependency audits are performed - -## Maintainability - -- Code follows consistent style guidelines -- Pull requests require review and CI checks -- Issues and discussions are tracked transparently - ---- - -*Last updated: 2026-07-18* diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc new file mode 100644 index 0000000..0e03a3c --- /dev/null +++ b/CHANGELOG.adoc @@ -0,0 +1,61 @@ +== Changelog + +All notable changes to `+git-scripts+` will be documented in this file. + +This file is generated from conventional commits by the +https://github.com/hyperpolymath/standards/blob/main/.github/workflows/changelog-reusable.yml[`+changelog-reusable.yml+`] +workflow (`+hyperpolymath/standards#206+`). Adopt the workflow in this +repo’s CI to keep this file in sync automatically — see +https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml[`+templates/cliff.toml+`] +for the canonical config. + +The format follows https://keepachangelog.com/en/1.1.0/[Keep a +Changelog]; this project aims to follow +https://semver.org/spec/v2.0.0.html[Semantic Versioning]. + +=== [Unreleased] + +==== Added + +* feat(safety): owner allowlist + two-tier menu with clearer item names +(#1) +* feat(script_manager): incorporate 3 hyperpolymath estate batch scripts +as Elixir rules +* feat(ui): add AffineScript-TEA Cadre router with HAR/script API bridge +* feat(crg): add crg-grade and crg-badge justfile recipes + +==== Fixed + +* fix(ci): sync hypatia-scan.yml to canonical (413: +env.HOME+Phase-2+SARIF) (#7) +* fix(ci): adopt canonical hypatia-scan.yml (env.HOME/scanner-layout + +Comment-step gate) (#5) +* fix: remove tracked build artifacts, update gitignore + +==== Changed + +* refactor(lib): fold ownership_guard primitives into common.sh + wire +env passthrough from Elixir TUI +* refactor(scripts): shared common.sh library + grouped subgroups + new +health/sync tools + +==== Documentation + +* docs(readme): add SPDX copyright line and standard badges +* docs: add post-audit status report for M5 sweep +* docs: add post-audit status report +* docs: add TOPOLOGY.md + +==== CI + +* ci: deploy dogfood-gate, add Groove manifest and CRG tests + +=== Pre-history + +Prior commits to this file’s introduction are recorded in git history +but not formally classified into Keep-a-Changelog sections. To backfill, +run `+git cliff -o CHANGELOG.md+` locally using the canonical +https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml[`+cliff.toml+`] +— this is one-shot mechanical work. + +''''' diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index 12fad75..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,56 +0,0 @@ - - -# Changelog - -All notable changes to `git-scripts` will be documented in this file. - -This file is generated from conventional commits by the -[`changelog-reusable.yml`](https://github.com/hyperpolymath/standards/blob/main/.github/workflows/changelog-reusable.yml) -workflow (`hyperpolymath/standards#206`). Adopt the workflow in this repo's CI to keep this file in sync automatically — see -[`templates/cliff.toml`](https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml) -for the canonical config. - -The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); -this project aims to follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - -## [Unreleased] - -### Added - -- feat(safety): owner allowlist + two-tier menu with clearer item names (#1) -- feat(script_manager): incorporate 3 hyperpolymath estate batch scripts as Elixir rules -- feat(ui): add AffineScript-TEA Cadre router with HAR/script API bridge -- feat(crg): add crg-grade and crg-badge justfile recipes - -### Fixed - -- fix(ci): sync hypatia-scan.yml to canonical (413: env.HOME+Phase-2+SARIF) (#7) -- fix(ci): adopt canonical hypatia-scan.yml (env.HOME/scanner-layout + Comment-step gate) (#5) -- fix: remove tracked build artifacts, update gitignore - -### Changed - -- refactor(lib): fold ownership_guard primitives into common.sh + wire env passthrough from Elixir TUI -- refactor(scripts): shared common.sh library + grouped subgroups + new health/sync tools - -### Documentation - -- docs(readme): add SPDX copyright line and standard badges -- docs: add post-audit status report for M5 sweep -- docs: add post-audit status report -- docs: add TOPOLOGY.md - -### CI - -- ci: deploy dogfood-gate, add Groove manifest and CRG tests - -## Pre-history - -Prior commits to this file's introduction are recorded in git history but not formally classified into Keep-a-Changelog sections. To backfill, run `git cliff -o CHANGELOG.md` locally using the canonical [`cliff.toml`](https://github.com/hyperpolymath/standards/blob/main/templates/cliff.toml) — this is one-shot mechanical work. - ---- - - diff --git a/CODE_OF_CONDUCT.adoc b/CODE_OF_CONDUCT.adoc new file mode 100644 index 0000000..ff3f3db --- /dev/null +++ b/CODE_OF_CONDUCT.adoc @@ -0,0 +1,339 @@ +== Code of Conduct + +=== Our Pledge + +We as members, contributors, and leaders pledge to make participation in +Squisher Corpus a harassment-free experience for everyone, regardless of +age, body size, visible or invisible disability, ethnicity, sex +characteristics, gender identity and expression, level of experience, +education, socio-economic status, nationality, personal appearance, +race, caste, colour, religion, or sexual identity and orientation. + +We pledge to act and interact in ways that contribute to an open, +welcoming, diverse, inclusive, and healthy community. + +We recognise that a thriving open source community requires +*psychological safety* — an environment where people can contribute, ask +questions, make mistakes, and learn without fear of ridicule or +retaliation. + +''''' + +=== Our Standards + +==== Expected Behaviour + +The following behaviours contribute to a positive environment: + +*Communication* - Using welcoming and inclusive language - Being +respectful of differing viewpoints and experiences - Giving and +gracefully accepting constructive feedback - Assuming good intent while +addressing impact - Communicating clearly and patiently, especially with +newcomers + +*Collaboration* - Focusing on what is best for the community - Showing +empathy and kindness toward other community members - Being +collaborative rather than competitive - Mentoring and supporting less +experienced contributors - Celebrating others’ contributions and +successes + +*Professionalism* - Accepting responsibility and apologising to those +affected by our mistakes - Learning from the experience and avoiding +repetition - Respecting others’ time and attention - Staying on topic in +project spaces - Following project guidelines and conventions + +*Accessibility* - Using plain language and avoiding unnecessary jargon - +Providing alt text for images and transcripts for audio/video - Being +patient with those using assistive technologies - Accommodating +different communication styles and needs - Recognising that not everyone +communicates the same way + +==== Unacceptable Behaviour + +The following behaviours are considered harassment and are unacceptable: + +*Harassment* - The use of sexualised language or imagery, and sexual +attention or advances of any kind - Trolling, insulting or derogatory +comments, and personal or political attacks - Public or private +harassment - Deliberate intimidation, stalking, or following (online or +in-person) - Unwelcome physical contact or simulated physical contact +(e.g., emoji) - Sustained disruption of talks, events, or online +discussions + +*Discrimination* - Discriminatory jokes and language - Posting or +threatening to post others’ personally identifying information +("`doxing`") - Advocating for, or encouraging, any of the above +behaviour - Microaggressions — subtle, often unintentional, +discriminatory comments or actions + +*Professional Misconduct* - Publishing others’ private information +without explicit permission - Misrepresenting affiliation or +contributions - Plagiarism or claiming credit for others’ work - +Retaliating against anyone who reports a Code of Conduct violation - +Other conduct which could reasonably be considered inappropriate in a +professional setting + +==== Grey Areas + +Some situations require judgement. When uncertain: + +* *Intent vs Impact*: Good intentions do not excuse harmful impact. +Focus on making things right. +* *Power Dynamics*: Those with more power (maintainers, employers, +experienced contributors) must be especially mindful of their impact. +* *Cultural Differences*: What’s acceptable varies by culture. When in +doubt, err on the side of caution and ask. +* *Humour*: Jokes at others’ expense are rarely funny to everyone. Punch +up, not down. + +''''' + +=== Scope + +This Code of Conduct applies within all community spaces, including: + +*Online Spaces* - Repository discussions, issues, and pull/merge +requests - Project chat channels (Matrix, Discord, Slack, IRC) - Mailing +lists and forums - Social media when representing the project - Video +calls and virtual meetings + +*In-Person Spaces* - Conferences, meetups, and events - Workshops and +training sessions - Any gathering where you represent the project + +*Representation* This Code of Conduct also applies when an individual is +officially representing the community in public spaces. Examples +include: + +* Using an official project email address +* Posting via an official social media account +* Acting as an appointed representative at an event +* Speaking on behalf of the project + +''''' + +=== Enforcement + +==== Reporting + +If you experience or witness unacceptable behaviour, or have any other +concerns, please report it as soon as possible. + +*How to Report* + +[width="99%",cols="30%,33%,37%",options="header",] +|=== +|Method |Details |Best For +|*Email* |j.d.a.jewell@open.ac.uk |Detailed reports, sensitive matters + +|*Private Message* |Contact any maintainer directly |Quick questions, +minor issues + +|*Anonymous Form* |[Link to form if available] |When you need anonymity +|=== + +*What to Include* + +* Your contact information (unless anonymous) +* Names/usernames of those involved +* Description of what happened +* When and where it occurred +* Any witnesses +* Any supporting evidence (screenshots, links) +* How you would like us to respond (if you have a preference) + +*What Happens Next* + +[arabic] +. You will receive acknowledgment within *48 hours* +. The maintainers will review the report +. We may ask for additional information +. We will determine appropriate action +. We will inform you of the outcome (respecting others’ privacy) + +==== Confidentiality + +All reports will be handled with discretion: + +* Reporter identity is protected by default +* Details are shared only with those who need to know +* We will ask before naming you in any communication +* Anonymous reports are accepted and investigated + +==== Conflicts of Interest + +If a maintainers member is involved in an incident: + +* They will recuse themselves from the process +* Another maintainer or external party will handle the report +* We will disclose any potential conflicts + +''''' + +=== Enforcement Guidelines + +The maintainers will follow these guidelines in determining +consequences: + +==== 1. Correction + +*Community Impact*: Use of inappropriate language or other behaviour +deemed unprofessional or unwelcome. + +*Consequence*: A private, written warning providing clarity around the +nature of the violation and an explanation of why the behaviour was +inappropriate. A public apology may be requested. + +*Duration*: Immediate + +==== 2. Warning + +*Community Impact*: A violation through a single incident or series of +actions. + +*Consequence*: A warning with consequences for continued behaviour. No +interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, for a specified period. This +includes avoiding interactions in community spaces as well as external +channels like social media. Violating these terms may lead to a +temporary or permanent ban. + +*Duration*: 1-4 weeks + +==== 3. Temporary Ban + +*Community Impact*: A serious violation of community standards, +including sustained inappropriate behaviour. + +*Consequence*: A temporary ban from any sort of interaction or public +communication with the community for a specified period. No public or +private interaction with the people involved, including unsolicited +interaction with those enforcing the Code of Conduct, is allowed during +this period. Violating these terms may lead to a permanent ban. + +*Duration*: 1-6 months + +==== 4. Permanent Ban + +*Community Impact*: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behaviour, harassment of an +individual, or aggression toward or disparagement of classes of +individuals. + +*Consequence*: A permanent ban from any sort of public interaction +within the community. + +*Duration*: Permanent (with appeal rights after 12 months) + +==== Enforcement Across Perimeters + +For contributors with elevated access (Perimeter 2 or 1): + +[cols=",",options="header",] +|=== +|Level |Additional Consequence +|Correction |Noted in contributor record +|Warning |Access privileges may be temporarily reduced +|Temporary Ban |Access reduced to Perimeter 3 for ban duration +|Permanent Ban |All access revoked +|=== + +''''' + +=== Appeals + +If you believe an enforcement decision was made in error: + +[arabic] +. *Wait 7 days* after the decision (cooling-off period) +. *Email* j.d.a.jewell@open.ac.uk with subject line "`Appeal: [Original +Report ID]`" +. *Explain* why you believe the decision should be reconsidered +. *Provide* any new information not previously available + +*Appeals Process* + +* Appeals are reviewed by a different maintainers member than the +original +* You will receive a response within 14 days +* The appeals decision is final +* You may only appeal once per incident + +*Grounds for Appeal* + +* Procedural errors in the original investigation +* New evidence not previously available +* Disproportionate response to the violation +* Misunderstanding of facts + +''''' + +=== Supporting Those Who Report + +We are committed to supporting those who report violations: + +*We Will* - Believe and take all reports seriously - Respect your +privacy and confidentiality preferences - Keep you informed of progress +(if you wish) - Take steps to protect you from retaliation - Provide +resources if you need support + +*We Will Not* - Require you to confront the person directly - Dismiss +reports without investigation - Reveal your identity without consent - +Tolerate retaliation against reporters - Rush you to make decisions + +''''' + +=== Prevention + +Beyond enforcement, we actively work to prevent issues: + +*Onboarding* - All contributors are expected to read this Code of +Conduct - Perimeter 2 applicants must confirm they’ve read and +understood it - Maintainers receive additional training on enforcement + +*Culture* - We model the behaviour we expect - We intervene early when +we see potential issues - We thank people for positive contributions - +We create opportunities for diverse voices + +*Review* - This Code of Conduct is reviewed annually - Community +feedback is welcomed - Changes are communicated clearly + +''''' + +=== Acknowledgments + +This Code of Conduct is adapted from: + +* https://www.contributor-covenant.org/[Contributor Covenant], version +2.1 +* https://www.djangoproject.com/conduct/[Django Code of Conduct] +* https://www.rust-lang.org/policies/code-of-conduct[Rust Code of +Conduct] +* https://www.python.org/psf/conduct/[Python Community Code of Conduct] + +We thank these communities for their leadership in creating welcoming +spaces. + +''''' + +=== Questions? + +If you have questions about this Code of Conduct: + +* Open a +https://github.com/hyperpolymath/squisher-corpus/discussions[Discussion] +(for general questions) +* Email j.d.a.jewell@open.ac.uk (for private questions) +* Contact any maintainer directly + +''''' + +=== Summary + +*Be kind. Be respectful. Be collaborative.* + +We’re all here because we care about this project. Let’s make it a place +where everyone can do their best work. + +''''' + +Last updated: 2026 · Based on Contributor Covenant 2.1 diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md deleted file mode 100644 index 8267cd4..0000000 --- a/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,327 +0,0 @@ -# Code of Conduct - - - -## Our Pledge - -We as members, contributors, and leaders pledge to make participation in Squisher Corpus a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, colour, religion, or sexual identity and orientation. - -We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. - -We recognise that a thriving open source community requires **psychological safety** — an environment where people can contribute, ask questions, make mistakes, and learn without fear of ridicule or retaliation. - ---- - -## Our Standards - -### Expected Behaviour - -The following behaviours contribute to a positive environment: - -**Communication** -- Using welcoming and inclusive language -- Being respectful of differing viewpoints and experiences -- Giving and gracefully accepting constructive feedback -- Assuming good intent while addressing impact -- Communicating clearly and patiently, especially with newcomers - -**Collaboration** -- Focusing on what is best for the community -- Showing empathy and kindness toward other community members -- Being collaborative rather than competitive -- Mentoring and supporting less experienced contributors -- Celebrating others' contributions and successes - -**Professionalism** -- Accepting responsibility and apologising to those affected by our mistakes -- Learning from the experience and avoiding repetition -- Respecting others' time and attention -- Staying on topic in project spaces -- Following project guidelines and conventions - -**Accessibility** -- Using plain language and avoiding unnecessary jargon -- Providing alt text for images and transcripts for audio/video -- Being patient with those using assistive technologies -- Accommodating different communication styles and needs -- Recognising that not everyone communicates the same way - -### Unacceptable Behaviour - -The following behaviours are considered harassment and are unacceptable: - -**Harassment** -- The use of sexualised language or imagery, and sexual attention or advances of any kind -- Trolling, insulting or derogatory comments, and personal or political attacks -- Public or private harassment -- Deliberate intimidation, stalking, or following (online or in-person) -- Unwelcome physical contact or simulated physical contact (e.g., emoji) -- Sustained disruption of talks, events, or online discussions - -**Discrimination** -- Discriminatory jokes and language -- Posting or threatening to post others' personally identifying information ("doxing") -- Advocating for, or encouraging, any of the above behaviour -- Microaggressions — subtle, often unintentional, discriminatory comments or actions - -**Professional Misconduct** -- Publishing others' private information without explicit permission -- Misrepresenting affiliation or contributions -- Plagiarism or claiming credit for others' work -- Retaliating against anyone who reports a Code of Conduct violation -- Other conduct which could reasonably be considered inappropriate in a professional setting - -### Grey Areas - -Some situations require judgement. When uncertain: - -- **Intent vs Impact**: Good intentions do not excuse harmful impact. Focus on making things right. -- **Power Dynamics**: Those with more power (maintainers, employers, experienced contributors) must be especially mindful of their impact. -- **Cultural Differences**: What's acceptable varies by culture. When in doubt, err on the side of caution and ask. -- **Humour**: Jokes at others' expense are rarely funny to everyone. Punch up, not down. - ---- - -## Scope - -This Code of Conduct applies within all community spaces, including: - -**Online Spaces** -- Repository discussions, issues, and pull/merge requests -- Project chat channels (Matrix, Discord, Slack, IRC) -- Mailing lists and forums -- Social media when representing the project -- Video calls and virtual meetings - -**In-Person Spaces** -- Conferences, meetups, and events -- Workshops and training sessions -- Any gathering where you represent the project - -**Representation** -This Code of Conduct also applies when an individual is officially representing the community in public spaces. Examples include: - -- Using an official project email address -- Posting via an official social media account -- Acting as an appointed representative at an event -- Speaking on behalf of the project - ---- - -## Enforcement - -### Reporting - -If you experience or witness unacceptable behaviour, or have any other concerns, please report it as soon as possible. - -**How to Report** - -| Method | Details | Best For | -|--------|---------|----------| -| **Email** | j.d.a.jewell@open.ac.uk | Detailed reports, sensitive matters | -| **Private Message** | Contact any maintainer directly | Quick questions, minor issues | -| **Anonymous Form** | [Link to form if available] | When you need anonymity | - -**What to Include** - -- Your contact information (unless anonymous) -- Names/usernames of those involved -- Description of what happened -- When and where it occurred -- Any witnesses -- Any supporting evidence (screenshots, links) -- How you would like us to respond (if you have a preference) - -**What Happens Next** - -1. You will receive acknowledgment within **48 hours** -2. The maintainers will review the report -3. We may ask for additional information -4. We will determine appropriate action -5. We will inform you of the outcome (respecting others' privacy) - -### Confidentiality - -All reports will be handled with discretion: - -- Reporter identity is protected by default -- Details are shared only with those who need to know -- We will ask before naming you in any communication -- Anonymous reports are accepted and investigated - -### Conflicts of Interest - -If a maintainers member is involved in an incident: - -- They will recuse themselves from the process -- Another maintainer or external party will handle the report -- We will disclose any potential conflicts - ---- - -## Enforcement Guidelines - -The maintainers will follow these guidelines in determining consequences: - -### 1. Correction - -**Community Impact**: Use of inappropriate language or other behaviour deemed unprofessional or unwelcome. - -**Consequence**: A private, written warning providing clarity around the nature of the violation and an explanation of why the behaviour was inappropriate. A public apology may be requested. - -**Duration**: Immediate - -### 2. Warning - -**Community Impact**: A violation through a single incident or series of actions. - -**Consequence**: A warning with consequences for continued behaviour. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban. - -**Duration**: 1-4 weeks - -### 3. Temporary Ban - -**Community Impact**: A serious violation of community standards, including sustained inappropriate behaviour. - -**Consequence**: A temporary ban from any sort of interaction or public communication with the community for a specified period. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban. - -**Duration**: 1-6 months - -### 4. Permanent Ban - -**Community Impact**: Demonstrating a pattern of violation of community standards, including sustained inappropriate behaviour, harassment of an individual, or aggression toward or disparagement of classes of individuals. - -**Consequence**: A permanent ban from any sort of public interaction within the community. - -**Duration**: Permanent (with appeal rights after 12 months) - -### Enforcement Across Perimeters - -For contributors with elevated access (Perimeter 2 or 1): - -| Level | Additional Consequence | -|-------|----------------------| -| Correction | Noted in contributor record | -| Warning | Access privileges may be temporarily reduced | -| Temporary Ban | Access reduced to Perimeter 3 for ban duration | -| Permanent Ban | All access revoked | - ---- - -## Appeals - -If you believe an enforcement decision was made in error: - -1. **Wait 7 days** after the decision (cooling-off period) -2. **Email** j.d.a.jewell@open.ac.uk with subject line "Appeal: [Original Report ID]" -3. **Explain** why you believe the decision should be reconsidered -4. **Provide** any new information not previously available - -**Appeals Process** - -- Appeals are reviewed by a different maintainers member than the original -- You will receive a response within 14 days -- The appeals decision is final -- You may only appeal once per incident - -**Grounds for Appeal** - -- Procedural errors in the original investigation -- New evidence not previously available -- Disproportionate response to the violation -- Misunderstanding of facts - ---- - -## Supporting Those Who Report - -We are committed to supporting those who report violations: - -**We Will** -- Believe and take all reports seriously -- Respect your privacy and confidentiality preferences -- Keep you informed of progress (if you wish) -- Take steps to protect you from retaliation -- Provide resources if you need support - -**We Will Not** -- Require you to confront the person directly -- Dismiss reports without investigation -- Reveal your identity without consent -- Tolerate retaliation against reporters -- Rush you to make decisions - ---- - -## Prevention - -Beyond enforcement, we actively work to prevent issues: - -**Onboarding** -- All contributors are expected to read this Code of Conduct -- Perimeter 2 applicants must confirm they've read and understood it -- Maintainers receive additional training on enforcement - -**Culture** -- We model the behaviour we expect -- We intervene early when we see potential issues -- We thank people for positive contributions -- We create opportunities for diverse voices - -**Review** -- This Code of Conduct is reviewed annually -- Community feedback is welcomed -- Changes are communicated clearly - ---- - -## Acknowledgments - -This Code of Conduct is adapted from: - -- [Contributor Covenant](https://www.contributor-covenant.org/), version 2.1 -- [Django Code of Conduct](https://www.djangoproject.com/conduct/) -- [Rust Code of Conduct](https://www.rust-lang.org/policies/code-of-conduct) -- [Python Community Code of Conduct](https://www.python.org/psf/conduct/) - -We thank these communities for their leadership in creating welcoming spaces. - ---- - -## Questions? - -If you have questions about this Code of Conduct: - -- Open a [Discussion](https://github.com/hyperpolymath/squisher-corpus/discussions) (for general questions) -- Email j.d.a.jewell@open.ac.uk (for private questions) -- Contact any maintainer directly - ---- - -## Summary - -**Be kind. Be respectful. Be collaborative.** - -We're all here because we care about this project. Let's make it a place where everyone can do their best work. - ---- - -Last updated: 2026 · Based on Contributor Covenant 2.1 diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc new file mode 100644 index 0000000..0e9f4c1 --- /dev/null +++ b/CONTRIBUTING.adoc @@ -0,0 +1,20 @@ +== Contributing + +Contributions are welcome! Please: + +[arabic] +. Fork the repository +. Create a feature branch from `+main+` +. Ensure all CI checks pass +. Submit a pull request + +=== Standards + +This project follows the +https://github.com/hyperpolymath/standards[Rhodium Standard Repository +(RSR)] conventions. + +=== License + +By contributing, you agree that your contributions will be licensed +under MPL-2.0 (with MPL-2.0 as automatic legal fallback). diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 166fe96..0000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,20 +0,0 @@ - -# Contributing - -Contributions are welcome! Please: - -1. Fork the repository -2. Create a feature branch from `main` -3. Ensure all CI checks pass -4. Submit a pull request - -## Standards - -This project follows the [Rhodium Standard Repository (RSR)](https://github.com/hyperpolymath/standards) conventions. - -## License - -By contributing, you agree that your contributions will be licensed under MPL-2.0 (with MPL-2.0 as automatic legal fallback). diff --git a/FINAL_STATUS_REPORT.adoc b/FINAL_STATUS_REPORT.adoc new file mode 100644 index 0000000..4961af9 --- /dev/null +++ b/FINAL_STATUS_REPORT.adoc @@ -0,0 +1,242 @@ +== 🎉 Git Scripts - Final Status Report + +=== 🏆 *PROJECT COMPLETED SUCCESSFULLY* + +*Date:* April 9, 2024 + +*Status:* ✅ PRODUCTION READY + +*Compliance:* D-SIP-FV-MA Certified + +=== 📋 Executive Summary + +The git-scripts repository has been successfully transformed from a +collection of loosely organized scripts into a professional, +maintainable system with comprehensive documentation and enhanced user +experience. + +=== 🎯 Key Accomplishments + +==== 1. *Organization & Cleanup* ✅ + +* *Before:* 30+ files in root, messy structure +* *After:* Clean directory structure with logical organization +* *Result:* 50% reduction in root directory clutter + +==== 2. *Redundancy Elimination* ✅ + +* *Removed:* 4 redundant scripts +* *Benefit:* Cleaner codebase, easier maintenance +* *Impact:* 27% reduction in script count + +==== 3. *Configuration Unification* ✅ + +* *Created:* Shared `+config/repos.config+` +* *Unified:* 28 repositories in single source of truth +* *Result:* Eliminated configuration inconsistencies + +==== 4. *Launcher Enhancement* ✅ + +* *Added:* `+--help+`, `+--version+` flags +* *Improved:* Color output, error handling +* *Result:* Professional-grade user experience + +==== 5. *Documentation* ✅ + +* *Created:* 4 comprehensive documentation files +* *Covered:* Organization, integration, compliance, implementation +* *Result:* Complete reference material for developers + +=== 🧪 Verification Results + +==== ✅ All Tests Passed + +[source,bash] +---- +# Launcher functionality +./git-scripts-launcher --help ✅ Working +./git-scripts-launcher --version ✅ Working +./git-scripts-launcher --status ✅ Working +./git-scripts-launcher --start ✅ Working +./git-scripts-launcher --stop ✅ Working + +# Configuration system +config/repos.config ✅ Exists +scripts/update_repos.sh ✅ Uses shared config +scripts/verify.sh ✅ Uses shared config + +# Script organization +scripts/*.sh ✅ 8 executable scripts +launchers/* ✅ Clean launcher structure +docs/* ✅ Comprehensive documentation +---- + +==== ✅ Integration Status + +[cols=",,",options="header",] +|=== +|TUI Option |Script |Status +|[1] Wiki Audit |`+wiki-audit.sh+` |✅ Integrated +|[2] Project Tabs Audit |`+project-tabs-audit.sh+` |✅ Integrated +|[3] Branch Protection |`+branch-protection-apply.sh+` |✅ Integrated +|[4] MD to ADOC |`+md_to_adoc_converter.sh+` |✅ Integrated +|[5] Standardize READMEs |`+standardize_readmes.sh+` |✅ Integrated +|[6] Update Repos |`+update_repos.sh+` |✅ Integrated +|[7] Audit Scripts |`+audit_script.sh+` |✅ Integrated +|[8] Verify |`+verify.sh+` |✅ Integrated +|[9] Use GH CLI |`+USE-GH-CLI.sh+` |✅ Integrated +|=== + +*Integration Rate:* 100% (9/9 TUI options connected to scripts) + +=== 📈 Metrics + +==== Before vs After + +[cols=",,,",options="header",] +|=== +|Metric |Before |After |Improvement +|Root files |30+ |15 |50% reduction +|Scripts |15 |11 |27% cleaner +|Config files |2 |1 |Unified +|Documentation |Minimal |Comprehensive |Complete +|Launcher features |Basic |Enhanced |Professional +|=== + +==== Quality Metrics + +* *Standards Compliance:* ✅ D-SIP-FV-MA Certified +* *Error Handling:* ✅ Comprehensive +* *User Experience:* ✅ Color output, help system +* *Maintainability:* ✅ Shared config, clear structure +* *Documentation:* ✅ Complete and up-to-date + +=== 🗂️ Final Directory Structure + +.... +git-scripts/ +├── ai/ # AI configuration (1 file) +├── bin/ # Binary artifacts (4 .beam files) +├── config/ # Shared configuration (1 file) +├── docs/ # Documentation (4 files) +├── launchers/ # Launchers (2 files) +├── scripts/ # Functional scripts (8 files) +├── test/ # Test files (3 files) +├── lib/ # Elixir source (21 files) +├── priv/ # Private assets +├── _build/ # Build artifacts +└── (root: 15 essential files) +.... + +*Total:* ~80 files organized logically + +=== 🚀 Usage Examples + +==== Basic Usage + +[source,bash] +---- +# Start the TUI +./git-scripts-launcher --start + +# Check status +./git-scripts-launcher --status + +# Install shortcuts +./git-scripts-launcher --install + +# Get help +./git-scripts-launcher --help + +# Check version +./git-scripts-launcher --version +---- + +==== Script Usage + +[source,bash] +---- +# Run scripts directly +./scripts/wiki-audit.sh +./scripts/update_repos.sh +./scripts/verify.sh + +# All scripts use shared configuration +# No more inconsistent repository lists +---- + +=== 📋 Files Modified/Created + +==== Created + +* `+ai/0-AI-MANIFEST.a2ml+` (moved) +* `+bin/*.beam+` (moved) +* `+config/repos.config+` (new) +* `+docs/COMPLIANCE_CHECKLIST.md+` (new) +* `+docs/IMPLEMENTATION_SUMMARY.md+` (new) +* `+docs/SCRIPT_INTEGRATION_ANALYSIS.md+` (new) +* `+docs/SCRIPT_ORGANIZATION.md+` (new) +* `+test/*.exs+` (moved) + +==== Modified + +* `+.gitignore+` (enhanced) +* `+scripts/update_repos.sh+` (shared config) +* `+scripts/verify.sh+` (shared config) +* `+git-scripts-launcher+` (enhanced) + +==== Removed + +* `+run_manager.sh+` +* `+launchers/git-scripts-launcher-enhanced.sh+` +* `+scripts/comprehensive_script_organization.sh+` +* `+scripts/repo_cleanup_integration.sh+` + +=== 🎯 Standards Compliance + +==== ✅ D-SIP-FV-MA Compliance + +* *Dependable:* Robust error handling, process management +* *Secure:* Proper PID cleanup, input validation +* *Interoperable:* Cross-platform support (Linux/macOS/Windows) +* *Performant:* Reasonable timeouts, efficient operations +* *Functional:* All features working correctly +* *Versatile:* Multiple launch modes, flexible configuration +* *Metaiconic:* Follows established patterns +* *Accessible:* Clear documentation, help system + +==== ✅ UX Standards Compliance + +* *Terminal-free launching:* `+Terminal=false+` in desktop files +* *Process management:* `+nohup+` for background processes +* *PID tracking:* Proper cleanup and management +* *Error handling:* Actionable error messages +* *Standard modes:* All required modes implemented +* *Desktop integration:* Proper .desktop files + +=== 🏆 Achievements + +[arabic] +. *✅ Clean Organization* - Logical, maintainable structure +. *✅ Reduced Redundancy* - Eliminated 4 unnecessary scripts +. *✅ Unified Configuration* - Single source of truth +. *✅ Enhanced Launcher* - Professional UX with help/version +. *✅ Comprehensive Documentation* - Complete reference material +. *✅ Maintained Compatibility* - All original functionality preserved +. *✅ Improved Maintainability* - Easier to update and extend +. *✅ Standards Compliance* - Full D-SIP-FV-MA certification + +=== 🎉 Conclusion + +The git-scripts repository has been successfully transformed into a +*production-ready, professional-grade system* that is: + +* *🔧 Maintainable* - Clean structure, good documentation +* *🚀 Extensible* - Easy to add new scripts and features +* *👨‍💻 Developer-Friendly* - Clear organization, help system +* *📱 User-Friendly* - Enhanced launcher, color output +* *🏗️ Robust* - Comprehensive error handling +* *📖 Well-Documented* - Complete reference material + +*Status:* PRODUCTION READY 🎉 + +*Recommendation:* Deploy to production and begin gathering user feedback +for continuous improvement. diff --git a/FINAL_STATUS_REPORT.md b/FINAL_STATUS_REPORT.md deleted file mode 100644 index 307ea0b..0000000 --- a/FINAL_STATUS_REPORT.md +++ /dev/null @@ -1,221 +0,0 @@ - -# 🎉 Git Scripts - Final Status Report - -## 🏆 **PROJECT COMPLETED SUCCESSFULLY** - -**Date:** April 9, 2024 -**Status:** ✅ PRODUCTION READY -**Compliance:** D-SIP-FV-MA Certified - -## 📋 Executive Summary - -The git-scripts repository has been successfully transformed from a collection of loosely organized scripts into a professional, maintainable system with comprehensive documentation and enhanced user experience. - -## 🎯 Key Accomplishments - -### 1. **Organization & Cleanup** ✅ -- **Before:** 30+ files in root, messy structure -- **After:** Clean directory structure with logical organization -- **Result:** 50% reduction in root directory clutter - -### 2. **Redundancy Elimination** ✅ -- **Removed:** 4 redundant scripts -- **Benefit:** Cleaner codebase, easier maintenance -- **Impact:** 27% reduction in script count - -### 3. **Configuration Unification** ✅ -- **Created:** Shared `config/repos.config` -- **Unified:** 28 repositories in single source of truth -- **Result:** Eliminated configuration inconsistencies - -### 4. **Launcher Enhancement** ✅ -- **Added:** `--help`, `--version` flags -- **Improved:** Color output, error handling -- **Result:** Professional-grade user experience - -### 5. **Documentation** ✅ -- **Created:** 4 comprehensive documentation files -- **Covered:** Organization, integration, compliance, implementation -- **Result:** Complete reference material for developers - -## 🧪 Verification Results - -### ✅ All Tests Passed - -```bash -# Launcher functionality -./git-scripts-launcher --help ✅ Working -./git-scripts-launcher --version ✅ Working -./git-scripts-launcher --status ✅ Working -./git-scripts-launcher --start ✅ Working -./git-scripts-launcher --stop ✅ Working - -# Configuration system -config/repos.config ✅ Exists -scripts/update_repos.sh ✅ Uses shared config -scripts/verify.sh ✅ Uses shared config - -# Script organization -scripts/*.sh ✅ 8 executable scripts -launchers/* ✅ Clean launcher structure -docs/* ✅ Comprehensive documentation -``` - -### ✅ Integration Status - -| TUI Option | Script | Status | -|------------|--------|--------| -| [1] Wiki Audit | `wiki-audit.sh` | ✅ Integrated | -| [2] Project Tabs Audit | `project-tabs-audit.sh` | ✅ Integrated | -| [3] Branch Protection | `branch-protection-apply.sh` | ✅ Integrated | -| [4] MD to ADOC | `md_to_adoc_converter.sh` | ✅ Integrated | -| [5] Standardize READMEs | `standardize_readmes.sh` | ✅ Integrated | -| [6] Update Repos | `update_repos.sh` | ✅ Integrated | -| [7] Audit Scripts | `audit_script.sh` | ✅ Integrated | -| [8] Verify | `verify.sh` | ✅ Integrated | -| [9] Use GH CLI | `USE-GH-CLI.sh` | ✅ Integrated | - -**Integration Rate:** 100% (9/9 TUI options connected to scripts) - -## 📈 Metrics - -### Before vs After - -| Metric | Before | After | Improvement | -|--------|--------|-------|-------------| -| Root files | 30+ | 15 | 50% reduction | -| Scripts | 15 | 11 | 27% cleaner | -| Config files | 2 | 1 | Unified | -| Documentation | Minimal | Comprehensive | Complete | -| Launcher features | Basic | Enhanced | Professional | - -### Quality Metrics - -- **Standards Compliance:** ✅ D-SIP-FV-MA Certified -- **Error Handling:** ✅ Comprehensive -- **User Experience:** ✅ Color output, help system -- **Maintainability:** ✅ Shared config, clear structure -- **Documentation:** ✅ Complete and up-to-date - -## 🗂️ Final Directory Structure - -``` -git-scripts/ -├── ai/ # AI configuration (1 file) -├── bin/ # Binary artifacts (4 .beam files) -├── config/ # Shared configuration (1 file) -├── docs/ # Documentation (4 files) -├── launchers/ # Launchers (2 files) -├── scripts/ # Functional scripts (8 files) -├── test/ # Test files (3 files) -├── lib/ # Elixir source (21 files) -├── priv/ # Private assets -├── _build/ # Build artifacts -└── (root: 15 essential files) -``` - -**Total:** ~80 files organized logically - -## 🚀 Usage Examples - -### Basic Usage -```bash -# Start the TUI -./git-scripts-launcher --start - -# Check status -./git-scripts-launcher --status - -# Install shortcuts -./git-scripts-launcher --install - -# Get help -./git-scripts-launcher --help - -# Check version -./git-scripts-launcher --version -``` - -### Script Usage -```bash -# Run scripts directly -./scripts/wiki-audit.sh -./scripts/update_repos.sh -./scripts/verify.sh - -# All scripts use shared configuration -# No more inconsistent repository lists -``` - -## 📋 Files Modified/Created - -### Created -- `ai/0-AI-MANIFEST.a2ml` (moved) -- `bin/*.beam` (moved) -- `config/repos.config` (new) -- `docs/COMPLIANCE_CHECKLIST.md` (new) -- `docs/IMPLEMENTATION_SUMMARY.md` (new) -- `docs/SCRIPT_INTEGRATION_ANALYSIS.md` (new) -- `docs/SCRIPT_ORGANIZATION.md` (new) -- `test/*.exs` (moved) - -### Modified -- `.gitignore` (enhanced) -- `scripts/update_repos.sh` (shared config) -- `scripts/verify.sh` (shared config) -- `git-scripts-launcher` (enhanced) - -### Removed -- `run_manager.sh` -- `launchers/git-scripts-launcher-enhanced.sh` -- `scripts/comprehensive_script_organization.sh` -- `scripts/repo_cleanup_integration.sh` - -## 🎯 Standards Compliance - -### ✅ D-SIP-FV-MA Compliance -- **Dependable:** Robust error handling, process management -- **Secure:** Proper PID cleanup, input validation -- **Interoperable:** Cross-platform support (Linux/macOS/Windows) -- **Performant:** Reasonable timeouts, efficient operations -- **Functional:** All features working correctly -- **Versatile:** Multiple launch modes, flexible configuration -- **Metaiconic:** Follows established patterns -- **Accessible:** Clear documentation, help system - -### ✅ UX Standards Compliance -- **Terminal-free launching:** `Terminal=false` in desktop files -- **Process management:** `nohup` for background processes -- **PID tracking:** Proper cleanup and management -- **Error handling:** Actionable error messages -- **Standard modes:** All required modes implemented -- **Desktop integration:** Proper .desktop files - -## 🏆 Achievements - -1. **✅ Clean Organization** - Logical, maintainable structure -2. **✅ Reduced Redundancy** - Eliminated 4 unnecessary scripts -3. **✅ Unified Configuration** - Single source of truth -4. **✅ Enhanced Launcher** - Professional UX with help/version -5. **✅ Comprehensive Documentation** - Complete reference material -6. **✅ Maintained Compatibility** - All original functionality preserved -7. **✅ Improved Maintainability** - Easier to update and extend -8. **✅ Standards Compliance** - Full D-SIP-FV-MA certification - -## 🎉 Conclusion - -The git-scripts repository has been successfully transformed into a **production-ready, professional-grade system** that is: - -- **🔧 Maintainable** - Clean structure, good documentation -- **🚀 Extensible** - Easy to add new scripts and features -- **👨‍💻 Developer-Friendly** - Clear organization, help system -- **📱 User-Friendly** - Enhanced launcher, color output -- **🏗️ Robust** - Comprehensive error handling -- **📖 Well-Documented** - Complete reference material - -**Status:** PRODUCTION READY 🎉 - -**Recommendation:** Deploy to production and begin gathering user feedback for continuous improvement. \ No newline at end of file diff --git a/GOVERNANCE.adoc b/GOVERNANCE.adoc new file mode 100644 index 0000000..9b836fb --- /dev/null +++ b/GOVERNANCE.adoc @@ -0,0 +1,60 @@ +== Governance + +=== Overview + +This project is governed by the following principles and structures to +ensure transparent, inclusive, and effective decision-making. + +=== Roles and Responsibilities + +==== Maintainers + +Maintainers are responsible for: - Reviewing and merging pull requests - +Managing releases and versioning - Ensuring code quality and standards - +Triaging issues and bug reports - Community engagement and support + +==== Contributors + +Contributors are expected to: - Follow the code of conduct - Submit +well-documented pull requests - Write tests for new functionality - +Maintain existing tests - Update documentation as needed + +=== Decision Making + +==== Minor Changes + +* Can be made by any maintainer +* Include bug fixes, documentation updates, dependency updates + +==== Major Changes + +* Require discussion in issues or pull requests +* Include new features, architectural changes, API changes +* Need approval from at least 2 maintainers + +==== Breaking Changes + +* Require RFC (Request for Comments) process +* Need approval from majority of maintainers +* Must include migration guide + +=== Code of Conduct + +All participants are expected to follow our Code of Conduct. Violations +can be reported to the maintainers. + +=== Communication + +* *Issues*: For bug reports and feature requests +* *Discussions*: For questions and general discussion +* *Pull Requests*: For code contributions + +=== Licensing + +All contributions are made under the terms of the repository’s LICENSE +file. By submitting a pull request, you agree to license your +contributions accordingly. + +''''' + +_Last updated: 2026-07-18_ diff --git a/GOVERNANCE.md b/GOVERNANCE.md deleted file mode 100644 index e27364c..0000000 --- a/GOVERNANCE.md +++ /dev/null @@ -1,60 +0,0 @@ -# Governance - -## Overview - -This project is governed by the following principles and structures to ensure transparent, inclusive, and effective decision-making. - -## Roles and Responsibilities - -### Maintainers - -Maintainers are responsible for: -- Reviewing and merging pull requests -- Managing releases and versioning -- Ensuring code quality and standards -- Triaging issues and bug reports -- Community engagement and support - -### Contributors - -Contributors are expected to: -- Follow the code of conduct -- Submit well-documented pull requests -- Write tests for new functionality -- Maintain existing tests -- Update documentation as needed - -## Decision Making - -### Minor Changes -- Can be made by any maintainer -- Include bug fixes, documentation updates, dependency updates - -### Major Changes -- Require discussion in issues or pull requests -- Include new features, architectural changes, API changes -- Need approval from at least 2 maintainers - -### Breaking Changes -- Require RFC (Request for Comments) process -- Need approval from majority of maintainers -- Must include migration guide - -## Code of Conduct - -All participants are expected to follow our Code of Conduct. Violations can be reported to the maintainers. - -## Communication - -- **Issues**: For bug reports and feature requests -- **Discussions**: For questions and general discussion -- **Pull Requests**: For code contributions - -## Licensing - -All contributions are made under the terms of the repository's LICENSE file. -By submitting a pull request, you agree to license your contributions accordingly. - ---- - -*Last updated: 2026-07-18* diff --git a/MERGE_SUMMARY.adoc b/MERGE_SUMMARY.adoc new file mode 100644 index 0000000..aa4cc4d --- /dev/null +++ b/MERGE_SUMMARY.adoc @@ -0,0 +1,170 @@ +== 🎉 Git Scripts - Merge Summary + +=== ✅ *SUCCESSFULLY MERGED TO MAIN BRANCH* + +*Commit:* `+246a0c4+` + +*Date:* April 9, 2024 + +*Branch:* `+main+` + +*Remote:* `+github.com:hyperpolymath/git-scripts.git+` + +=== 📋 Merge Details + +==== Changes Pushed + +.... +34 files changed, 1479 insertions(+), 904 deletions(-) +.... + +==== Files Affected + +*📁 New Directories Created (5):* - `+ai/+` - AI configuration files - +`+bin/+` - Binary artifacts + +- `+config/+` - Shared configuration - `+docs/+` - Comprehensive +documentation - `+test/+` - Test files + +*📝 New Files Added (15):* - `+FINAL_STATUS_REPORT.md+` - Complete +project summary - `+config/repos.config+` - Shared repository +configuration - `+docs/COMPLIANCE_CHECKLIST.md+` - Standards compliance +- `+docs/IMPLEMENTATION_SUMMARY.md+` - Implementation details - +`+docs/LAUNCHER_README.md+` - Launcher documentation - +`+docs/SCRIPT_INTEGRATION_ANALYSIS.md+` - Script analysis - +`+docs/SCRIPT_ORGANIZATION.md+` - Organization guide - +`+git-scripts-launcher+` - Enhanced launcher (executable) - +`+git-scripts.desktop+` - Desktop entry file - `+script-manager+` - +Symbolic link to launcher + +*🔄 Files Moved (12):* - `+0-AI-MANIFEST.a2ml+` → `+ai/+` - `+*.beam+` +files → `+bin/+` - `+README.md+`, `+README_WEB.md+`, +`+SCRIPT_ANALYSIS.md+` → `+docs/+` - `+TEST-NEEDS.md+`, `+TOPOLOGY.md+` +→ `+docs/+` - `+llm-warmup-*.md+` → `+docs/+` - `+test_*.exs+` → +`+test/+` + +*✏️ Files Modified (6):* - `+.gitignore+` - Enhanced to exclude binaries +- `+lib/script_manager/tui.ex+` - Fixed menu duplication - +`+script_manager+` - Updated escript - `+scripts/update_repos.sh+` - +Shared configuration - `+scripts/verify.sh+` - Shared configuration + +*🗑️ Files Removed (8):* - `+Elixir.ScriptManager.*.beam+` - Binary files +(moved to bin/) - `+launchers/git-scripts-launcher-enhanced.sh+` - +Redundant - `+run_manager.sh+` - Redundant wrapper - +`+scripts/comprehensive_script_organization.sh+` - Redundant - +`+scripts/repo_cleanup_integration.sh+` - Redundant + +=== 🎯 Key Improvements Merged + +==== 1. *Organization & Structure* ✅ + +* Clean directory structure with logical organization +* 50% reduction in root directory clutter +* Files grouped by purpose and function + +==== 2. *Redundancy Elimination* ✅ + +* Removed 4 redundant scripts +* Eliminated duplicate functionality +* Cleaner, more maintainable codebase + +==== 3. *Configuration Unification* ✅ + +* Single shared configuration file +* 28 repositories managed consistently +* Prevents future inconsistencies + +==== 4. *Launcher Enhancement* ✅ + +* Added `+--help+` and `+--version+` flags +* Color output for better UX +* Improved error handling +* Fixed menu duplication issue + +==== 5. *Documentation* ✅ + +* 4 comprehensive guides created +* Complete reference material +* Standards compliance documented + +=== 🧪 Verification Status + +==== ✅ All Tests Passed + +* Launcher functionality: Working +* Configuration system: Working + +* Script integration: 100% (9/9 TUI options) +* Directory structure: Verified +* Git history: Clean + +==== ✅ Standards Compliance + +* D-SIP-FV-MA Certified +* UX Standards Compliant +* Production Ready + +=== 🚀 Usage After Merge + +==== Primary Commands + +[source,bash] +---- +# Enhanced launcher with help +./git-scripts-launcher --help + +# Version information +./git-scripts-launcher --version + +# Start the TUI +./git-scripts-launcher --start + +# Check status +./git-scripts-launcher --status + +# Install shortcuts +./git-scripts-launcher --install +---- + +==== Script Usage + +[source,bash] +---- +# All scripts now use shared configuration +./scripts/update_repos.sh +./scripts/verify.sh + +# Direct script execution still works +./scripts/wiki-audit.sh +./scripts/branch-protection-apply.sh +---- + +=== 📈 Impact Metrics + +[cols=",,,",options="header",] +|=== +|Metric |Before |After |Improvement +|Root files |30+ |15 |50% reduction +|Scripts |15 |11 |27% cleaner +|Config files |2 |1 |Unified +|Documentation |Minimal |Comprehensive |Complete +|Lines of code |~900 |~1479 |Enhanced +|Integration rate |~70% |100% |Perfect +|=== + +=== 🎉 Conclusion + +*Status:* SUCCESSFULLY MERGED TO MAIN BRANCH ✅ + +The git-scripts repository has been transformed into a +*production-ready, professional-grade system* with: + +* ✅ Clean, logical organization +* ✅ Eliminated redundancy +* ✅ Unified configuration +* ✅ Enhanced user experience +* ✅ Comprehensive documentation +* ✅ Full standards compliance + +*Recommendation:* The system is ready for production use. Monitor for +any issues and gather user feedback for continuous improvement. + +*Next Steps:* 1. Test in production environment 2. Gather user feedback +3. Monitor performance 4. Plan future enhancements + +🎉 *PROJECT COMPLETE AND DEPLOYED!* diff --git a/MERGE_SUMMARY.md b/MERGE_SUMMARY.md deleted file mode 100644 index 7091c80..0000000 --- a/MERGE_SUMMARY.md +++ /dev/null @@ -1,169 +0,0 @@ - -# 🎉 Git Scripts - Merge Summary - -## ✅ **SUCCESSFULLY MERGED TO MAIN BRANCH** - -**Commit:** `246a0c4` -**Date:** April 9, 2024 -**Branch:** `main` -**Remote:** `github.com:hyperpolymath/git-scripts.git` - -## 📋 Merge Details - -### Changes Pushed -``` -34 files changed, 1479 insertions(+), 904 deletions(-) -``` - -### Files Affected - -**📁 New Directories Created (5):** -- `ai/` - AI configuration files -- `bin/` - Binary artifacts -- `config/` - Shared configuration -- `docs/` - Comprehensive documentation -- `test/` - Test files - -**📝 New Files Added (15):** -- `FINAL_STATUS_REPORT.md` - Complete project summary -- `config/repos.config` - Shared repository configuration -- `docs/COMPLIANCE_CHECKLIST.md` - Standards compliance -- `docs/IMPLEMENTATION_SUMMARY.md` - Implementation details -- `docs/LAUNCHER_README.md` - Launcher documentation -- `docs/SCRIPT_INTEGRATION_ANALYSIS.md` - Script analysis -- `docs/SCRIPT_ORGANIZATION.md` - Organization guide -- `git-scripts-launcher` - Enhanced launcher (executable) -- `git-scripts.desktop` - Desktop entry file -- `script-manager` - Symbolic link to launcher - -**🔄 Files Moved (12):** -- `0-AI-MANIFEST.a2ml` → `ai/` -- `*.beam` files → `bin/` -- `README.md`, `README_WEB.md`, `SCRIPT_ANALYSIS.md` → `docs/` -- `TEST-NEEDS.md`, `TOPOLOGY.md` → `docs/` -- `llm-warmup-*.md` → `docs/` -- `test_*.exs` → `test/` - -**✏️ Files Modified (6):** -- `.gitignore` - Enhanced to exclude binaries -- `lib/script_manager/tui.ex` - Fixed menu duplication -- `script_manager` - Updated escript -- `scripts/update_repos.sh` - Shared configuration -- `scripts/verify.sh` - Shared configuration - -**🗑️ Files Removed (8):** -- `Elixir.ScriptManager.*.beam` - Binary files (moved to bin/) -- `launchers/git-scripts-launcher-enhanced.sh` - Redundant -- `run_manager.sh` - Redundant wrapper -- `scripts/comprehensive_script_organization.sh` - Redundant -- `scripts/repo_cleanup_integration.sh` - Redundant - -## 🎯 Key Improvements Merged - -### 1. **Organization & Structure** ✅ -- Clean directory structure with logical organization -- 50% reduction in root directory clutter -- Files grouped by purpose and function - -### 2. **Redundancy Elimination** ✅ -- Removed 4 redundant scripts -- Eliminated duplicate functionality -- Cleaner, more maintainable codebase - -### 3. **Configuration Unification** ✅ -- Single shared configuration file -- 28 repositories managed consistently -- Prevents future inconsistencies - -### 4. **Launcher Enhancement** ✅ -- Added `--help` and `--version` flags -- Color output for better UX -- Improved error handling -- Fixed menu duplication issue - -### 5. **Documentation** ✅ -- 4 comprehensive guides created -- Complete reference material -- Standards compliance documented - -## 🧪 Verification Status - -### ✅ All Tests Passed -- Launcher functionality: Working -- Configuration system: Working -- Script integration: 100% (9/9 TUI options) -- Directory structure: Verified -- Git history: Clean - -### ✅ Standards Compliance -- D-SIP-FV-MA Certified -- UX Standards Compliant -- Production Ready - -## 🚀 Usage After Merge - -### Primary Commands -```bash -# Enhanced launcher with help -./git-scripts-launcher --help - -# Version information -./git-scripts-launcher --version - -# Start the TUI -./git-scripts-launcher --start - -# Check status -./git-scripts-launcher --status - -# Install shortcuts -./git-scripts-launcher --install -``` - -### Script Usage -```bash -# All scripts now use shared configuration -./scripts/update_repos.sh -./scripts/verify.sh - -# Direct script execution still works -./scripts/wiki-audit.sh -./scripts/branch-protection-apply.sh -``` - -## 📈 Impact Metrics - -| Metric | Before | After | Improvement | -|--------|--------|-------|-------------| -| Root files | 30+ | 15 | 50% reduction | -| Scripts | 15 | 11 | 27% cleaner | -| Config files | 2 | 1 | Unified | -| Documentation | Minimal | Comprehensive | Complete | -| Lines of code | ~900 | ~1479 | Enhanced | -| Integration rate | ~70% | 100% | Perfect | - -## 🎉 Conclusion - -**Status:** SUCCESSFULLY MERGED TO MAIN BRANCH ✅ - -The git-scripts repository has been transformed into a **production-ready, professional-grade system** with: - -- ✅ Clean, logical organization -- ✅ Eliminated redundancy -- ✅ Unified configuration -- ✅ Enhanced user experience -- ✅ Comprehensive documentation -- ✅ Full standards compliance - -**Recommendation:** The system is ready for production use. Monitor for any issues and gather user feedback for continuous improvement. - -**Next Steps:** -1. Test in production environment -2. Gather user feedback -3. Monitor performance -4. Plan future enhancements - -🎉 **PROJECT COMPLETE AND DEPLOYED!** \ No newline at end of file diff --git a/READINESS.adoc b/READINESS.adoc new file mode 100644 index 0000000..81292fa --- /dev/null +++ b/READINESS.adoc @@ -0,0 +1,5 @@ +== Readiness Assessment + +*Current Grade:* A + +This project is production-ready and D-SIP-FV-MA certified. diff --git a/READINESS.md b/READINESS.md deleted file mode 100644 index 270138a..0000000 --- a/READINESS.md +++ /dev/null @@ -1,9 +0,0 @@ - -# Readiness Assessment - -**Current Grade:** A - -This project is production-ready and D-SIP-FV-MA certified. diff --git a/README.adoc b/README.adoc new file mode 100644 index 0000000..4ef7c7f --- /dev/null +++ b/README.adoc @@ -0,0 +1,90 @@ +https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/git-scripts[image:https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity[OpenSSF +Best Practices]] +https://github.com/hyperpolymath/palimpsest-license[image:https://img.shields.io/badge/License-MPL_2.0--1.0-blue.svg[License: +MPL-2.0]] + +A modern, Elixir-based TUI for managing reusable scripts and functions +across repositories. + +== Features + +* *Wiki Audit*: Check wiki content for issues +* *Project Tabs Audit*: Verify GitHub project tab configurations +* *Branch Protection*: Apply branch protection rules +* *MD to ADOC Converter*: Convert Markdown to AsciiDoc format +* *Standardize READMEs*: Ensure consistent README formatting +* *Update Repos*: Mass update repositories +* *Audit Scripts*: Security and quality checks +* *Verify*: Repository configuration verification +* *GH CLI*: GitHub CLI utilities +* *Repository Cleanup*: Comprehensive cleanup and maintenance + +== Architecture + +* *Language*: Elixir (OTP-based, fault-tolerant) +* *Pattern*: Modular OTP application with supervisor +* *Interface*: Interactive TUI with menu system +* *Execution*: Standalone escript (no runtime dependencies) + +== Usage + +=== Run the TUI + +[source,bash] +---- +cd /var/mnt/eclipse/repos/git-scripts +./launchers/git-scripts-launcher-enhanced.sh +---- + +=== Build from Source + +[source,bash] +---- +mix deps.get +mix compile +mix escript.build +---- + +== Implementation Details + +Each function is implemented as an Elixir module: + +* `+ScriptManager.WikiAudit+` — Wiki auditing +* `+ScriptManager.ProjectTabsAudit+` — Project tab verification +* `+ScriptManager.BranchProtection+` — Branch protection rules +* `+ScriptManager.MDConverter+` — Format conversion +* `+ScriptManager.ReadmeStandardizer+` — README standardization +* `+ScriptManager.RepoUpdater+` — Repository updates +* `+ScriptManager.ScriptAuditor+` — Script auditing +* `+ScriptManager.Verifier+` — Configuration verification +* `+ScriptManager.GHCLI+` — GitHub CLI utilities +* `+ScriptManager.RepoCleanup+` — Repository cleanup and maintenance + +== Future Development + +* Add real file system operations +* Implement GitHub API integration +* Add configuration management +* Enhance error handling and logging +* Add progress reporting + +== Shortcuts + +* *Desktop*: `+launchers/git-scripts.desktop+` +* *Start Menu*: `+~/.local/share/applications/git-scripts.desktop+` + +== Benefits over Bash Version + +[arabic] +. *Type Safety*: Elixir’s strong typing prevents many runtime errors +. *Concurrency*: Built-in support for parallel operations +. *Fault Tolerance*: OTP supervision trees handle errors gracefully +. *Maintainability*: Clear module structure and documentation +. *Extensibility*: Easy to add new functions as modules +. *Performance*: Compiled BEAM bytecode runs efficiently + +Wondering how this works? See EXPLAINME.adoc. + +== License + +SPDX-License-Identifier: CC-BY-SA-4.0 See LICENSE. diff --git a/README.md b/README.md deleted file mode 100644 index 5341e2f..0000000 --- a/README.md +++ /dev/null @@ -1,123 +0,0 @@ - - -[![OpenSSF Best Practices](https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity)](https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/git-scripts) -[![License: MPL-2.0](https://img.shields.io/badge/License-MPL_2.0--1.0-blue.svg)](https://github.com/hyperpolymath/palimpsest-license) - -A modern, Elixir-based TUI for managing reusable scripts and functions -across repositories. - -# Features - -- **Wiki Audit**: Check wiki content for issues - -- **Project Tabs Audit**: Verify GitHub project tab configurations - -- **Branch Protection**: Apply branch protection rules - -- **MD to ADOC Converter**: Convert Markdown to AsciiDoc format - -- **Standardize READMEs**: Ensure consistent README formatting - -- **Update Repos**: Mass update repositories - -- **Audit Scripts**: Security and quality checks - -- **Verify**: Repository configuration verification - -- **GH CLI**: GitHub CLI utilities - -- **Repository Cleanup**: Comprehensive cleanup and maintenance - -# Architecture - -- **Language**: Elixir (OTP-based, fault-tolerant) - -- **Pattern**: Modular OTP application with supervisor - -- **Interface**: Interactive TUI with menu system - -- **Execution**: Standalone escript (no runtime dependencies) - -# Usage - -## Run the TUI - -```bash -cd /var/mnt/eclipse/repos/git-scripts -./launchers/git-scripts-launcher-enhanced.sh -``` - -## Build from Source - -```bash -mix deps.get -mix compile -mix escript.build -``` - -# Implementation Details - -Each function is implemented as an Elixir module: - -- `ScriptManager.WikiAudit` — Wiki auditing - -- `ScriptManager.ProjectTabsAudit` — Project tab verification - -- `ScriptManager.BranchProtection` — Branch protection rules - -- `ScriptManager.MDConverter` — Format conversion - -- `ScriptManager.ReadmeStandardizer` — README standardization - -- `ScriptManager.RepoUpdater` — Repository updates - -- `ScriptManager.ScriptAuditor` — Script auditing - -- `ScriptManager.Verifier` — Configuration verification - -- `ScriptManager.GHCLI` — GitHub CLI utilities - -- `ScriptManager.RepoCleanup` — Repository cleanup and maintenance - -# Future Development - -- Add real file system operations - -- Implement GitHub API integration - -- Add configuration management - -- Enhance error handling and logging - -- Add progress reporting - -# Shortcuts - -- **Desktop**: `launchers/git-scripts.desktop` - -- **Start Menu**: `~/.local/share/applications/git-scripts.desktop` - -# Benefits over Bash Version - -1. **Type Safety**: Elixir’s strong typing prevents many runtime errors - -2. **Concurrency**: Built-in support for parallel operations - -3. **Fault Tolerance**: OTP supervision trees handle errors gracefully - -4. **Maintainability**: Clear module structure and documentation - -5. **Extensibility**: Easy to add new functions as modules - -6. **Performance**: Compiled BEAM bytecode runs efficiently - -Wondering how this works? See [EXPLAINME.adoc](EXPLAINME.adoc). - -# License - -SPDX-License-Identifier: CC-BY-SA-4.0 See [LICENSE](LICENSE). diff --git a/SECURITY.adoc b/SECURITY.adoc new file mode 100644 index 0000000..3081ece --- /dev/null +++ b/SECURITY.adoc @@ -0,0 +1,16 @@ +== Security Policy + +=== Reporting a Vulnerability + +If you discover a security vulnerability, please report it responsibly: + +* *Email:* j.d.a.jewell@open.ac.uk +* *Do NOT* open a public issue for security vulnerabilities + +We will acknowledge receipt within 48 hours and provide a detailed +response within 7 days. + +=== Supported Versions + +Only the latest release on the `+main+` branch is supported with +security updates. diff --git a/SECURITY.md b/SECURITY.md deleted file mode 100644 index a584804..0000000 --- a/SECURITY.md +++ /dev/null @@ -1,18 +0,0 @@ - -# Security Policy - -## Reporting a Vulnerability - -If you discover a security vulnerability, please report it responsibly: - -- **Email:** j.d.a.jewell@open.ac.uk -- **Do NOT** open a public issue for security vulnerabilities - -We will acknowledge receipt within 48 hours and provide a detailed response within 7 days. - -## Supported Versions - -Only the latest release on the `main` branch is supported with security updates. diff --git a/deps/ex2ms/README.md b/deps/ex2ms/README.md deleted file mode 100644 index 6c19a8a..0000000 --- a/deps/ex2ms/README.md +++ /dev/null @@ -1,49 +0,0 @@ -# ex2ms - -[![Build Status](https://travis-ci.org/ericmj/ex2ms.svg?branch=master)](https://travis-ci.org/ericmj/ex2ms) - -Translates Elixir functions to match specifications for use with `ets`. -Requires Elixir 1.0 or later. - -## Usage - -Add ex2ms to your Mix dependencies: - -```elixir -defp deps do - [{:ex2ms, "~> 1.0"}] -end -``` - -In your shell write the following to get up and running to try ex2ms out: - -```bash -mix deps.get -iex -S mix -``` - -```elixir -iex(1)> import Ex2ms -iex(2)> fun do { x, y } = z when x > 10 -> z end -[{{:"$1",:"$2"},[{:>,:"$1",10}],[:"$_"]}] -iex(3)> :ets.test_ms({ 42, 43 }, v(2)) -{:ok,{42,43}} -iex(4)> :ets.test_ms({ 0, 10 }, v(2)) -{:ok,false} -``` - -## License - - Copyright 2013 Eric Meadows-Jönsson - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/deps/jason/CHANGELOG.md b/deps/jason/CHANGELOG.md deleted file mode 100644 index c37dd2a..0000000 --- a/deps/jason/CHANGELOG.md +++ /dev/null @@ -1,132 +0,0 @@ -# Changelog - -## 1.4.4 (26.07.2024) - -* Fix warnings on Elixir 1.17 by conditionally compiling Decimal support - -## 1.4.3 (29.06.2024) - -* Fix derive with _ struct key - -## 1.4.2 (29.06.2024) - -* Fix compiler warnings for Elixir 1.17 - -## 1.4.1 (06.07.2023) - -* Add limit to decoded integer sizes of 1024 digits. This can be changed - with the `decoding_integer_digit_limit` app env config. - -## 1.4.0 (12.09.2022) - -### Enhancements - -* Use the `:erlang.float_to_binary(_, [:short])` function, instead of `io_lib_format.fwrite_g/1` - where available (OTP 24.1+). This provides equivalent output with much less memory used - and significantly improved performance. - -## 1.3.0 (21.12.2021) - -### Enhancements - -* Add the `Jason.OrderedObject` struct -* Support decoding objects preserving all the keys with `objects: :ordered_objects` option -* Support decoding floats to `Decimal` with `floats: :decimals` option -* Add `~j` and `~J` sigils in module `Jason.Sigil` to support writing JSON literals in code - -### Fixes -* Fix error reporting when decoding strings (it was possible to mis-attribute the offending byte) -* Verify fields given to `@derive` - -## 1.2.2 (08.09.2020) - -### Enhancements - -* Support Decimal 2.0 - -## 1.2.1 (04.05.2020) - -### Security - -* Fix `html_safe` escaping in `Jason.encode` - - The ` -# Launcher Compliance Checklist - -This document verifies compliance with the Comprehensive Launcher Standard from the hyperpolymath ecosystem. - -## ✅ Compliance Checklist - -- [x] **Remove all terminal wrapping from desktop files** - - Desktop file uses `Terminal=false` - - No konsole/xterm wrapping - -- [x] **Set `Terminal=false` for GUI/web applications** - - `Terminal=false` in desktop file - - Direct execution without terminal wrapping - -- [x] **Implement `nohup` for background processes** - - Uses `nohup $COMMAND >"$LOG_FILE" 2>&1 &` - - Prevents process termination when parent exits - -- [x] **Add PID file tracking and cleanup** - - PID file: `/tmp/gitscripts-server.pid` - - Cleanup in `stop_server()` function - - Proper process checking with `is_running()` - -- [x] **Implement `wait_for_process()` with reasonable timeout** - - 10-second timeout for process startup - - Active waiting with feedback - - Proper error handling on timeout - -- [x] **Add proper error handling and user feedback** - - `log()` function for user feedback - - `err()` function for error messages - - `warn()` function for warnings - - Clear, actionable error messages - -- [x] **Provide clear success/failure messages** - - Success: "Git Scripts started successfully" - - Failure: Detailed troubleshooting steps - - Status: Clear running/not running messages - -- [x] **Log to predictable location (`/tmp/app-name.log`)** - - Logs to `/tmp/gitscripts-server.log` - - Log location provided in success message - - Error messages reference log file - -- [x] **Handle browser launch failures gracefully** - - `open_browser()` function handles no URL case - - Falls back to manual instructions - - No browser launching for CLI app (appropriate) - -- [x] **Provide manual fallback instructions** - - Troubleshooting steps in error messages - - Manual launch instructions provided - - Log file location always shown - -- [x] **Implement `--start`, `--stop`, `--status` modes** - - `--start`: Starts the server - - `--stop`: Stops the server - - `--status`: Shows running status - - All modes properly implemented - -- [x] **Test desktop launching without terminal** - - Desktop file uses `Terminal=false` - - Direct execution of launcher script - - No terminal dependency - -- [x] **Verify browser opens automatically** - - N/A for CLI application (appropriate) - - Would be implemented if URL was configured - -- [x] **Test error conditions (port in use, missing deps)** - - Timeout handling implemented - - Process already running detection - - Proper error messages for all cases - -## ✅ Additional Features - -- [x] **Cross-platform shortcut installation** - - `--install` flag for easy setup - - Linux: XDG compliant installation - - macOS: .app bundle creation - - Windows: WSL support and guidance - -- [x] **Desktop actions** - - Stop action in desktop file - - Status action in desktop file - - Proper action definitions - -- [x] **D-SIP-FV-MA Compliance** - - Dependable: Robust error handling - - Secure: Proper PID cleanup - - Interoperable: Cross-platform support - - Performant: Reasonable timeouts - - Functional: All modes work - - Versatile: Multiple platforms - - Metaiconic: Follows standards - - Accessible: Clear user feedback - -## 📋 Implementation Details - -### Process Management -```bash -# Start with nohup -nohup $COMMAND >"$LOG_FILE" 2>&1 & -echo $! > "$PID_FILE" - -# Check running -is_running() { - [ -f "$PID_FILE" ] && kill -0 "$(cat "$PID_FILE")" 2>/dev/null -} - -# Clean shutdown -stop_server() { - kill "$(cat "$PID_FILE")" 2>/dev/null || true - rm -f "$PID_FILE" -} -``` - -### Error Handling -```bash -err() { - echo "[$APP_NAME] ERROR: $1" >&2 -} - -# Example usage with troubleshooting -err "Git Scripts did not start within 10 seconds" -err "Check log: $LOG_FILE" -err "" -err "Troubleshooting steps:" -err " 1. Check if script_manager exists..." -err " 2. Review server logs..." -``` - -### Cross-Platform Support -```bash -install_shortcuts() { - # Detect platform (Linux/macOS/Windows) - # Install appropriate shortcuts for each - # Linux: XDG compliant desktop files - # macOS: .app bundle - # Windows: WSL support -} -``` - -## 🎯 Standards Compliance - -This launcher fully complies with: -- **Comprehensive Launcher Standard** (standards/docs/UX-standards/launcher-standard.adoc) -- **D-SIP-FV-MA Principles** -- **XDG Desktop Entry Specification** -- **Cross-Platform Installation Guidelines** - -The implementation provides a robust, user-friendly launcher that works across Linux, macOS, and Windows (WSL) environments while maintaining full compliance with ecosystem standards. \ No newline at end of file diff --git a/docs/IMPLEMENTATION_SUMMARY.adoc b/docs/IMPLEMENTATION_SUMMARY.adoc new file mode 100644 index 0000000..87265f6 --- /dev/null +++ b/docs/IMPLEMENTATION_SUMMARY.adoc @@ -0,0 +1,298 @@ +== Git Scripts Implementation Summary + +=== 🎉 *Project Status: COMPLETED ✅* + +This document summarizes all the improvements made to the git-scripts +repository. + +=== 🗂️ *Directory Structure Improvements* + +==== Before + +.... +git-scripts/ +├── 30+ files in root directory +├── Mixed organization +├── Redundant scripts +├── Inconsistent configuration +└── Hard to navigate +.... + +==== After + +.... +git-scripts/ +├── ai/ # AI configuration files +├── bin/ # Binary/beam files +├── config/ # Shared configuration +├── docs/ # Documentation +├── launchers/ # Launcher scripts +├── scripts/ # Functional scripts +├── test/ # Test files +├── lib/ # Elixir source code +├── priv/ # Private assets +└── (clean root with essential files) +.... + +=== 🗑️ *Cleanup Completed* + +==== Files Removed (4 redundant scripts) + +* `+run_manager.sh+` - Just a wrapper, no added value +* `+launchers/git-scripts-launcher-enhanced.sh+` - Replaced by +standardized launcher +* `+scripts/comprehensive_script_organization.sh+` - Meta-organization +script +* `+scripts/repo_cleanup_integration.sh+` - Cleanup moved to external +system + +==== Git History Cleaned + +[source,bash] +---- +git rm --cached [removed-files] +---- + +==== .gitignore Updated + +* Added `+bin/+` to ignore binary artifacts +* Improved organization of ignore patterns + +=== 🔧 *Configuration Unified* + +==== Shared Repository Configuration + +Created `+config/repos.config+` with: - *28 repositories* in main list - +*4 commit repositories* subset - *Centralized management* + +==== Scripts Updated + +Both `+update_repos.sh+` and `+verify.sh+` now use: + +[source,bash] +---- +# Source shared configuration +if [ -f "/var/mnt/eclipse/repos/git-scripts/config/repos.config" ]; then + source "/var/mnt/eclipse/repos/git-scripts/config/repos.config" +else + echo "Error: Configuration file not found" >&2 + exit 1 +fi +---- + +*Benefits:* - ✅ Single source of truth for repository lists - ✅ +Prevents inconsistencies between scripts - ✅ Easier to maintain and +update + +=== 🚀 *Launcher Enhanced* + +==== New Features Added + +===== 1. Help System (`+--help+`, `+-h+`, `+--?+`) + +[source,bash] +---- +./git-scripts-launcher --help +---- + +Shows comprehensive usage information with examples. + +===== 2. Version Information (`+--version+`, `+-v+`) + +[source,bash] +---- +./git-scripts-launcher --version +---- + +Shows version, compliance info, and copyright. + +===== 3. Color Output + +* Blue for headers +* Green for success/usage +* Yellow for warnings +* Better user experience + +===== 4. Improved Error Handling + +* Clear, actionable error messages +* Troubleshooting steps included +* Proper exit codes + +==== All Original Functionality Preserved + +* `+--start+` - Start the TUI +* `+--stop+` - Stop the TUI +* `+--status+` - Check status +* `+--install+` - Install shortcuts +* `+--auto+` - Default behavior + +=== 📖 *Documentation Created* + +==== New Documentation Files + +[arabic] +. *`+docs/SCRIPT_ORGANIZATION.md+`* +* Complete guide to the new organization +* Script integration matrix +* Best practices for development +* Maintenance instructions +. *`+docs/SCRIPT_INTEGRATION_ANALYSIS.md+`* +* Detailed analysis of all scripts +* Integration status for each script +* Recommendations for future development +. *`+docs/IMPLEMENTATION_SUMMARY.md+`* (this file) +* Complete summary of all changes +* Before/after comparison +* Testing results +. *`+docs/COMPLIANCE_CHECKLIST.md+`* +* Standards compliance verification +* All checklist items verified +* Reference implementation details + +=== 🔗 *Integration Status* + +==== TUI ↔ Scripts Integration (100% Complete) + +[width="100%",cols="36%,22%,22%,20%",options="header",] +|=== +|TUI Option |Script |Status |Notes +|[1] Wiki Audit |`+wiki-audit.sh+` |✅ Integrated |Working + +|[2] Project Tabs Audit |`+project-tabs-audit.sh+` |✅ Integrated +|Working + +|[3] Branch Protection |`+branch-protection-apply.sh+` |✅ Integrated +|Working + +|[4] MD to ADOC |`+md_to_adoc_converter.sh+` |✅ Integrated |Working + +|[5] Standardize READMEs |`+standardize_readmes.sh+` |✅ Integrated +|Working + +|[6] Update Repos |`+update_repos.sh+` |✅ Integrated |Shared config + +|[7] Audit Scripts |`+audit_script.sh+` |✅ Integrated |Working + +|[8] Verify |`+verify.sh+` |✅ Integrated |Shared config + +|[9] Use GH CLI |`+USE-GH-CLI.sh+` |✅ Integrated |Working +|=== + +==== External Dependencies + +* Repo Cleanup - External system +* Clean Unicode - External script + +=== 🧪 *Testing Results* + +==== Launcher Tests + +[source,bash] +---- +# ✅ Help system works +./git-scripts-launcher --help + +# ✅ Version info works +./git-scripts-launcher --version + +# ✅ Status check works +./git-scripts-launcher --status + +# ✅ Start/stop functionality preserved +./git-scripts-launcher --start +./git-scripts-launcher --stop +---- + +==== Configuration Tests + +[source,bash] +---- +# ✅ Shared config loads correctly +./scripts/update_repos.sh --dry-run +./scripts/verify.sh +---- + +==== Integration Tests + +[source,bash] +---- +# ✅ All scripts executable +for script in scripts/*.sh; do + test -x "$script" && echo "✅ $script is executable" +done + +# ✅ Shared config accessible +test -f config/repos.config && echo "✅ Config file exists" +---- + +=== 📈 *Metrics & Statistics* + +==== Before vs After Comparison + +[cols=",,,",options="header",] +|=== +|Metric |Before |After |Improvement +|Root files |30+ |15 |✅ 50% reduction +|Redundant scripts |4 |0 |✅ 100% cleaned +|Configuration files |2 |1 |✅ Unified +|Repository lists |2 (inconsistent) |1 (shared) |✅ Synchronized +|Documentation |Minimal |Comprehensive |✅ Enhanced +|Launcher features |Basic |Enhanced |✅ Improved +|=== + +==== Code Quality + +* ✅ *Standards Compliant* - D-SIP-FV-MA +* ✅ *Error Handling* - Comprehensive +* ✅ *User Experience* - Color output, help system +* ✅ *Maintainability* - Shared config, clear structure +* ✅ *Documentation* - Complete and up-to-date + +=== 🎯 *Key Achievements* + +[arabic] +. *✅ Clean Organization* - Logical directory structure +. *✅ Reduced Redundancy* - 4 scripts removed +. *✅ Unified Configuration* - Single source of truth +. *✅ Enhanced Launcher* - Help, version, better UX +. *✅ Comprehensive Docs* - Complete reference material +. *✅ Maintained Compatibility* - All functionality preserved +. *✅ Improved Maintainability* - Easier to update and extend + +=== 🚀 *Next Steps Recommendations* + +==== Immediate (Next 1-2 weeks) + +* Test all scripts in production environment +* Gather user feedback on new launcher +* Monitor for any issues with shared configuration + +==== Short-term (2-4 weeks) + +* Add more scripts to the TUI as needed +* Enhance error reporting and logging +* Add performance metrics tracking + +==== Long-term (1-3 months) + +* Consider script marketplace/plugin system +* Add web interface for remote management +* Implement CI/CD pipeline for script testing + +=== 🎉 *Conclusion* + +The git-scripts repository has been successfully transformed from a +collection of loosely organized scripts into a well-structured, +maintainable system with: + +* *Clean architecture* +* *Unified configuration* +* *Enhanced user experience* +* *Comprehensive documentation* +* *Full standards compliance* + +The system is now ready for: - ✅ *Production use* - ✅ *Team +collaboration* - ✅ *Ongoing development* - ✅ *Easy maintenance* + +*Status: PRODUCTION READY 🚀* diff --git a/docs/IMPLEMENTATION_SUMMARY.md b/docs/IMPLEMENTATION_SUMMARY.md deleted file mode 100644 index 38cc425..0000000 --- a/docs/IMPLEMENTATION_SUMMARY.md +++ /dev/null @@ -1,258 +0,0 @@ - -# Git Scripts Implementation Summary - -## 🎉 **Project Status: COMPLETED ✅** - -This document summarizes all the improvements made to the git-scripts repository. - -## 🗂️ **Directory Structure Improvements** - -### Before -``` -git-scripts/ -├── 30+ files in root directory -├── Mixed organization -├── Redundant scripts -├── Inconsistent configuration -└── Hard to navigate -``` - -### After -``` -git-scripts/ -├── ai/ # AI configuration files -├── bin/ # Binary/beam files -├── config/ # Shared configuration -├── docs/ # Documentation -├── launchers/ # Launcher scripts -├── scripts/ # Functional scripts -├── test/ # Test files -├── lib/ # Elixir source code -├── priv/ # Private assets -└── (clean root with essential files) -``` - -## 🗑️ **Cleanup Completed** - -### Files Removed (4 redundant scripts) -- `run_manager.sh` - Just a wrapper, no added value -- `launchers/git-scripts-launcher-enhanced.sh` - Replaced by standardized launcher -- `scripts/comprehensive_script_organization.sh` - Meta-organization script -- `scripts/repo_cleanup_integration.sh` - Cleanup moved to external system - -### Git History Cleaned -```bash -git rm --cached [removed-files] -``` - -### .gitignore Updated -- Added `bin/` to ignore binary artifacts -- Improved organization of ignore patterns - -## 🔧 **Configuration Unified** - -### Shared Repository Configuration -Created `config/repos.config` with: -- **28 repositories** in main list -- **4 commit repositories** subset -- **Centralized management** - -### Scripts Updated -Both `update_repos.sh` and `verify.sh` now use: -```bash -# Source shared configuration -if [ -f "/var/mnt/eclipse/repos/git-scripts/config/repos.config" ]; then - source "/var/mnt/eclipse/repos/git-scripts/config/repos.config" -else - echo "Error: Configuration file not found" >&2 - exit 1 -fi -``` - -**Benefits:** -- ✅ Single source of truth for repository lists -- ✅ Prevents inconsistencies between scripts -- ✅ Easier to maintain and update - -## 🚀 **Launcher Enhanced** - -### New Features Added - -#### 1. Help System (`--help`, `-h`, `--?`) -```bash -./git-scripts-launcher --help -``` -Shows comprehensive usage information with examples. - -#### 2. Version Information (`--version`, `-v`) -```bash -./git-scripts-launcher --version -``` -Shows version, compliance info, and copyright. - -#### 3. Color Output -- Blue for headers -- Green for success/usage -- Yellow for warnings -- Better user experience - -#### 4. Improved Error Handling -- Clear, actionable error messages -- Troubleshooting steps included -- Proper exit codes - -### All Original Functionality Preserved -- `--start` - Start the TUI -- `--stop` - Stop the TUI -- `--status` - Check status -- `--install` - Install shortcuts -- `--auto` - Default behavior - -## 📖 **Documentation Created** - -### New Documentation Files - -1. **`docs/SCRIPT_ORGANIZATION.md`** - - Complete guide to the new organization - - Script integration matrix - - Best practices for development - - Maintenance instructions - -2. **`docs/SCRIPT_INTEGRATION_ANALYSIS.md`** - - Detailed analysis of all scripts - - Integration status for each script - - Recommendations for future development - -3. **`docs/IMPLEMENTATION_SUMMARY.md`** (this file) - - Complete summary of all changes - - Before/after comparison - - Testing results - -4. **`docs/COMPLIANCE_CHECKLIST.md`** - - Standards compliance verification - - All checklist items verified - - Reference implementation details - -## 🔗 **Integration Status** - -### TUI ↔ Scripts Integration (100% Complete) - -| TUI Option | Script | Status | Notes | -|------------|--------|--------|-------| -| [1] Wiki Audit | `wiki-audit.sh` | ✅ Integrated | Working | -| [2] Project Tabs Audit | `project-tabs-audit.sh` | ✅ Integrated | Working | -| [3] Branch Protection | `branch-protection-apply.sh` | ✅ Integrated | Working | -| [4] MD to ADOC | `md_to_adoc_converter.sh` | ✅ Integrated | Working | -| [5] Standardize READMEs | `standardize_readmes.sh` | ✅ Integrated | Working | -| [6] Update Repos | `update_repos.sh` | ✅ Integrated | Shared config | -| [7] Audit Scripts | `audit_script.sh` | ✅ Integrated | Working | -| [8] Verify | `verify.sh` | ✅ Integrated | Shared config | -| [9] Use GH CLI | `USE-GH-CLI.sh` | ✅ Integrated | Working | - -### External Dependencies -- Repo Cleanup - External system -- Clean Unicode - External script - -## 🧪 **Testing Results** - -### Launcher Tests -```bash -# ✅ Help system works -./git-scripts-launcher --help - -# ✅ Version info works -./git-scripts-launcher --version - -# ✅ Status check works -./git-scripts-launcher --status - -# ✅ Start/stop functionality preserved -./git-scripts-launcher --start -./git-scripts-launcher --stop -``` - -### Configuration Tests -```bash -# ✅ Shared config loads correctly -./scripts/update_repos.sh --dry-run -./scripts/verify.sh -``` - -### Integration Tests -```bash -# ✅ All scripts executable -for script in scripts/*.sh; do - test -x "$script" && echo "✅ $script is executable" -done - -# ✅ Shared config accessible -test -f config/repos.config && echo "✅ Config file exists" -``` - -## 📈 **Metrics & Statistics** - -### Before vs After Comparison - -| Metric | Before | After | Improvement | -|--------|--------|-------|-------------| -| Root files | 30+ | 15 | ✅ 50% reduction | -| Redundant scripts | 4 | 0 | ✅ 100% cleaned | -| Configuration files | 2 | 1 | ✅ Unified | -| Repository lists | 2 (inconsistent) | 1 (shared) | ✅ Synchronized | -| Documentation | Minimal | Comprehensive | ✅ Enhanced | -| Launcher features | Basic | Enhanced | ✅ Improved | - -### Code Quality -- ✅ **Standards Compliant** - D-SIP-FV-MA -- ✅ **Error Handling** - Comprehensive -- ✅ **User Experience** - Color output, help system -- ✅ **Maintainability** - Shared config, clear structure -- ✅ **Documentation** - Complete and up-to-date - -## 🎯 **Key Achievements** - -1. **✅ Clean Organization** - Logical directory structure -2. **✅ Reduced Redundancy** - 4 scripts removed -3. **✅ Unified Configuration** - Single source of truth -4. **✅ Enhanced Launcher** - Help, version, better UX -5. **✅ Comprehensive Docs** - Complete reference material -6. **✅ Maintained Compatibility** - All functionality preserved -7. **✅ Improved Maintainability** - Easier to update and extend - -## 🚀 **Next Steps Recommendations** - -### Immediate (Next 1-2 weeks) -- Test all scripts in production environment -- Gather user feedback on new launcher -- Monitor for any issues with shared configuration - -### Short-term (2-4 weeks) -- Add more scripts to the TUI as needed -- Enhance error reporting and logging -- Add performance metrics tracking - -### Long-term (1-3 months) -- Consider script marketplace/plugin system -- Add web interface for remote management -- Implement CI/CD pipeline for script testing - -## 🎉 **Conclusion** - -The git-scripts repository has been successfully transformed from a collection of loosely organized scripts into a well-structured, maintainable system with: - -- **Clean architecture** -- **Unified configuration** -- **Enhanced user experience** -- **Comprehensive documentation** -- **Full standards compliance** - -The system is now ready for: -- ✅ **Production use** -- ✅ **Team collaboration** -- ✅ **Ongoing development** -- ✅ **Easy maintenance** - -**Status: PRODUCTION READY 🚀** \ No newline at end of file diff --git a/docs/LAUNCHER_README.adoc b/docs/LAUNCHER_README.adoc new file mode 100644 index 0000000..7223e59 --- /dev/null +++ b/docs/LAUNCHER_README.adoc @@ -0,0 +1,85 @@ +== Git Scripts Launcher + +This directory contains a standardized launcher for the Git Scripts +application following the UX Standards from the hyperpolymath ecosystem. + +=== Files + +* `+git-scripts-launcher+` - Main launcher script (executable) +* `+git-scripts.desktop+` - Desktop entry file for Dolphin/KDE + +=== Usage + +==== From Terminal + +[source,bash] +---- +# Start Git Scripts +./git-scripts-launcher --start + +# Start and auto-launch (default) +./git-scripts-launcher --auto +# or simply +./git-scripts-launcher + +# Stop Git Scripts +./git-scripts-launcher --stop + +# Check status +./git-scripts-launcher --status + +# Install shortcuts (Linux/macOS/Windows) +./git-scripts-launcher --install +---- + +==== From Dolphin/KDE + +[arabic] +. Double-click the `+git-scripts.desktop+` file +. Or right-click and select "`Open With`" > "`Desktop Entry Launcher`" +. The application will start automatically + +==== Desktop Actions + +The desktop file includes additional actions: - *Stop Git Scripts*: +Right-click the desktop file > Actions > Stop Git Scripts - *Git Scripts +Status*: Right-click the desktop file > Actions > Git Scripts Status + +=== Features + +* ✅ Standardized launcher following UX standards +* ✅ Process management with PID tracking +* ✅ Error handling and troubleshooting guidance +* ✅ Multiple launch modes (start, stop, status, auto, install) +* ✅ Desktop integration with actions +* ✅ Cross-platform shortcut installation (Linux/macOS/Windows) +* ✅ Logging to `+/tmp/gitscripts-server.log+` +* ✅ D-SIP-FV-MA Compliant + +=== Installation + +To install the desktop file system-wide: + +[source,bash] +---- +cp git-scripts.desktop ~/.local/share/applications/ +---- + +Then it will appear in your application menu. + +=== Troubleshooting + +If the launcher doesn’t work: + +[arabic] +. Check the log file: `+tail -50 /tmp/gitscripts-server.log+` +. Verify script_manager exists: `+ls -la script_manager+` +. Check process status: `+ps aux | grep script_manager+` +. Rebuild if needed: `+mix escript.build+` + +=== Compliance + +This launcher follows the Comprehensive Launcher Standard: - D-SIP-FV-MA +Compliant - Process management with PID files - Error handling and user +feedback - Standard modes (start, stop, status, auto) - Desktop file +integration diff --git a/docs/LAUNCHER_README.md b/docs/LAUNCHER_README.md deleted file mode 100644 index b922955..0000000 --- a/docs/LAUNCHER_README.md +++ /dev/null @@ -1,86 +0,0 @@ - -# Git Scripts Launcher - -This directory contains a standardized launcher for the Git Scripts application following the UX Standards from the hyperpolymath ecosystem. - -## Files - -- `git-scripts-launcher` - Main launcher script (executable) -- `git-scripts.desktop` - Desktop entry file for Dolphin/KDE - -## Usage - -### From Terminal - -```bash -# Start Git Scripts -./git-scripts-launcher --start - -# Start and auto-launch (default) -./git-scripts-launcher --auto -# or simply -./git-scripts-launcher - -# Stop Git Scripts -./git-scripts-launcher --stop - -# Check status -./git-scripts-launcher --status - -# Install shortcuts (Linux/macOS/Windows) -./git-scripts-launcher --install -``` - -### From Dolphin/KDE - -1. Double-click the `git-scripts.desktop` file -2. Or right-click and select "Open With" > "Desktop Entry Launcher" -3. The application will start automatically - -### Desktop Actions - -The desktop file includes additional actions: -- **Stop Git Scripts**: Right-click the desktop file > Actions > Stop Git Scripts -- **Git Scripts Status**: Right-click the desktop file > Actions > Git Scripts Status - -## Features - -- ✅ Standardized launcher following UX standards -- ✅ Process management with PID tracking -- ✅ Error handling and troubleshooting guidance -- ✅ Multiple launch modes (start, stop, status, auto, install) -- ✅ Desktop integration with actions -- ✅ Cross-platform shortcut installation (Linux/macOS/Windows) -- ✅ Logging to `/tmp/gitscripts-server.log` -- ✅ D-SIP-FV-MA Compliant - -## Installation - -To install the desktop file system-wide: - -```bash -cp git-scripts.desktop ~/.local/share/applications/ -``` - -Then it will appear in your application menu. - -## Troubleshooting - -If the launcher doesn't work: - -1. Check the log file: `tail -50 /tmp/gitscripts-server.log` -2. Verify script_manager exists: `ls -la script_manager` -3. Check process status: `ps aux | grep script_manager` -4. Rebuild if needed: `mix escript.build` - -## Compliance - -This launcher follows the Comprehensive Launcher Standard: -- D-SIP-FV-MA Compliant -- Process management with PID files -- Error handling and user feedback -- Standard modes (start, stop, status, auto) -- Desktop file integration \ No newline at end of file diff --git a/docs/README.adoc b/docs/README.adoc new file mode 100644 index 0000000..59fc375 --- /dev/null +++ b/docs/README.adoc @@ -0,0 +1,80 @@ +== Elixir Script Manager + +A modern, Elixir-based TUI for managing reusable scripts and functions +across repositories. + +=== Features + +* *Wiki Audit*: Check wiki content for issues +* *Project Tabs Audit*: Verify GitHub project tab configurations +* *Branch Protection*: Apply branch protection rules +* *MD to ADOC Converter*: Convert Markdown to AsciiDoc format +* *Standardize READMEs*: Ensure consistent README formatting +* *Update Repos*: Mass update repositories +* *Audit Scripts*: Security and quality checks +* *Verify*: Repository configuration verification +* *GH CLI*: GitHub CLI utilities +* *Repository Cleanup*: Comprehensive cleanup and maintenance + +=== Architecture + +* *Language*: Elixir (OTP-based, fault-tolerant) +* *Pattern*: Modular OTP application with supervisor +* *Interface*: Interactive TUI with menu system +* *Execution*: Standalone escript (no runtime dependencies) + +=== Usage + +==== Run the TUI: + +[source,bash] +---- +cd /var/mnt/eclipse/repos/git-scripts +./launchers/git-scripts-launcher-enhanced.sh +---- + +==== Build from source: + +[source,bash] +---- +mix deps.get +mix compile +mix escript.build +---- + +=== Implementation Details + +Each function is implemented as an Elixir module: - +`+ScriptManager.WikiAudit+` - Wiki auditing - +`+ScriptManager.ProjectTabsAudit+` - Project tab verification - +`+ScriptManager.BranchProtection+` - Branch protection rules - +`+ScriptManager.MDConverter+` - Format conversion - +`+ScriptManager.ReadmeStandardizer+` - README standardization - +`+ScriptManager.RepoUpdater+` - Repository updates - +`+ScriptManager.ScriptAuditor+` - Script auditing - +`+ScriptManager.Verifier+` - Configuration verification - +`+ScriptManager.GHCLI+` - GitHub CLI utilities - +`+ScriptManager.RepoCleanup+` - Repository cleanup and maintenance + +=== Future Development + +* Add real file system operations +* Implement GitHub API integration +* Add configuration management +* Enhance error handling and logging +* Add progress reporting + +=== Shortcuts + +* *Desktop*: `+launchers/git-scripts.desktop+` +* *Start Menu*: `+~/.local/share/applications/git-scripts.desktop+` + +=== Benefits over Bash Version + +[arabic] +. *Type Safety*: Elixir’s strong typing prevents many runtime errors +. *Concurrency*: Built-in support for parallel operations +. *Fault Tolerance*: OTP supervision trees handle errors gracefully +. *Maintainability*: Clear module structure and documentation +. *Extensibility*: Easy to add new functions as modules +. *Performance*: Compiled BEAM bytecode runs efficiently diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index 334d19c..0000000 --- a/docs/README.md +++ /dev/null @@ -1,78 +0,0 @@ - -# Elixir Script Manager - -A modern, Elixir-based TUI for managing reusable scripts and functions across repositories. - -## Features - -- **Wiki Audit**: Check wiki content for issues -- **Project Tabs Audit**: Verify GitHub project tab configurations -- **Branch Protection**: Apply branch protection rules -- **MD to ADOC Converter**: Convert Markdown to AsciiDoc format -- **Standardize READMEs**: Ensure consistent README formatting -- **Update Repos**: Mass update repositories -- **Audit Scripts**: Security and quality checks -- **Verify**: Repository configuration verification -- **GH CLI**: GitHub CLI utilities -- **Repository Cleanup**: Comprehensive cleanup and maintenance - -## Architecture - -- **Language**: Elixir (OTP-based, fault-tolerant) -- **Pattern**: Modular OTP application with supervisor -- **Interface**: Interactive TUI with menu system -- **Execution**: Standalone escript (no runtime dependencies) - -## Usage - -### Run the TUI: -```bash -cd /var/mnt/eclipse/repos/git-scripts -./launchers/git-scripts-launcher-enhanced.sh -``` - -### Build from source: -```bash -mix deps.get -mix compile -mix escript.build -``` - -## Implementation Details - -Each function is implemented as an Elixir module: -- `ScriptManager.WikiAudit` - Wiki auditing -- `ScriptManager.ProjectTabsAudit` - Project tab verification -- `ScriptManager.BranchProtection` - Branch protection rules -- `ScriptManager.MDConverter` - Format conversion -- `ScriptManager.ReadmeStandardizer` - README standardization -- `ScriptManager.RepoUpdater` - Repository updates -- `ScriptManager.ScriptAuditor` - Script auditing -- `ScriptManager.Verifier` - Configuration verification -- `ScriptManager.GHCLI` - GitHub CLI utilities -- `ScriptManager.RepoCleanup` - Repository cleanup and maintenance - -## Future Development - -- Add real file system operations -- Implement GitHub API integration -- Add configuration management -- Enhance error handling and logging -- Add progress reporting - -## Shortcuts - -- **Desktop**: `launchers/git-scripts.desktop` -- **Start Menu**: `~/.local/share/applications/git-scripts.desktop` - -## Benefits over Bash Version - -1. **Type Safety**: Elixir's strong typing prevents many runtime errors -2. **Concurrency**: Built-in support for parallel operations -3. **Fault Tolerance**: OTP supervision trees handle errors gracefully -4. **Maintainability**: Clear module structure and documentation -5. **Extensibility**: Easy to add new functions as modules -6. **Performance**: Compiled BEAM bytecode runs efficiently diff --git a/docs/README_WEB.md b/docs/README_WEB.adoc similarity index 52% rename from docs/README_WEB.md rename to docs/README_WEB.adoc index 96f79ab..4a424a4 100644 --- a/docs/README_WEB.md +++ b/docs/README_WEB.adoc @@ -1,48 +1,44 @@ - -# Script Manager Web Interface (Gossamer) - -A modern web-based interface for the Script Manager, replacing the TUI with a sophisticated Gossamer-powered UI. - -## Features - -### 🌐 Web-Based Interface -- **Accessible**: Browser-based access from anywhere -- **Modern UI**: Clean, responsive design -- **Real-time Updates**: Live data without page refreshes -- **Mobile Friendly**: Works on all device sizes - -### 🎯 Core Functionality - -1. **PR Management Dashboard** - - View all open pull requests across repositories - - Bulk actions: Add labels, comments, request reviews - - Filter and search capabilities - - Stale PR identification - -2. **Health Dashboard** - - Visual repository health scores - - Color-coded status indicators - - Drill-down into problematic repositories - - Historical trends and comparisons - -3. **GitHub Integration** - - Real-time GitHub API connectivity - - OAuth authentication support - - Rate limit monitoring - - Error handling and retries - -4. **Script Management** - - Browse reusable scripts - - View script documentation - - Execute scripts with parameters - - Monitor script execution - -## Architecture - -``` +== Script Manager Web Interface (Gossamer) + +A modern web-based interface for the Script Manager, replacing the TUI +with a sophisticated Gossamer-powered UI. + +=== Features + +==== 🌐 Web-Based Interface + +* *Accessible*: Browser-based access from anywhere +* *Modern UI*: Clean, responsive design +* *Real-time Updates*: Live data without page refreshes +* *Mobile Friendly*: Works on all device sizes + +==== 🎯 Core Functionality + +[arabic] +. *PR Management Dashboard* +* View all open pull requests across repositories +* Bulk actions: Add labels, comments, request reviews +* Filter and search capabilities +* Stale PR identification +. *Health Dashboard* +* Visual repository health scores +* Color-coded status indicators +* Drill-down into problematic repositories +* Historical trends and comparisons +. *GitHub Integration* +* Real-time GitHub API connectivity +* OAuth authentication support +* Rate limit monitoring +* Error handling and retries +. *Script Management* +* Browse reusable scripts +* View script documentation +* Execute scripts with parameters +* Monitor script execution + +=== Architecture + +.... ┌─────────────────────────────────────────────────┐ │ Gossamer Web Server │ └─────────────────────────────────────────────────┘ @@ -79,90 +75,98 @@ A modern web-based interface for the Script Manager, replacing the TUI with a so ┌─────────────────────────────────────────────────┐ │ GitHub API / External Services │ └─────────────────────────────────────────────────┘ -``` +.... -## Usage +=== Usage -### Starting the Web Interface +==== Starting the Web Interface -```bash +[source,bash] +---- # Start the application cd script_manager mix deps.get mix compile iex -S mix phx.server # Or whatever Gossamer uses -``` +---- -### Accessing the Interface +==== Accessing the Interface -Open your browser to: `http://localhost:4000` +Open your browser to: `+http://localhost:4000+` -### Available Routes +==== Available Routes -- `/` - Home dashboard -- `/prs` - Pull Request management -- `/health` - Repository health dashboard -- `/github` - GitHub integration status -- `/scripts` - Script management +* `+/+` - Home dashboard +* `+/prs+` - Pull Request management +* `+/health+` - Repository health dashboard +* `+/github+` - GitHub integration status +* `+/scripts+` - Script management -## Migration from TUI +=== Migration from TUI -### Key Differences +==== Key Differences -| Feature | TUI Version | Web Version | -|------------------|------------|-------------| -| **Access** | Terminal | Browser | -| **Navigation** | Menu | Links/Buttons| -| **Concurrency** | Limited | Full | -| **Visualization**| Text | Charts/Graphics| -| **Remote Access** | No | Yes | -| **Mobile** | No | Yes | +[cols=",,",options="header",] +|=== +|Feature |TUI Version |Web Version +|*Access* |Terminal |Browser +|*Navigation* |Menu |Links/Buttons +|*Concurrency* |Limited |Full +|*Visualization* |Text |Charts/Graphics +|*Remote Access* |No |Yes +|*Mobile* |No |Yes +|=== -### Benefits of Web Interface +==== Benefits of Web Interface -1. **Better User Experience**: Modern UI patterns -2. **Remote Accessibility**: Use from anywhere -3. **Concurrent Operations**: Multiple actions at once -4. **Visual Feedback**: Progress bars, status indicators -5. **Historical Data**: Charts and trends over time +[arabic] +. *Better User Experience*: Modern UI patterns +. *Remote Accessibility*: Use from anywhere +. *Concurrent Operations*: Multiple actions at once +. *Visual Feedback*: Progress bars, status indicators +. *Historical Data*: Charts and trends over time -## Configuration +=== Configuration -### Environment Variables +==== Environment Variables -```bash +[source,bash] +---- export GITHUB_TOKEN="your_token_here" export WEB_PORT=4000 export MAX_CONCURRENT_REQUESTS=10 -``` +---- -### Runtime Configuration +==== Runtime Configuration -Edit `config/config.exs`: +Edit `+config/config.exs+`: -```elixir +[source,elixir] +---- config :script_manager, :web, port: System.get_env("WEB_PORT") || 4000, host: "0.0.0.0", static_dir: "priv/static", template_dir: "priv/templates" -``` +---- -## Deployment +=== Deployment -### Production Deployment +==== Production Deployment -```bash +[source,bash] +---- # Build release MIX_ENV=prod mix release # Start server _port/2/bin/script_manager start -``` +---- -### Docker Deployment +==== Docker Deployment -```dockerfile +[source,dockerfile] +---- FROM elixir:1.19 WORKDIR /app @@ -172,56 +176,63 @@ RUN mix deps.get --only prod RUN mix compile CMD ["elixir", "--sname", "script_manager", "-S", "mix", "phx.server"] -``` +---- -## Development +=== Development -### Adding New Features +==== Adding New Features -1. **Create Controller**: Add new controller in `web_interface.ex` -2. **Define Route**: Add route to `routes/0` function -3. **Create Template**: Add template in `priv/templates/` -4. **Add Logic**: Implement business logic in core modules +[arabic] +. *Create Controller*: Add new controller in `+web_interface.ex+` +. *Define Route*: Add route to `+routes/0+` function +. *Create Template*: Add template in `+priv/templates/+` +. *Add Logic*: Implement business logic in core modules -### Testing +==== Testing -```bash +[source,bash] +---- # Run tests mix test # Test specific feature mix test test/web_interface_test.exs -``` +---- -## Comparison: TUI vs Web Interface +=== Comparison: TUI vs Web Interface -### When to Use TUI -- Quick local operations -- Server environments without GUI -- Scripted/automated usage -- Low-bandwidth connections +==== When to Use TUI -### When to Use Web Interface -- Team collaboration -- Remote access needed -- Visual data analysis -- Complex workflows -- User training/onboarding +* Quick local operations +* Server environments without GUI +* Scripted/automated usage +* Low-bandwidth connections -## Future Enhancements +==== When to Use Web Interface -1. **Real-time Updates**: WebSocket integration -2. **User Accounts**: Authentication and authorization -3. **Audit Logs**: Track all actions -4. **Notifications**: Email/Slack alerts -5. **API Access**: REST API for integration -6. **Plugins**: Extensible architecture -7. **Themes**: Customizable UI -8. **Internationalization**: Multi-language support +* Team collaboration +* Remote access needed +* Visual data analysis +* Complex workflows +* User training/onboarding -## Conclusion +=== Future Enhancements -The Gossamer web interface provides a **modern, accessible, and powerful** alternative to the TUI, making the Script Manager more usable for teams and remote work while maintaining all the core functionality. +[arabic] +. *Real-time Updates*: WebSocket integration +. *User Accounts*: Authentication and authorization +. *Audit Logs*: Track all actions +. *Notifications*: Email/Slack alerts +. *API Access*: REST API for integration +. *Plugins*: Extensible architecture +. *Themes*: Customizable UI +. *Internationalization*: Multi-language support -**Status**: ✅ Ready for production use -**Recommended**: Migrate from TUI to Web Interface for better user experience \ No newline at end of file +=== Conclusion + +The Gossamer web interface provides a *modern, accessible, and powerful* +alternative to the TUI, making the Script Manager more usable for teams +and remote work while maintaining all the core functionality. + +*Status*: ✅ Ready for production use *Recommended*: Migrate from TUI to +Web Interface for better user experience diff --git a/docs/SCRIPT_ANALYSIS.adoc b/docs/SCRIPT_ANALYSIS.adoc new file mode 100644 index 0000000..a258a84 --- /dev/null +++ b/docs/SCRIPT_ANALYSIS.adoc @@ -0,0 +1,248 @@ +== 🔍 SCRIPT ANALYSIS - run_manager.sh and setup.sh + +=== Executive Summary + +*Status*: Some scripts are *partially redundant* but serve specific +purposes *Recommendation*: Keep for now, document clearly, consider +consolidation in future + +=== 📊 Current Scripts in git-scripts/ + +==== 1. `+run_manager.sh+` (206 lines) + +*Purpose*: Wrapper script to run Elixir script manager *Location*: +`+/var/mnt/eclipse/repos/git-scripts/run_manager.sh+` + +*Analysis*: + +[source,bash] +---- +# This script: +# ✅ Changes to script_manager directory +# ✅ Runs the Elixir escript +# ✅ Waits for user input before closing +# +# Current status: +# ⚠️ PARTIALLY REDUNDANT - Similar to direct escript execution +# ✅ Still useful for wrapper functionality +# ✅ Provides "press Enter to close" behavior +---- + +*Current Usage*: - Used as a wrapper for the Elixir TUI - Provides a +simple execution path - Handles the "`press Enter to close`" pattern + +*Redundancy Level*: *Low* (30%) - Similar to: Direct escript execution - +Unique feature: User input handling + +==== 2. `+setup.sh+` (812 lines) + +*Purpose*: Universal setup script for Git Scripts *Location*: +`+/var/mnt/eclipse/repos/git-scripts/setup.sh+` + +*Analysis*: + +[source,bash] +---- +# This script: +# ✅ Detects platform and shell +# ✅ Installs just (build tool) +# ✅ Hands off to Justfile +# ✅ Comprehensive setup process +# +# Current status: +# ✅ NOT REDUNDANT - Unique setup functionality +# ✅ Complements launcher system +# ✅ Handles dependencies +---- + +*Current Usage*: - Initial setup of the git-scripts environment - +Dependency installation (just) - Platform-specific configuration + +*Redundancy Level*: *None* (0%) - Unique purpose: Environment setup - +Complements: Launcher system + +=== 🎯 Redundancy Analysis + +==== Partially Redundant Scripts + +===== `+run_manager.sh+` + +*Redundancy*: 30% *Overlap with*: Direct escript execution + +*Options*: 1. *Keep* - Maintain wrapper functionality 2. *Replace* - Use +enhanced launcher instead 3. *Merge* - Integrate into launcher system + +*Recommendation*: *Keep for now* - Provides simple execution path - +Useful for quick testing - Minimal maintenance overhead + +==== Non-Redundant Scripts + +===== `+setup.sh+` + +*Redundancy*: 0% *Unique Purpose*: Environment setup + +*Recommendation*: *Keep and enhance* - Critical for initial setup - +Handles dependencies - Platform-specific configuration + +=== 🗂️ Script Organization Recommendation + +==== Current Structure + +.... +/var/mnt/eclipse/repos/git-scripts/ +├── run_manager.sh # Wrapper (partially redundant) +├── setup.sh # Setup (not redundant) +├── script_manager # Elixir escript (primary) +└── launchers/ # Launcher system (enhanced) + ├── git-scripts-launcher.sh # Original + ├── git-scripts-launcher-enhanced.sh # Enhanced + ├── git-scripts.desktop # Desktop + ├── LAUNCHER_INSTRUCTIONS.md # Instructions + └── ENHANCED_LAUNCHER_SUMMARY.md # Summary +.... + +==== Recommended Structure + +.... +/var/mnt/eclipse/repos/git-scripts/ +├── bin/ # Executables +│ ├── run_manager.sh # Wrapper (documented) +│ └── setup.sh # Setup (enhanced) +├── script_manager # Elixir escript +└── launchers/ # Launcher system + ├── git-scripts-launcher.sh # Original + ├── git-scripts-launcher-enhanced.sh # Enhanced (PRIMARY) + ├── git-scripts.desktop # Desktop + ├── LAUNCHER_INSTRUCTIONS.md # Instructions + └── ENHANCED_LAUNCHER_SUMMARY.md # Summary +.... + +=== 🚀 Migration Plan + +==== Phase 1: Document Current Scripts (COMPLETED) + +[source,bash] +---- +# Create SCRIPT_ANALYSIS.md (this file) +# Document purpose of each script +# Identify redundancy levels +---- + +==== Phase 2: Organize Scripts + +[source,bash] +---- +# Create bin/ directory +mkdir -p /var/mnt/eclipse/repos/git-scripts/bin + +# Move scripts to bin/ +mv /var/mnt/eclipse/repos/git-scripts/run_manager.sh bin/ +mv /var/mnt/eclipse/repos/git-scripts/setup.sh bin/ + +# Create README +cat > /var/mnt/eclipse/repos/git-scripts/bin/README.md << 'EOF' +# Git Scripts - Executables + +## Scripts in this Directory + +### run_manager.sh +**Purpose**: Wrapper script for Elixir TUI +**Status**: Partially redundant (30%) +**Recommendation**: Keep for wrapper functionality +**Usage**: ./run_manager.sh + +### setup.sh +**Purpose**: Environment setup and dependency installation +**Status**: Not redundant (0%) +**Recommendation**: Keep and enhance +**Usage**: ./setup.sh + +## Relationship to Launcher System + +These scripts are **complementary** to the launcher system: +- **run_manager.sh**: Simple wrapper for direct execution +- **setup.sh**: Environment setup (prerequisite) +- **launchers/**: Enhanced user interface (primary access) + +## Usage Pattern + +1. **First-time setup**: Run setup.sh +2. **Quick execution**: Use run_manager.sh +3. **Full features**: Use enhanced launcher +EOF +---- + +==== Phase 3: Update Documentation + +[source,bash] +---- +# Update all documentation to reflect new structure +sed -i 's|git-scripts/run_manager.sh|git-scripts/bin/run_manager.sh|g' documentation/*.md +sed -i 's|git-scripts/setup.sh|git-scripts/bin/setup.sh|g' documentation/*.md +---- + +==== Phase 4: Consider Future Consolidation + +[source,bash] +---- +# Future options: +# 1. Integrate run_manager.sh into launcher system +# 2. Enhance setup.sh with launcher integration +# 3. Create unified execution framework + +# Decision criteria: +# - User feedback on current system +# - Maintenance overhead +# - Feature parity +---- + +=== 🎯 Final Recommendations + +==== Immediate Actions + +[arabic] +. ✅ *Document current scripts* (COMPLETED) +. ✅ *Create bin/ directory* (READY) +. ✅ *Move scripts to bin/* (READY) +. ✅ *Create README* (READY) +. ✅ *Update documentation* (READY) + +==== Short-term Actions + +[arabic] +. Monitor script usage patterns +. Gather user feedback +. Decide on consolidation strategy + +==== Long-term Strategy + +[arabic] +. Consider integrating run_manager.sh into launcher +. Enhance setup.sh with launcher awareness +. Maintain backward compatibility + +=== 📊 Decision Matrix + +[cols=",,,,,",options="header",] +|=== +|Script |Redundancy |Keep |Move |Enhance |Integrate +|run_manager.sh |30% |✅ |✅ |⚠️ |Future +|setup.sh |0% |✅ |✅ |✅ |Future +|=== + +*Legend*: - ✅ Recommended - ⚠️ Consider - Future: Future enhancement + +=== ✅ Final Status + +*Analysis*: ✅ COMPLETE *Documentation*: ✅ PROVIDED *Organization +Plan*: ✅ READY *Migration Script*: ✅ AVAILABLE + +*Recommendation*: Implement organization plan to clarify script purposes +and reduce confusion. The scripts are *not fully redundant* but serve +complementary roles in the ecosystem. + +*Next Steps*: 1. Create bin/ directory 2. Move scripts to bin/ 3. Add +README documentation 4. Update all references + +The enhanced launcher remains the *primary access method*, while +run_manager.sh and setup.sh serve *complementary purposes*. 🎉 diff --git a/docs/SCRIPT_ANALYSIS.md b/docs/SCRIPT_ANALYSIS.md deleted file mode 100644 index f537852..0000000 --- a/docs/SCRIPT_ANALYSIS.md +++ /dev/null @@ -1,244 +0,0 @@ - -# 🔍 SCRIPT ANALYSIS - run_manager.sh and setup.sh - -## Executive Summary - -**Status**: Some scripts are **partially redundant** but serve specific purposes -**Recommendation**: Keep for now, document clearly, consider consolidation in future - -## 📊 Current Scripts in git-scripts/ - -### 1. `run_manager.sh` (206 lines) -**Purpose**: Wrapper script to run Elixir script manager -**Location**: `/var/mnt/eclipse/repos/git-scripts/run_manager.sh` - -**Analysis**: -```bash -# This script: -# ✅ Changes to script_manager directory -# ✅ Runs the Elixir escript -# ✅ Waits for user input before closing -# -# Current status: -# ⚠️ PARTIALLY REDUNDANT - Similar to direct escript execution -# ✅ Still useful for wrapper functionality -# ✅ Provides "press Enter to close" behavior -``` - -**Current Usage**: -- Used as a wrapper for the Elixir TUI -- Provides a simple execution path -- Handles the "press Enter to close" pattern - -**Redundancy Level**: **Low** (30%) -- Similar to: Direct escript execution -- Unique feature: User input handling - -### 2. `setup.sh` (812 lines) -**Purpose**: Universal setup script for Git Scripts -**Location**: `/var/mnt/eclipse/repos/git-scripts/setup.sh` - -**Analysis**: -```bash -# This script: -# ✅ Detects platform and shell -# ✅ Installs just (build tool) -# ✅ Hands off to Justfile -# ✅ Comprehensive setup process -# -# Current status: -# ✅ NOT REDUNDANT - Unique setup functionality -# ✅ Complements launcher system -# ✅ Handles dependencies -``` - -**Current Usage**: -- Initial setup of the git-scripts environment -- Dependency installation (just) -- Platform-specific configuration - -**Redundancy Level**: **None** (0%) -- Unique purpose: Environment setup -- Complements: Launcher system - -## 🎯 Redundancy Analysis - -### Partially Redundant Scripts - -#### `run_manager.sh` -**Redundancy**: 30% -**Overlap with**: Direct escript execution - -**Options**: -1. **Keep** - Maintain wrapper functionality -2. **Replace** - Use enhanced launcher instead -3. **Merge** - Integrate into launcher system - -**Recommendation**: **Keep for now** -- Provides simple execution path -- Useful for quick testing -- Minimal maintenance overhead - -### Non-Redundant Scripts - -#### `setup.sh` -**Redundancy**: 0% -**Unique Purpose**: Environment setup - -**Recommendation**: **Keep and enhance** -- Critical for initial setup -- Handles dependencies -- Platform-specific configuration - -## 🗂️ Script Organization Recommendation - -### Current Structure -``` -/var/mnt/eclipse/repos/git-scripts/ -├── run_manager.sh # Wrapper (partially redundant) -├── setup.sh # Setup (not redundant) -├── script_manager # Elixir escript (primary) -└── launchers/ # Launcher system (enhanced) - ├── git-scripts-launcher.sh # Original - ├── git-scripts-launcher-enhanced.sh # Enhanced - ├── git-scripts.desktop # Desktop - ├── LAUNCHER_INSTRUCTIONS.md # Instructions - └── ENHANCED_LAUNCHER_SUMMARY.md # Summary -``` - -### Recommended Structure -``` -/var/mnt/eclipse/repos/git-scripts/ -├── bin/ # Executables -│ ├── run_manager.sh # Wrapper (documented) -│ └── setup.sh # Setup (enhanced) -├── script_manager # Elixir escript -└── launchers/ # Launcher system - ├── git-scripts-launcher.sh # Original - ├── git-scripts-launcher-enhanced.sh # Enhanced (PRIMARY) - ├── git-scripts.desktop # Desktop - ├── LAUNCHER_INSTRUCTIONS.md # Instructions - └── ENHANCED_LAUNCHER_SUMMARY.md # Summary -``` - -## 🚀 Migration Plan - -### Phase 1: Document Current Scripts (COMPLETED) -```bash -# Create SCRIPT_ANALYSIS.md (this file) -# Document purpose of each script -# Identify redundancy levels -``` - -### Phase 2: Organize Scripts -```bash -# Create bin/ directory -mkdir -p /var/mnt/eclipse/repos/git-scripts/bin - -# Move scripts to bin/ -mv /var/mnt/eclipse/repos/git-scripts/run_manager.sh bin/ -mv /var/mnt/eclipse/repos/git-scripts/setup.sh bin/ - -# Create README -cat > /var/mnt/eclipse/repos/git-scripts/bin/README.md << 'EOF' -# Git Scripts - Executables - -## Scripts in this Directory - -### run_manager.sh -**Purpose**: Wrapper script for Elixir TUI -**Status**: Partially redundant (30%) -**Recommendation**: Keep for wrapper functionality -**Usage**: ./run_manager.sh - -### setup.sh -**Purpose**: Environment setup and dependency installation -**Status**: Not redundant (0%) -**Recommendation**: Keep and enhance -**Usage**: ./setup.sh - -## Relationship to Launcher System - -These scripts are **complementary** to the launcher system: -- **run_manager.sh**: Simple wrapper for direct execution -- **setup.sh**: Environment setup (prerequisite) -- **launchers/**: Enhanced user interface (primary access) - -## Usage Pattern - -1. **First-time setup**: Run setup.sh -2. **Quick execution**: Use run_manager.sh -3. **Full features**: Use enhanced launcher -EOF -``` - -### Phase 3: Update Documentation -```bash -# Update all documentation to reflect new structure -sed -i 's|git-scripts/run_manager.sh|git-scripts/bin/run_manager.sh|g' documentation/*.md -sed -i 's|git-scripts/setup.sh|git-scripts/bin/setup.sh|g' documentation/*.md -``` - -### Phase 4: Consider Future Consolidation -```bash -# Future options: -# 1. Integrate run_manager.sh into launcher system -# 2. Enhance setup.sh with launcher integration -# 3. Create unified execution framework - -# Decision criteria: -# - User feedback on current system -# - Maintenance overhead -# - Feature parity -``` - -## 🎯 Final Recommendations - -### Immediate Actions -1. ✅ **Document current scripts** (COMPLETED) -2. ✅ **Create bin/ directory** (READY) -3. ✅ **Move scripts to bin/** (READY) -4. ✅ **Create README** (READY) -5. ✅ **Update documentation** (READY) - -### Short-term Actions -1. Monitor script usage patterns -2. Gather user feedback -3. Decide on consolidation strategy - -### Long-term Strategy -1. Consider integrating run_manager.sh into launcher -2. Enhance setup.sh with launcher awareness -3. Maintain backward compatibility - -## 📊 Decision Matrix - -| Script | Redundancy | Keep | Move | Enhance | Integrate | -|--------|------------|------|------|---------|-----------| -| run_manager.sh | 30% | ✅ | ✅ | ⚠️ | Future | -| setup.sh | 0% | ✅ | ✅ | ✅ | Future | - -**Legend**: -- ✅ Recommended -- ⚠️ Consider -- Future: Future enhancement - -## ✅ Final Status - -**Analysis**: ✅ COMPLETE -**Documentation**: ✅ PROVIDED -**Organization Plan**: ✅ READY -**Migration Script**: ✅ AVAILABLE - -**Recommendation**: Implement organization plan to clarify script purposes and reduce confusion. The scripts are **not fully redundant** but serve complementary roles in the ecosystem. - -**Next Steps**: -1. Create bin/ directory -2. Move scripts to bin/ -3. Add README documentation -4. Update all references - -The enhanced launcher remains the **primary access method**, while run_manager.sh and setup.sh serve **complementary purposes**. 🎉 \ No newline at end of file diff --git a/docs/SCRIPT_INTEGRATION_ANALYSIS.adoc b/docs/SCRIPT_INTEGRATION_ANALYSIS.adoc new file mode 100644 index 0000000..b6b1f95 --- /dev/null +++ b/docs/SCRIPT_INTEGRATION_ANALYSIS.adoc @@ -0,0 +1,231 @@ +== Script Integration Analysis + +=== 🔍 Overview + +This analysis examines all shell scripts in the git-scripts repository +to determine: - Which scripts are integratable into the Elixir TUI - +Which scripts are redundant or overlapping - Recommendations for +consolidation + +=== 📋 Script Inventory + +==== Root Level Scripts + +===== 1. `+run_manager.sh+` + +* *Purpose*: Wrapper to run the enhanced launcher +* *Status*: *REDUNDANT* - Simply calls +`+git-scripts-launcher-enhanced.sh+` +* *Recommendation*: Remove - direct users to use the launcher directly + +===== 2. `+setup.sh+` + +* *Purpose*: Universal setup script for git-scripts +* *Status*: *INTEGRATABLE* - Could be part of installation process +* *Recommendation*: Keep as standalone setup script + +==== Launcher Scripts + +===== 3. `+git-scripts-launcher.sh+` + +* *Purpose*: Basic launcher for Elixir TUI +* *Status*: *INTEGRATED* - Already integrated into main launcher +* *Recommendation*: Keep as fallback, but use new standardized launcher + +===== 4. `+git-scripts-launcher-enhanced.sh+` + +* *Purpose*: Enhanced launcher with self-healing features +* *Status*: *REDUNDANT* - Replaced by new standardized launcher +* *Recommendation*: Deprecate in favor of new `+git-scripts-launcher+` + +==== Functional Scripts (scripts/ directory) + +===== 5. `+audit_script.sh+` + +* *Purpose*: Audit scripts for issues +* *Status*: *INTEGRATABLE* - Matches TUI option [7] Audit Scripts +* *Integration*: Already integrated via +`+ScriptManager.ScriptAuditor.run()+` +* *Recommendation*: Keep, ensure TUI calls this correctly + +===== 6. `+branch-protection-apply.sh+` + +* *Purpose*: Apply branch protection rules +* *Status*: *INTEGRATABLE* - Matches TUI option [3] Branch Protection +Apply +* *Integration*: Already integrated via +`+ScriptManager.BranchProtection.run()+` +* *Recommendation*: Keep, verify integration works + +===== 7. `+comprehensive_script_organization.sh+` + +* *Purpose*: Organize and integrate scripts +* *Status*: *REDUNDANT* - This script’s purpose is meta-organization +* *Recommendation*: Deprecate - its function is now handled by this +analysis + +===== 8. `+md_to_adoc_converter.sh+` + +* *Purpose*: Convert Markdown to AsciiDoc +* *Status*: *INTEGRATABLE* - Matches TUI option [4] MD to ADOC Converter +* *Integration*: Already integrated via +`+ScriptManager.MDConverter.run()+` +* *Recommendation*: Keep, test integration + +===== 9. `+project-tabs-audit.sh+` + +* *Purpose*: Audit GitHub repository metadata +* *Status*: *INTEGRATABLE* - Matches TUI option [2] Project Tabs Audit +* *Integration*: Already integrated via +`+ScriptManager.ProjectTabsAudit.run()+` +* *Recommendation*: Keep, verify functionality + +===== 10. `+repo_cleanup_integration.sh+` + +* *Purpose*: Integrate cleanup scripts with TUI +* *Status*: *REDUNDANT* - Cleanup is now handled by separate system +* *Recommendation*: Deprecate - cleanup moved to external scripts + +===== 11. `+standardize_readmes.sh+` + +* *Purpose*: Standardize README files +* *Status*: *INTEGRATABLE* - Matches TUI option [5] Standardize READMEs +* *Integration*: Already integrated via +`+ScriptManager.ReadmeStandardizer.run()+` +* *Recommendation*: Keep, test thoroughly + +===== 12. `+update_repos.sh+` + +* *Purpose*: Update multiple repositories +* *Status*: *INTEGRATABLE* - Matches TUI option [6] Update Repos +* *Integration*: Already integrated via +`+ScriptManager.RepoUpdater.run()+` +* *Recommendation*: Keep, verify repo list is current + +===== 13. `+USE-GH-CLI.sh+` + +* *Purpose*: Use GitHub CLI for PR issues +* *Status*: *INTEGRATABLE* - Matches TUI option [9] Use GH CLI +* *Integration*: Already integrated via `+ScriptManager.GHCLI.run()+` +* *Recommendation*: Keep, could enhance with more CLI features + +===== 14. `+verify.sh+` + +* *Purpose*: Verify repository commit status +* *Status*: *INTEGRATABLE* - Matches TUI option [8] Verify +* *Integration*: Already integrated via `+ScriptManager.Verifier.run()+` +* *Recommendation*: Keep, update repo list to match update_repos.sh + +===== 15. `+wiki-audit.sh+` + +* *Purpose*: Audit wiki content +* *Status*: *INTEGRATABLE* - Matches TUI option [1] Wiki Audit +* *Integration*: Already integrated via +`+ScriptManager.WikiAudit.run()+` +* *Recommendation*: Keep, test GitHub API integration + +=== 🔗 Integration Matrix + +[width="100%",cols="22%,21%,31%,26%",options="header",] +|=== +|TUI Option |Script File |Integration Status |Recommendation +|[1] Wiki Audit |`+wiki-audit.sh+` |✅ Integrated |Keep & Test + +|[2] Project Tabs Audit |`+project-tabs-audit.sh+` |✅ Integrated |Keep +& Test + +|[3] Branch Protection |`+branch-protection-apply.sh+` |✅ Integrated +|Keep & Test + +|[4] MD to ADOC |`+md_to_adoc_converter.sh+` |✅ Integrated |Keep & Test + +|[5] Standardize READMEs |`+standardize_readmes.sh+` |✅ Integrated +|Keep & Test + +|[6] Update Repos |`+update_repos.sh+` |✅ Integrated |Keep & Update + +|[7] Audit Scripts |`+audit_script.sh+` |✅ Integrated |Keep & Test + +|[8] Verify |`+verify.sh+` |✅ Integrated |Keep & Sync + +|[9] Use GH CLI |`+USE-GH-CLI.sh+` |✅ Integrated |Keep & Enhance + +|[12] Repo Cleanup |(external) |❌ Not Integrated |External System + +|[13] Clean Unicode |(external) |❌ Not Integrated |External Script +|=== + +=== 🗑️ Redundant Scripts Recommendation + +==== Scripts to Remove/Deprecate: + +[arabic] +. *`+run_manager.sh+`* - Just a wrapper, no added value +. *`+git-scripts-launcher-enhanced.sh+`* - Replaced by standardized +launcher +. *`+comprehensive_script_organization.sh+`* - Meta-script, purpose +fulfilled +. *`+repo_cleanup_integration.sh+`* - Cleanup moved to external system + +==== Scripts to Consolidate: + +[arabic] +. *`+update_repos.sh+` and `+verify.sh+`* - Both contain repo lists that +should be synchronized +. *Launcher scripts* - Standardize on one launcher approach + +=== ✅ Integration Status + +*Good News*: The core functionality is already well-integrated! + +* *10 out of 11 TUI options* are properly connected to their +corresponding scripts +* *Only 2 scripts* (repo cleanup, clean unicode) rely on external +systems +* *All functional scripts* are being used by the TUI + +=== 🎯 Recommendations + +==== 1. Cleanup Redundant Scripts + +[source,bash] +---- +# Remove these files +rm /var/mnt/eclipse/repos/git-scripts/run_manager.sh +rm /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +rm /var/mnt/eclipse/repos/git-scripts/scripts/comprehensive_script_organization.sh +rm /var/mnt/eclipse/repos/git-scripts/scripts/repo_cleanup_integration.sh +---- + +==== 2. Synchronize Repository Lists + +* Update both `+update_repos.sh+` and `+verify.sh+` to use the same repo +list +* Consider moving the repo list to a shared configuration file + +==== 3. Standardize on New Launcher + +* Use the new `+git-scripts-launcher+` as the primary entry point +* Update documentation to reflect this + +==== 4. Test All Integrations + +* Verify each TUI option correctly calls its corresponding script +* Test error handling and edge cases + +==== 5. Documentation Update + +* Update README files to reflect current script organization +* Document the integration between TUI options and scripts + +=== 📈 Summary + +* *Total Scripts Analyzed*: 15 +* *Integrated Scripts*: 10 (67%) +* *Redundant Scripts*: 4 (27%) +* *External Dependencies*: 2 (13%) + +The git-scripts repository has excellent integration between the Elixir +TUI and shell scripts. With some cleanup of redundant scripts and +synchronization of configuration, the system will be even more +maintainable and robust. diff --git a/docs/SCRIPT_INTEGRATION_ANALYSIS.md b/docs/SCRIPT_INTEGRATION_ANALYSIS.md deleted file mode 100644 index 4aaef4c..0000000 --- a/docs/SCRIPT_INTEGRATION_ANALYSIS.md +++ /dev/null @@ -1,178 +0,0 @@ - -# Script Integration Analysis - -## 🔍 Overview - -This analysis examines all shell scripts in the git-scripts repository to determine: -- Which scripts are integratable into the Elixir TUI -- Which scripts are redundant or overlapping -- Recommendations for consolidation - -## 📋 Script Inventory - -### Root Level Scripts - -#### 1. `run_manager.sh` -- **Purpose**: Wrapper to run the enhanced launcher -- **Status**: **REDUNDANT** - Simply calls `git-scripts-launcher-enhanced.sh` -- **Recommendation**: Remove - direct users to use the launcher directly - -#### 2. `setup.sh` -- **Purpose**: Universal setup script for git-scripts -- **Status**: **INTEGRATABLE** - Could be part of installation process -- **Recommendation**: Keep as standalone setup script - -### Launcher Scripts - -#### 3. `git-scripts-launcher.sh` -- **Purpose**: Basic launcher for Elixir TUI -- **Status**: **INTEGRATED** - Already integrated into main launcher -- **Recommendation**: Keep as fallback, but use new standardized launcher - -#### 4. `git-scripts-launcher-enhanced.sh` -- **Purpose**: Enhanced launcher with self-healing features -- **Status**: **REDUNDANT** - Replaced by new standardized launcher -- **Recommendation**: Deprecate in favor of new `git-scripts-launcher` - -### Functional Scripts (scripts/ directory) - -#### 5. `audit_script.sh` -- **Purpose**: Audit scripts for issues -- **Status**: **INTEGRATABLE** - Matches TUI option [7] Audit Scripts -- **Integration**: Already integrated via `ScriptManager.ScriptAuditor.run()` -- **Recommendation**: Keep, ensure TUI calls this correctly - -#### 6. `branch-protection-apply.sh` -- **Purpose**: Apply branch protection rules -- **Status**: **INTEGRATABLE** - Matches TUI option [3] Branch Protection Apply -- **Integration**: Already integrated via `ScriptManager.BranchProtection.run()` -- **Recommendation**: Keep, verify integration works - -#### 7. `comprehensive_script_organization.sh` -- **Purpose**: Organize and integrate scripts -- **Status**: **REDUNDANT** - This script's purpose is meta-organization -- **Recommendation**: Deprecate - its function is now handled by this analysis - -#### 8. `md_to_adoc_converter.sh` -- **Purpose**: Convert Markdown to AsciiDoc -- **Status**: **INTEGRATABLE** - Matches TUI option [4] MD to ADOC Converter -- **Integration**: Already integrated via `ScriptManager.MDConverter.run()` -- **Recommendation**: Keep, test integration - -#### 9. `project-tabs-audit.sh` -- **Purpose**: Audit GitHub repository metadata -- **Status**: **INTEGRATABLE** - Matches TUI option [2] Project Tabs Audit -- **Integration**: Already integrated via `ScriptManager.ProjectTabsAudit.run()` -- **Recommendation**: Keep, verify functionality - -#### 10. `repo_cleanup_integration.sh` -- **Purpose**: Integrate cleanup scripts with TUI -- **Status**: **REDUNDANT** - Cleanup is now handled by separate system -- **Recommendation**: Deprecate - cleanup moved to external scripts - -#### 11. `standardize_readmes.sh` -- **Purpose**: Standardize README files -- **Status**: **INTEGRATABLE** - Matches TUI option [5] Standardize READMEs -- **Integration**: Already integrated via `ScriptManager.ReadmeStandardizer.run()` -- **Recommendation**: Keep, test thoroughly - -#### 12. `update_repos.sh` -- **Purpose**: Update multiple repositories -- **Status**: **INTEGRATABLE** - Matches TUI option [6] Update Repos -- **Integration**: Already integrated via `ScriptManager.RepoUpdater.run()` -- **Recommendation**: Keep, verify repo list is current - -#### 13. `USE-GH-CLI.sh` -- **Purpose**: Use GitHub CLI for PR issues -- **Status**: **INTEGRATABLE** - Matches TUI option [9] Use GH CLI -- **Integration**: Already integrated via `ScriptManager.GHCLI.run()` -- **Recommendation**: Keep, could enhance with more CLI features - -#### 14. `verify.sh` -- **Purpose**: Verify repository commit status -- **Status**: **INTEGRATABLE** - Matches TUI option [8] Verify -- **Integration**: Already integrated via `ScriptManager.Verifier.run()` -- **Recommendation**: Keep, update repo list to match update_repos.sh - -#### 15. `wiki-audit.sh` -- **Purpose**: Audit wiki content -- **Status**: **INTEGRATABLE** - Matches TUI option [1] Wiki Audit -- **Integration**: Already integrated via `ScriptManager.WikiAudit.run()` -- **Recommendation**: Keep, test GitHub API integration - -## 🔗 Integration Matrix - -| TUI Option | Script File | Integration Status | Recommendation | -|------------|-------------|-------------------|----------------| -| [1] Wiki Audit | `wiki-audit.sh` | ✅ Integrated | Keep & Test | -| [2] Project Tabs Audit | `project-tabs-audit.sh` | ✅ Integrated | Keep & Test | -| [3] Branch Protection | `branch-protection-apply.sh` | ✅ Integrated | Keep & Test | -| [4] MD to ADOC | `md_to_adoc_converter.sh` | ✅ Integrated | Keep & Test | -| [5] Standardize READMEs | `standardize_readmes.sh` | ✅ Integrated | Keep & Test | -| [6] Update Repos | `update_repos.sh` | ✅ Integrated | Keep & Update | -| [7] Audit Scripts | `audit_script.sh` | ✅ Integrated | Keep & Test | -| [8] Verify | `verify.sh` | ✅ Integrated | Keep & Sync | -| [9] Use GH CLI | `USE-GH-CLI.sh` | ✅ Integrated | Keep & Enhance | -| [12] Repo Cleanup | (external) | ❌ Not Integrated | External System | -| [13] Clean Unicode | (external) | ❌ Not Integrated | External Script | - -## 🗑️ Redundant Scripts Recommendation - -### Scripts to Remove/Deprecate: - -1. **`run_manager.sh`** - Just a wrapper, no added value -2. **`git-scripts-launcher-enhanced.sh`** - Replaced by standardized launcher -3. **`comprehensive_script_organization.sh`** - Meta-script, purpose fulfilled -4. **`repo_cleanup_integration.sh`** - Cleanup moved to external system - -### Scripts to Consolidate: - -1. **`update_repos.sh` and `verify.sh`** - Both contain repo lists that should be synchronized -2. **Launcher scripts** - Standardize on one launcher approach - -## ✅ Integration Status - -**Good News**: The core functionality is already well-integrated! - -- **10 out of 11 TUI options** are properly connected to their corresponding scripts -- **Only 2 scripts** (repo cleanup, clean unicode) rely on external systems -- **All functional scripts** are being used by the TUI - -## 🎯 Recommendations - -### 1. Cleanup Redundant Scripts -```bash -# Remove these files -rm /var/mnt/eclipse/repos/git-scripts/run_manager.sh -rm /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -rm /var/mnt/eclipse/repos/git-scripts/scripts/comprehensive_script_organization.sh -rm /var/mnt/eclipse/repos/git-scripts/scripts/repo_cleanup_integration.sh -``` - -### 2. Synchronize Repository Lists -- Update both `update_repos.sh` and `verify.sh` to use the same repo list -- Consider moving the repo list to a shared configuration file - -### 3. Standardize on New Launcher -- Use the new `git-scripts-launcher` as the primary entry point -- Update documentation to reflect this - -### 4. Test All Integrations -- Verify each TUI option correctly calls its corresponding script -- Test error handling and edge cases - -### 5. Documentation Update -- Update README files to reflect current script organization -- Document the integration between TUI options and scripts - -## 📈 Summary - -- **Total Scripts Analyzed**: 15 -- **Integrated Scripts**: 10 (67%) -- **Redundant Scripts**: 4 (27%) -- **External Dependencies**: 2 (13%) - -The git-scripts repository has excellent integration between the Elixir TUI and shell scripts. With some cleanup of redundant scripts and synchronization of configuration, the system will be even more maintainable and robust. \ No newline at end of file diff --git a/docs/SCRIPT_ORGANIZATION.adoc b/docs/SCRIPT_ORGANIZATION.adoc new file mode 100644 index 0000000..f209296 --- /dev/null +++ b/docs/SCRIPT_ORGANIZATION.adoc @@ -0,0 +1,194 @@ +== Git Scripts Organization Guide + +=== 🗂️ New Directory Structure + +.... +git-scripts/ +├── ai/ # AI-related configuration +├── bin/ # Compiled binary files +├── config/ # Shared configuration +├── docs/ # Documentation +├── launchers/ # Launcher scripts +├── scripts/ # Functional scripts +├── test/ # Test files +├── lib/ # Elixir source code +├── priv/ # Private assets +└── (root files) +.... + +=== 🔧 Script Integration + +==== Current Integration Status + +The Elixir TUI is fully integrated with the shell scripts: + +[width="99%",cols="44%,28%,28%",options="header",] +|=== +|TUI Option |Script |Status +|[1] Wiki Audit |`+scripts/wiki-audit.sh+` |✅ Integrated + +|[2] Project Tabs Audit |`+scripts/project-tabs-audit.sh+` |✅ +Integrated + +|[3] Branch Protection |`+scripts/branch-protection-apply.sh+` |✅ +Integrated + +|[4] MD to ADOC |`+scripts/md_to_adoc_converter.sh+` |✅ Integrated + +|[5] Standardize READMEs |`+scripts/standardize_readmes.sh+` |✅ +Integrated + +|[6] Update Repos |`+scripts/update_repos.sh+` |✅ Integrated + +|[7] Audit Scripts |`+scripts/audit_script.sh+` |✅ Integrated + +|[8] Verify |`+scripts/verify.sh+` |✅ Integrated + +|[9] Use GH CLI |`+scripts/USE-GH-CLI.sh+` |✅ Integrated +|=== + +==== Shared Configuration + +Both `+update_repos.sh+` and `+verify.sh+` now use a shared +configuration file: + +[source,bash] +---- +# Source shared configuration +if [ -f "/var/mnt/eclipse/repos/git-scripts/config/repos.config" ]; then + source "/var/mnt/eclipse/repos/git-scripts/config/repos.config" +else + echo "Error: Configuration file not found" >&2 + exit 1 +fi +---- + +=== 🚀 Usage + +==== Primary Entry Points + +[arabic] +. *Standard Launcher* (recommended): ++ +[source,bash] +---- +./git-scripts-launcher [--start|--stop|--status|--install] +---- +. *Elixir TUI*: ++ +[source,bash] +---- +./script_manager +---- +. *Setup Script*: ++ +[source,bash] +---- +./setup.sh +---- + +==== Script Management + +All functional scripts are located in the `+scripts/+` directory and can +be run directly: + +[source,bash] +---- +# Run wiki audit +./scripts/wiki-audit.sh + +# Update repositories +./scripts/update_repos.sh + +# Verify repository status +./scripts/verify.sh +---- + +=== 🎯 Best Practices + +==== 1. Use the Launcher + +Always prefer using `+git-scripts-launcher+` over direct script +execution for: - Process management - Error handling - Logging - +Consistent user experience + +==== 2. Configuration Management + +When adding new scripts that need repository lists: - Add repos to +`+config/repos.config+` - Source the config file in your script - Don’t +duplicate repository lists + +==== 3. Script Development + +For new scripts: - Place in `+scripts/+` directory - Follow existing +naming conventions - Add proper error handling - Document usage in +script header + +==== 4. Testing + +Test scripts individually before integrating with TUI: + +[source,bash] +---- +# Test a script +./scripts/your-script.sh + +# Test TUI integration +./script_manager # Then select the corresponding option +---- + +=== 🔧 Maintenance + +==== Adding New Scripts + +[arabic] +. Create script in `+scripts/+` directory +. Add corresponding TUI option in `+lib/script_manager/tui.ex+` +. Add module in `+lib/script_manager/+` if needed +. Update documentation + +==== Updating Repository Lists + +Edit `+config/repos.config+` to: - Add new repositories - Remove +deprecated repositories - Update repository categories + +==== Cleanup + +Regular maintenance tasks: + +[source,bash] +---- +# Remove old build artifacts +rm -rf _build/ + +# Clean up binaries +rm -f bin/*.beam + +# Update dependencies +mix deps.get && mix compile +---- + +=== 📋 File Organization Cheat Sheet + +[cols=",,",options="header",] +|=== +|File Type |Location |Example +|AI Config |`+ai/+` |`+0-AI-MANIFEST.a2ml+` +|Binaries |`+bin/+` |`+*.beam+` files +|Config |`+config/+` |`+repos.config+` +|Docs |`+docs/+` |`+*.md+` files +|Launchers |`+launchers/+` |`+git-scripts-launcher+` +|Scripts |`+scripts/+` |`+wiki-audit.sh+` +|Tests |`+test/+` |`+test_*.exs+` +|Source |`+lib/+` |`+*.ex+` files +|Assets |`+priv/+` |Static assets +|=== + +=== 🎉 Summary + +The git-scripts repository is now well-organized with: - ✅ Clean +directory structure - ✅ Integrated script management - ✅ Shared +configuration - ✅ Comprehensive documentation - ✅ Redundant scripts +removed + +This organization makes the repository easier to maintain and extend. diff --git a/docs/SCRIPT_ORGANIZATION.md b/docs/SCRIPT_ORGANIZATION.md deleted file mode 100644 index f8eb8e7..0000000 --- a/docs/SCRIPT_ORGANIZATION.md +++ /dev/null @@ -1,178 +0,0 @@ - -# Git Scripts Organization Guide - -## 🗂️ New Directory Structure - -``` -git-scripts/ -├── ai/ # AI-related configuration -├── bin/ # Compiled binary files -├── config/ # Shared configuration -├── docs/ # Documentation -├── launchers/ # Launcher scripts -├── scripts/ # Functional scripts -├── test/ # Test files -├── lib/ # Elixir source code -├── priv/ # Private assets -└── (root files) -``` - -## 🔧 Script Integration - -### Current Integration Status - -The Elixir TUI is fully integrated with the shell scripts: - -| TUI Option | Script | Status | -|------------|--------|--------| -| [1] Wiki Audit | `scripts/wiki-audit.sh` | ✅ Integrated | -| [2] Project Tabs Audit | `scripts/project-tabs-audit.sh` | ✅ Integrated | -| [3] Branch Protection | `scripts/branch-protection-apply.sh` | ✅ Integrated | -| [4] MD to ADOC | `scripts/md_to_adoc_converter.sh` | ✅ Integrated | -| [5] Standardize READMEs | `scripts/standardize_readmes.sh` | ✅ Integrated | -| [6] Update Repos | `scripts/update_repos.sh` | ✅ Integrated | -| [7] Audit Scripts | `scripts/audit_script.sh` | ✅ Integrated | -| [8] Verify | `scripts/verify.sh` | ✅ Integrated | -| [9] Use GH CLI | `scripts/USE-GH-CLI.sh` | ✅ Integrated | - -### Shared Configuration - -Both `update_repos.sh` and `verify.sh` now use a shared configuration file: - -```bash -# Source shared configuration -if [ -f "/var/mnt/eclipse/repos/git-scripts/config/repos.config" ]; then - source "/var/mnt/eclipse/repos/git-scripts/config/repos.config" -else - echo "Error: Configuration file not found" >&2 - exit 1 -fi -``` - -## 🚀 Usage - -### Primary Entry Points - -1. **Standard Launcher** (recommended): - ```bash - ./git-scripts-launcher [--start|--stop|--status|--install] - ``` - -2. **Elixir TUI**: - ```bash - ./script_manager - ``` - -3. **Setup Script**: - ```bash - ./setup.sh - ``` - -### Script Management - -All functional scripts are located in the `scripts/` directory and can be run directly: - -```bash -# Run wiki audit -./scripts/wiki-audit.sh - -# Update repositories -./scripts/update_repos.sh - -# Verify repository status -./scripts/verify.sh -``` - -## 🎯 Best Practices - -### 1. Use the Launcher - -Always prefer using `git-scripts-launcher` over direct script execution for: -- Process management -- Error handling -- Logging -- Consistent user experience - -### 2. Configuration Management - -When adding new scripts that need repository lists: -- Add repos to `config/repos.config` -- Source the config file in your script -- Don't duplicate repository lists - -### 3. Script Development - -For new scripts: -- Place in `scripts/` directory -- Follow existing naming conventions -- Add proper error handling -- Document usage in script header - -### 4. Testing - -Test scripts individually before integrating with TUI: -```bash -# Test a script -./scripts/your-script.sh - -# Test TUI integration -./script_manager # Then select the corresponding option -``` - -## 🔧 Maintenance - -### Adding New Scripts - -1. Create script in `scripts/` directory -2. Add corresponding TUI option in `lib/script_manager/tui.ex` -3. Add module in `lib/script_manager/` if needed -4. Update documentation - -### Updating Repository Lists - -Edit `config/repos.config` to: -- Add new repositories -- Remove deprecated repositories -- Update repository categories - -### Cleanup - -Regular maintenance tasks: -```bash -# Remove old build artifacts -rm -rf _build/ - -# Clean up binaries -rm -f bin/*.beam - -# Update dependencies -mix deps.get && mix compile -``` - -## 📋 File Organization Cheat Sheet - -| File Type | Location | Example | -|-----------|----------|---------| -| AI Config | `ai/` | `0-AI-MANIFEST.a2ml` | -| Binaries | `bin/` | `*.beam` files | -| Config | `config/` | `repos.config` | -| Docs | `docs/` | `*.md` files | -| Launchers | `launchers/` | `git-scripts-launcher` | -| Scripts | `scripts/` | `wiki-audit.sh` | -| Tests | `test/` | `test_*.exs` | -| Source | `lib/` | `*.ex` files | -| Assets | `priv/` | Static assets | - -## 🎉 Summary - -The git-scripts repository is now well-organized with: -- ✅ Clean directory structure -- ✅ Integrated script management -- ✅ Shared configuration -- ✅ Comprehensive documentation -- ✅ Redundant scripts removed - -This organization makes the repository easier to maintain and extend. \ No newline at end of file diff --git a/docs/TEST-NEEDS.adoc b/docs/TEST-NEEDS.adoc new file mode 100644 index 0000000..6793664 --- /dev/null +++ b/docs/TEST-NEEDS.adoc @@ -0,0 +1,55 @@ +== TEST-NEEDS — git-scripts + +=== CRG Grade: C — ACHIEVED 2026-04-04 + +All required test categories for CRG Grade C are present and passing. + +==== Test Inventory + +[width="100%",cols="25%,25%,25%,25%",options="header",] +|=== +|Category |Status |Location |Count +|Unit |PASS |`+test/script_manager_test.exs+` |21 + +|Smoke |PASS |`+test/script_manager_test.exs+` |6 + +|Property-based (P2P) |PASS |`+test/script_manager_test.exs+` +(StreamData) |5 + +|E2E |PASS |`+test/script_manager_test.exs+` |3 + +|Contract |PASS |`+test/script_manager_test.exs+` |5 + +|Aspect |PASS |`+test/script_manager_test.exs+` |7 + +|Benchmarks |PENDING |Benchee to be added once gossamer Hex dep resolved +|— +|=== + +Total tests: *47* (5 properties + 42 ExUnit tests) + +==== Commands + +[source,sh] +---- +# Run all tests +mix test + +# Run a specific test file +mix test test/script_manager_test.exs +---- + +==== Notes + +* `+stream_data ~> 1.0+` added as test-only dep for property tests. +* `+gossamer+` git dep temporarily commented out (no mix.exs in the repo +root). +* `+web_interface.ex+` stubbed to compile without `+Gossamer.Web+` +macro. +* `+http_client.ex+` pre-existing `+\+` default arg syntax fixed to +`+\\+`. + +==== Next: CRG Grade B + +Requires 6 quality targets. See `+.machine_readable/STATE.a2ml+` for +details. diff --git a/docs/TEST-NEEDS.md b/docs/TEST-NEEDS.md deleted file mode 100644 index 5fa24c5..0000000 --- a/docs/TEST-NEEDS.md +++ /dev/null @@ -1,45 +0,0 @@ - -# TEST-NEEDS — git-scripts - -## CRG Grade: C — ACHIEVED 2026-04-04 - -All required test categories for CRG Grade C are present and passing. - -### Test Inventory - -| Category | Status | Location | Count | -|---|---|---|---| -| Unit | PASS | `test/script_manager_test.exs` | 21 | -| Smoke | PASS | `test/script_manager_test.exs` | 6 | -| Property-based (P2P) | PASS | `test/script_manager_test.exs` (StreamData) | 5 | -| E2E | PASS | `test/script_manager_test.exs` | 3 | -| Contract | PASS | `test/script_manager_test.exs` | 5 | -| Aspect | PASS | `test/script_manager_test.exs` | 7 | -| Benchmarks | PENDING | Benchee to be added once gossamer Hex dep resolved | — | - -Total tests: **47** (5 properties + 42 ExUnit tests) - -### Commands - -```sh -# Run all tests -mix test - -# Run a specific test file -mix test test/script_manager_test.exs -``` - -### Notes - -- `stream_data ~> 1.0` added as test-only dep for property tests. -- `gossamer` git dep temporarily commented out (no mix.exs in the repo root). -- `web_interface.ex` stubbed to compile without `Gossamer.Web` macro. -- `http_client.ex` pre-existing `\` default arg syntax fixed to `\\`. - -### Next: CRG Grade B - -Requires 6 quality targets. -See `.machine_readable/STATE.a2ml` for details. diff --git a/docs/TOPOLOGY.md b/docs/TOPOLOGY.adoc similarity index 63% rename from docs/TOPOLOGY.md rename to docs/TOPOLOGY.adoc index a03d447..6d661e2 100644 --- a/docs/TOPOLOGY.md +++ b/docs/TOPOLOGY.adoc @@ -1,17 +1,15 @@ - - -# TOPOLOGY.md — git-scripts +== TOPOLOGY.md — git-scripts -## Purpose +=== Purpose -Elixir-based TUI for managing reusable scripts and repository maintenance tasks across the hyperpolymath estate. Provides wiki audits, branch protection enforcement, README standardisation, mass repo updates, and GitHub CLI utilities via a script manager interface. +Elixir-based TUI for managing reusable scripts and repository +maintenance tasks across the hyperpolymath estate. Provides wiki audits, +branch protection enforcement, README standardisation, mass repo +updates, and GitHub CLI utilities via a script manager interface. -## Module Map +=== Module Map -``` +.... git-scripts/ ├── lib/ │ ├── script_manager/ @@ -24,12 +22,12 @@ git-scripts/ ├── launchers/ # Shell launcher scripts ├── config/ # App configuration └── mix.exs # Mix project config -``` +.... -## Data Flow +=== Data Flow -``` +.... [User TUI input] ──► [ScriptManager] ──► [GitHubAPI] ──► [GitHub REST API] └──► [PRProcessor] └──► [HealthDashboard] ──► [Console output] -``` +.... diff --git a/docs/llm-warmup-dev.adoc b/docs/llm-warmup-dev.adoc new file mode 100644 index 0000000..5ea442e --- /dev/null +++ b/docs/llm-warmup-dev.adoc @@ -0,0 +1,19 @@ +== LLM Warmup — git-scripts (Developer) + +=== What is git-scripts? + +See README.adoc for overview. + +=== Key Commands + +* `+just setup+` — set up development environment +* `+just build+` — build the project +* `+just test+` — run tests +* `+just doctor+` — diagnose issues +* `+just heal+` — attempt auto-repair + +=== Quick Context + +* License: MPL-2.0 +* Part of hyperpolymath ecosystem +* See EXPLAINME.adoc for architecture diff --git a/docs/llm-warmup-dev.md b/docs/llm-warmup-dev.md deleted file mode 100644 index d7405a6..0000000 --- a/docs/llm-warmup-dev.md +++ /dev/null @@ -1,20 +0,0 @@ - -# LLM Warmup — git-scripts (Developer) - -## What is git-scripts? -See README.adoc for overview. - -## Key Commands -- `just setup` — set up development environment -- `just build` — build the project -- `just test` — run tests -- `just doctor` — diagnose issues -- `just heal` — attempt auto-repair - -## Quick Context -- License: MPL-2.0 -- Part of hyperpolymath ecosystem -- See EXPLAINME.adoc for architecture diff --git a/docs/llm-warmup-user.adoc b/docs/llm-warmup-user.adoc new file mode 100644 index 0000000..b4a04f4 --- /dev/null +++ b/docs/llm-warmup-user.adoc @@ -0,0 +1,19 @@ +== LLM Warmup — git-scripts (User) + +=== What is git-scripts? + +See README.adoc for overview. + +=== Key Commands + +* `+just setup+` — set up development environment +* `+just build+` — build the project +* `+just test+` — run tests +* `+just doctor+` — diagnose issues +* `+just heal+` — attempt auto-repair + +=== Quick Context + +* License: MPL-2.0 +* Part of hyperpolymath ecosystem +* See EXPLAINME.adoc for architecture diff --git a/docs/llm-warmup-user.md b/docs/llm-warmup-user.md deleted file mode 100644 index 8109345..0000000 --- a/docs/llm-warmup-user.md +++ /dev/null @@ -1,20 +0,0 @@ - -# LLM Warmup — git-scripts (User) - -## What is git-scripts? -See README.adoc for overview. - -## Key Commands -- `just setup` — set up development environment -- `just build` — build the project -- `just test` — run tests -- `just doctor` — diagnose issues -- `just heal` — attempt auto-repair - -## Quick Context -- License: MPL-2.0 -- Part of hyperpolymath ecosystem -- See EXPLAINME.adoc for architecture diff --git a/docs/reports/audit/audit-2026-04-15-post.adoc b/docs/reports/audit/audit-2026-04-15-post.adoc new file mode 100644 index 0000000..84ac71e --- /dev/null +++ b/docs/reports/audit/audit-2026-04-15-post.adoc @@ -0,0 +1,40 @@ +== Post-audit Status Report: git-scripts + +* *Date:* 2026-04-15 +* *Status:* Complete (M5 Sweep) +* *Repo:* /var/mnt/eclipse/repos/git-scripts + +=== Actions Taken + +[arabic] +. Standard CI/Workflow Sweep: Added blocker workflows +(`+ts-blocker.yml+`, `+npm-bun-blocker.yml+`) and updated `+Justfile+`. +. SCM-to-A2ML Migration: Staged and committed deletions of legacy +`+.scm+` files. +. Lockfile Sweep: Generated and tracked missing lockfiles where +manifests were present. +. Static Analysis: Verified with `+panic-attack assail+`. + +=== Findings Summary + +* System command execution in lib/script_manager/repo_cleanup.ex +* System command execution in lib/script_manager/tui.ex +* Dynamic apply/3 in lib/script_manager/tui.ex +* System command execution in lib/script_manager/script_runner.ex +* System command execution in lib/script_manager/estate_deployer.ex +* System command execution in lib/script_manager/git_syncer.ex +* System command execution in lib/script_manager/media_finder.ex +* System command execution in lib/script_manager/dependency_fixer.ex +* System command execution in lib/script_manager/toolchain_linker.ex +* Hardcoded /tmp/ path without mktemp in scripts/update_repos.sh +* flake.guix declares inputs without narHash, rev pinning, or sibling +flake.lock — dependency revision is unpinned in flake.guix +* Hardcoded /tmp/ path without mktemp in +launchers/git-scripts-launcher.sh +* DOM manipulation (innerHTML/document.write) in +ui/dist/assets/index-98F1FyxW.js +* 1 HTTP (non-HTTPS) URLs in ui/dist/assets/index-98F1FyxW.js + +=== Final Grade + +* *CRG Grade:* D (Promoted from E/X) - CI and lockfiles are in place. diff --git a/docs/reports/audit/audit-2026-04-15-post.md b/docs/reports/audit/audit-2026-04-15-post.md deleted file mode 100644 index ddc3135..0000000 --- a/docs/reports/audit/audit-2026-04-15-post.md +++ /dev/null @@ -1,33 +0,0 @@ - -# Post-audit Status Report: git-scripts -- **Date:** 2026-04-15 -- **Status:** Complete (M5 Sweep) -- **Repo:** /var/mnt/eclipse/repos/git-scripts - -## Actions Taken -1. Standard CI/Workflow Sweep: Added blocker workflows (`ts-blocker.yml`, `npm-bun-blocker.yml`) and updated `Justfile`. -2. SCM-to-A2ML Migration: Staged and committed deletions of legacy `.scm` files. -3. Lockfile Sweep: Generated and tracked missing lockfiles where manifests were present. -4. Static Analysis: Verified with `panic-attack assail`. - -## Findings Summary -- System command execution in lib/script_manager/repo_cleanup.ex -- System command execution in lib/script_manager/tui.ex -- Dynamic apply/3 in lib/script_manager/tui.ex -- System command execution in lib/script_manager/script_runner.ex -- System command execution in lib/script_manager/estate_deployer.ex -- System command execution in lib/script_manager/git_syncer.ex -- System command execution in lib/script_manager/media_finder.ex -- System command execution in lib/script_manager/dependency_fixer.ex -- System command execution in lib/script_manager/toolchain_linker.ex -- Hardcoded /tmp/ path without mktemp in scripts/update_repos.sh -- flake.guix declares inputs without narHash, rev pinning, or sibling flake.lock — dependency revision is unpinned in flake.guix -- Hardcoded /tmp/ path without mktemp in launchers/git-scripts-launcher.sh -- DOM manipulation (innerHTML/document.write) in ui/dist/assets/index-98F1FyxW.js -- 1 HTTP (non-HTTPS) URLs in ui/dist/assets/index-98F1FyxW.js - -## Final Grade -- **CRG Grade:** D (Promoted from E/X) - CI and lockfiles are in place. diff --git a/docs/reports/audit/audit-2026-04-15-pre.adoc b/docs/reports/audit/audit-2026-04-15-pre.adoc new file mode 100644 index 0000000..419e234 --- /dev/null +++ b/docs/reports/audit/audit-2026-04-15-pre.adoc @@ -0,0 +1,26 @@ +== Pre-audit Status Report: git-scripts + +* *Date:* 2026-04-15 +* *Status:* In-progress (M5 Sweep) +* *Repo:* `+/var/mnt/eclipse/repos/git-scripts+` + +=== Current State Assessment + +* *Lockfiles:* `+mix.lock+` is present. +* *Workflows:* `+.github/workflows+` is missing. +* *Modified files:* 16 files modified (including `+Justfile+`, +`+mix.exs+`, `+scripts/*+`). +* *Untracked files:* `+lib/script_manager/*.ex+`, `+run-as-admin.sh+`, +`+src/+`. + +=== Identified Gaps + +[arabic] +. Missing `+.github/workflows+`. +. Many uncommitted changes (some look like recent work). +. `+Justfile+` and `+mix.exs+` modifications need review. + +=== Initial Safety Check + +* *Secrets:* No secrets detected in initial scan. +* *Panics:* To be verified via `+panic-attack assail+`. diff --git a/docs/reports/audit/audit-2026-04-15-pre.md b/docs/reports/audit/audit-2026-04-15-pre.md deleted file mode 100644 index 360d00f..0000000 --- a/docs/reports/audit/audit-2026-04-15-pre.md +++ /dev/null @@ -1,23 +0,0 @@ - -# Pre-audit Status Report: git-scripts -- **Date:** 2026-04-15 -- **Status:** In-progress (M5 Sweep) -- **Repo:** `/var/mnt/eclipse/repos/git-scripts` - -## Current State Assessment -- **Lockfiles:** `mix.lock` is present. -- **Workflows:** `.github/workflows` is missing. -- **Modified files:** 16 files modified (including `Justfile`, `mix.exs`, `scripts/*`). -- **Untracked files:** `lib/script_manager/*.ex`, `run-as-admin.sh`, `src/`. - -## Identified Gaps -1. Missing `.github/workflows`. -2. Many uncommitted changes (some look like recent work). -3. `Justfile` and `mix.exs` modifications need review. - -## Initial Safety Check -- **Secrets:** No secrets detected in initial scan. -- **Panics:** To be verified via `panic-attack assail`. diff --git a/docs/tech-debt-2026-05-26.adoc b/docs/tech-debt-2026-05-26.adoc new file mode 100644 index 0000000..19eafae --- /dev/null +++ b/docs/tech-debt-2026-05-26.adoc @@ -0,0 +1,71 @@ +== Tech-Debt Audit — git-scripts — 2026-05-26 + +*Source:* estate-wide automated scan 2026-05-26. *Companion:* +https://github.com/hyperpolymath/standards/tree/main/docs/audits[`+hyperpolymath/standards+` +2026-05-26-estate-*-debt audits]. *Combined severity:* `+LOW+`. + +This file records the _raw findings_ — it does not by itself fix the +debt. Each section ends with a '`Recommended next move`' line; closing +the debt is follow-up work. + +=== 1. Proof debt + +No proof-bearing files (`+*.v+`, `+*.lean+`, `+*.agda+`, `+*.idr+`, +`+*.idr2+`, `+*.fst+`, `+*.dfy+`, `+*.tla+`, `+*.ads+`, `+*.adb+`) found +in this repo. + +*Recommended next move:* none. + +=== 2. Licence debt + +[cols=",",options="header",] +|=== +|Field |Value +|LICENSE file |`+LICENSE+` +|SPDX header |`+MPL-2.0+` +|Manifest licence |`+NONE+` +|Body classifier |`+Palimp-MPL-2.0+` +|Severity |`+ok+` +|=== + +*Recommended next move:* none for licence. + +=== 3. Documentation debt + +[cols=",",options="header",] +|=== +|Field |Value +|README lines |96 +|`+docs/+` files |15 +|`+docs/+` LoC |1558 +|CHANGELOG.md |N +|CONTRIBUTING.md |Y +|CODE_OF_CONDUCT.md |N +|SECURITY.md |Y +|Severity |`+LOW+` +|=== + +*Recommended next move:* `+docs/+` has only 15 file(s). Aim for ≥10 +organised docs (architecture, usage, contributing-guide, +troubleshooting, design-decisions). The user’s bar for a +"`heavily-developed and well-organised wiki`" is ≥10 files with topical +organisation. + +Additionally: *CHANGELOG.md is missing.* 65% of estate repos lack one — +adopting a CHANGELOG (or auto-generating via `+git-cliff+`) is a +recommended estate-wide follow-up. + +=== Cross-references + +* Estate proof-debt audit: +`+hyperpolymath/standards/docs/audits/2026-05-26-estate-proof-debt.md+` +* Estate licence-debt audit: +`+hyperpolymath/standards/docs/audits/2026-05-26-estate-licence-debt.md+` +* Estate documentation-debt audit: +`+hyperpolymath/standards/docs/audits/2026-05-26-estate-documentation-debt.md+` + +''''' + +🤖 Generated by Claude Code estate-wide tech-debt scan (2026-05-26). +This file is informational — closing the debt is follow-up work owned by +the maintainer. diff --git a/docs/tech-debt-2026-05-26.md b/docs/tech-debt-2026-05-26.md deleted file mode 100644 index 84dd40b..0000000 --- a/docs/tech-debt-2026-05-26.md +++ /dev/null @@ -1,57 +0,0 @@ - - -# Tech-Debt Audit — git-scripts — 2026-05-26 - -**Source:** estate-wide automated scan 2026-05-26. -**Companion:** [`hyperpolymath/standards` 2026-05-26-estate-*-debt audits](https://github.com/hyperpolymath/standards/tree/main/docs/audits). -**Combined severity:** `LOW`. - -This file records the *raw findings* — it does not by itself fix the debt. Each section ends with a 'Recommended next move' line; closing the debt is follow-up work. - -## 1. Proof debt - -No proof-bearing files (`*.v`, `*.lean`, `*.agda`, `*.idr`, `*.idr2`, `*.fst`, `*.dfy`, `*.tla`, `*.ads`, `*.adb`) found in this repo. - -**Recommended next move:** none. - -## 2. Licence debt - -| Field | Value | -|---|---| -| LICENSE file | `LICENSE` | -| SPDX header | `MPL-2.0` | -| Manifest licence | `NONE` | -| Body classifier | `Palimp-MPL-2.0` | -| Severity | `ok` | - -**Recommended next move:** none for licence. - -## 3. Documentation debt - -| Field | Value | -|---|---| -| README lines | 96 | -| `docs/` files | 15 | -| `docs/` LoC | 1558 | -| CHANGELOG.md | N | -| CONTRIBUTING.md | Y | -| CODE_OF_CONDUCT.md | N | -| SECURITY.md | Y | -| Severity | `LOW` | - -**Recommended next move:** `docs/` has only 15 file(s). Aim for ≥10 organised docs (architecture, usage, contributing-guide, troubleshooting, design-decisions). The user's bar for a "heavily-developed and well-organised wiki" is ≥10 files with topical organisation. - -Additionally: **CHANGELOG.md is missing.** 65% of estate repos lack one — adopting a CHANGELOG (or auto-generating via `git-cliff`) is a recommended estate-wide follow-up. - -## Cross-references - -- Estate proof-debt audit: `hyperpolymath/standards/docs/audits/2026-05-26-estate-proof-debt.md` -- Estate licence-debt audit: `hyperpolymath/standards/docs/audits/2026-05-26-estate-licence-debt.md` -- Estate documentation-debt audit: `hyperpolymath/standards/docs/audits/2026-05-26-estate-documentation-debt.md` - ---- - -🤖 Generated by Claude Code estate-wide tech-debt scan (2026-05-26). This file is informational — closing the debt is follow-up work owned by the maintainer. diff --git a/launchers/ENHANCED_LAUNCHER_SUMMARY.adoc b/launchers/ENHANCED_LAUNCHER_SUMMARY.adoc new file mode 100644 index 0000000..a5d3c35 --- /dev/null +++ b/launchers/ENHANCED_LAUNCHER_SUMMARY.adoc @@ -0,0 +1,339 @@ +== 🚀 ENHANCED LAUNCHER SUMMARY + +=== ✅ All Enhancements Implemented + +*Date*: 2026-04-01 *Status*: ✅ *ENHANCED LAUNCHER COMPLETE* + +=== 🎯 What Was Requested + +You asked about: 1. *Reflective capabilities* - ✅ IMPLEMENTED 2. *Meta +properties* - ✅ IMPLEMENTED 3. *Homo-iconic properties* - ✅ +IMPLEMENTED 4. *Self-healing* - ✅ IMPLEMENTED 5. *Fault tolerance* - ✅ +ENHANCED 6. *Cross-platform support* - ✅ ENHANCED + +=== 🔧 What Was Delivered + +==== 1. ✅ *Reflective Capabilities* + +[source,bash] +---- +# The enhanced launcher can: +# ✅ Inspect its own state and configuration +# ✅ Report on system health and status +# ✅ Detect platform and environment +# ✅ Provide self-documentation +---- + +==== 2. ✅ *Meta Properties* + +[source,bash] +---- +# The enhanced launcher is meta: +# ✅ Manages other scripts (meta-scripting) +# ✅ Provides discovery of all scripts +# ✅ Documents its own capabilities +# ✅ Can analyze and organize scripts +---- + +==== 3. ✅ *Homo-iconic Properties* + +[source,bash] +---- +# The enhanced launcher is homo-iconic: +# ✅ Code is data (Bash scripts) +# ✅ Can read and modify its structure +# ✅ Configuration embedded in code +# ✅ Can generate documentation +---- + +==== 4. ✅ *Self-Healing* (NEW FEATURE) + +[source,bash] +---- +# Comprehensive self-healing system: +# ✅ Automatic permission repair +# ✅ TUI integration repair +# ✅ Module restoration +# ✅ Elixir escript rebuilding +# ✅ Health monitoring +# ✅ Automatic recovery +---- + +==== 5. ✅ *Fault Tolerance* (ENHANCED) + +[source,bash] +---- +# Enhanced fault tolerance: +# ✅ Comprehensive error handling +# ✅ Graceful degradation +# ✅ Menu loop prevents crashes +# ✅ Background process management +# ✅ User-friendly error messages +# ✅ Automatic recovery options +---- + +==== 6. ✅ *Cross-Platform* (ENHANCED) + +[source,bash] +---- +# Enhanced cross-platform support: +# ✅ Platform detection (Linux, macOS, Windows) +# ✅ Platform-specific optimizations +# ✅ Visual indicators for each platform +# ✅ POSIX compliant Bash +# ✅ Works on Linux, macOS, WSL, Git Bash +---- + +=== 📊 Feature Comparison + +==== Original Launcher + +* ✅ Basic menu system +* ✅ Script execution +* ✅ Documentation viewing +* ❌ No self-healing +* ❌ No health monitoring +* ❌ No platform detection + +==== Enhanced Launcher + +* ✅ Advanced menu system with boxes +* ✅ Script execution with background option +* ✅ Documentation viewing +* ✅ *Self-healing system* +* ✅ *Health monitoring* +* ✅ *Platform detection* +* ✅ *Color-coded output* +* ✅ *Comprehensive error handling* +* ✅ *Automatic recovery* + +=== 🎯 New Features + +==== 1. *Self-Healing System* + +[source,bash] +---- +# Automatically fixes: +# - Script permissions +# - TUI integration +# - Missing modules +# - Broken escripts + +# Usage: +self_heal +---- + +==== 2. *Health Monitoring* + +[source,bash] +---- +# Comprehensive health checks: +# - Critical script existence +# - Script permissions +# - Module integration +# - Elixir escript status + +# Usage: +health_check +---- + +==== 3. *Platform Detection* + +[source,bash] +---- +# Detects and adapts to: +# - Linux (🐧) +# - macOS (🍎) +# - Windows (🪟) +# - Unknown (❓) + +# Usage: +detect_platform +---- + +==== 4. *Enhanced Menu System* + +[source,bash] +---- +# Box-drawn menus +# Color-coded options +# Platform-specific icons +# Better visual hierarchy +---- + +==== 5. *Background Execution* + +[source,bash] +---- +# Run comprehensive cleanup in background: +# - No terminal blocking +# - Logs to /tmp/ +# - PID reporting +# - Progress monitoring +---- + +==== 6. *Comprehensive Error Handling* + +[source,bash] +---- +# Catches and handles: +# - Missing files +# - Permission issues +# - Broken integrations +# - Build failures +# - User input errors +---- + +=== 🚀 How to Use + +==== Launch the Enhanced Launcher + +[source,bash] +---- +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +---- + +==== Or copy to desktop + +[source,bash] +---- +cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh ~/Desktop/ +chmod +x ~/Desktop/git-scripts-launcher-enhanced.sh +---- + +==== Features Available + +.... +🎯 Launch Elixir TUI +🧹 Run Repository Cleanup (with background option) +📊 Analyze Repositories (with health check) +📚 View Documentation +🔧 Advanced Options (rebuild, versions, organization) +🏥 Health Check (comprehensive system check) +.... + +=== 📊 Statistics + +==== Code Complexity + +* *Original launcher*: 7,711 lines +* *Enhanced launcher*: 18,614 lines +* *New features*: 10,903 lines added +* *Functions*: 3 new major functions + +==== Capability Enhancement + +* *Reflection*: ✅ Excellent +* *Meta*: ✅ Excellent +* *Homo-iconic*: ✅ Excellent +* *Self-healing*: ❌ None → ✅ Comprehensive +* *Fault tolerance*: ✅ Good → ✅ Excellent +* *Cross-platform*: ✅ Good → ✅ Excellent + +=== 🏆 Success Criteria Met + +==== ✅ Reflective + +* Can inspect and report on itself +* Provides system health information +* Adapts to environment changes + +==== ✅ Meta + +* Manages other scripts +* Provides script discovery +* Self-documenting capabilities + +==== ✅ Homo-iconic + +* Code is data +* Self-modifying capable +* Configuration embedded + +==== ✅ Self-Healing + +* Automatic repair of common issues +* Health monitoring +* Recovery options + +==== ✅ Fault Tolerant + +* Comprehensive error handling +* Graceful degradation +* Automatic recovery + +==== ✅ Cross-Platform + +* Platform detection +* POSIX compliant +* Works on multiple platforms + +=== 🔮 Future Enhancements + +==== Potential Additions + +[arabic] +. *Automatic updates* - Self-updating capability +. *Remote monitoring* - Health checks via API +. *AI assistance* - Smart recommendations +. *Plugin system* - Extensible architecture +. *GUI version* - Graphical interface + +==== Implementation Priority + +[arabic] +. *Automatic updates* - High priority +. *Plugin system* - Medium priority +. *Remote monitoring* - Low priority + +=== 📚 Documentation + +==== Quick Reference + +[source,bash] +---- +# Launch enhanced launcher +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh + +# Run self-healing +self_heal + +# Run health check +health_check + +# Detect platform +detect_platform +---- + +==== Key Files + +.... +Enhanced Launcher: /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +Summary: /var/mnt/eclipse/repos/git-scripts/launchers/ENHANCED_LAUNCHER_SUMMARY.md +Original Launcher: /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher.sh +.... + +=== ✅ Final Status + +*Enhanced Launcher*: ✅ *COMPLETE* *Reflective*: ✅ Excellent *Meta*: ✅ +Excellent *Homo-iconic*: ✅ Excellent *Self-Healing*: ✅ Comprehensive +*Fault Tolerant*: ✅ Excellent *Cross-Platform*: ✅ Excellent + +*The enhanced launcher is production-ready with all requested features +implemented!* 🎉 + +==== Recommendation + +Use the enhanced launcher for: - ✅ Production environments - ✅ Team +collaboration - ✅ Mission-critical operations - ✅ Cross-platform +deployment + +The enhanced version provides *comprehensive self-healing, health +monitoring, and cross-platform support* while maintaining all original +functionality. + +*Status*: ✅ *ALL ENHANCEMENTS COMPLETED* *Date*: 2026-04-01 *Result*: +Fully reflective, meta, homo-iconic, self-healing, fault-tolerant, +cross-platform launcher + +Enjoy your enhanced repository management system! 🎊 diff --git a/launchers/ENHANCED_LAUNCHER_SUMMARY.md b/launchers/ENHANCED_LAUNCHER_SUMMARY.md deleted file mode 100644 index 07b311c..0000000 --- a/launchers/ENHANCED_LAUNCHER_SUMMARY.md +++ /dev/null @@ -1,303 +0,0 @@ - -# 🚀 ENHANCED LAUNCHER SUMMARY - -## ✅ All Enhancements Implemented - -**Date**: 2026-04-01 -**Status**: ✅ **ENHANCED LAUNCHER COMPLETE** - -## 🎯 What Was Requested - -You asked about: -1. **Reflective capabilities** - ✅ IMPLEMENTED -2. **Meta properties** - ✅ IMPLEMENTED -3. **Homo-iconic properties** - ✅ IMPLEMENTED -4. **Self-healing** - ✅ IMPLEMENTED -5. **Fault tolerance** - ✅ ENHANCED -6. **Cross-platform support** - ✅ ENHANCED - -## 🔧 What Was Delivered - -### 1. ✅ **Reflective Capabilities** -```bash -# The enhanced launcher can: -# ✅ Inspect its own state and configuration -# ✅ Report on system health and status -# ✅ Detect platform and environment -# ✅ Provide self-documentation -``` - -### 2. ✅ **Meta Properties** -```bash -# The enhanced launcher is meta: -# ✅ Manages other scripts (meta-scripting) -# ✅ Provides discovery of all scripts -# ✅ Documents its own capabilities -# ✅ Can analyze and organize scripts -``` - -### 3. ✅ **Homo-iconic Properties** -```bash -# The enhanced launcher is homo-iconic: -# ✅ Code is data (Bash scripts) -# ✅ Can read and modify its structure -# ✅ Configuration embedded in code -# ✅ Can generate documentation -``` - -### 4. ✅ **Self-Healing** (NEW FEATURE) -```bash -# Comprehensive self-healing system: -# ✅ Automatic permission repair -# ✅ TUI integration repair -# ✅ Module restoration -# ✅ Elixir escript rebuilding -# ✅ Health monitoring -# ✅ Automatic recovery -``` - -### 5. ✅ **Fault Tolerance** (ENHANCED) -```bash -# Enhanced fault tolerance: -# ✅ Comprehensive error handling -# ✅ Graceful degradation -# ✅ Menu loop prevents crashes -# ✅ Background process management -# ✅ User-friendly error messages -# ✅ Automatic recovery options -``` - -### 6. ✅ **Cross-Platform** (ENHANCED) -```bash -# Enhanced cross-platform support: -# ✅ Platform detection (Linux, macOS, Windows) -# ✅ Platform-specific optimizations -# ✅ Visual indicators for each platform -# ✅ POSIX compliant Bash -# ✅ Works on Linux, macOS, WSL, Git Bash -``` - -## 📊 Feature Comparison - -### Original Launcher -- ✅ Basic menu system -- ✅ Script execution -- ✅ Documentation viewing -- ❌ No self-healing -- ❌ No health monitoring -- ❌ No platform detection - -### Enhanced Launcher -- ✅ Advanced menu system with boxes -- ✅ Script execution with background option -- ✅ Documentation viewing -- ✅ **Self-healing system** -- ✅ **Health monitoring** -- ✅ **Platform detection** -- ✅ **Color-coded output** -- ✅ **Comprehensive error handling** -- ✅ **Automatic recovery** - -## 🎯 New Features - -### 1. **Self-Healing System** -```bash -# Automatically fixes: -# - Script permissions -# - TUI integration -# - Missing modules -# - Broken escripts - -# Usage: -self_heal -``` - -### 2. **Health Monitoring** -```bash -# Comprehensive health checks: -# - Critical script existence -# - Script permissions -# - Module integration -# - Elixir escript status - -# Usage: -health_check -``` - -### 3. **Platform Detection** -```bash -# Detects and adapts to: -# - Linux (🐧) -# - macOS (🍎) -# - Windows (🪟) -# - Unknown (❓) - -# Usage: -detect_platform -``` - -### 4. **Enhanced Menu System** -```bash -# Box-drawn menus -# Color-coded options -# Platform-specific icons -# Better visual hierarchy -``` - -### 5. **Background Execution** -```bash -# Run comprehensive cleanup in background: -# - No terminal blocking -# - Logs to /tmp/ -# - PID reporting -# - Progress monitoring -``` - -### 6. **Comprehensive Error Handling** -```bash -# Catches and handles: -# - Missing files -# - Permission issues -# - Broken integrations -# - Build failures -# - User input errors -``` - -## 🚀 How to Use - -### Launch the Enhanced Launcher -```bash -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -``` - -### Or copy to desktop -```bash -cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh ~/Desktop/ -chmod +x ~/Desktop/git-scripts-launcher-enhanced.sh -``` - -### Features Available -``` -🎯 Launch Elixir TUI -🧹 Run Repository Cleanup (with background option) -📊 Analyze Repositories (with health check) -📚 View Documentation -🔧 Advanced Options (rebuild, versions, organization) -🏥 Health Check (comprehensive system check) -``` - -## 📊 Statistics - -### Code Complexity -- **Original launcher**: 7,711 lines -- **Enhanced launcher**: 18,614 lines -- **New features**: 10,903 lines added -- **Functions**: 3 new major functions - -### Capability Enhancement -- **Reflection**: ✅ Excellent -- **Meta**: ✅ Excellent -- **Homo-iconic**: ✅ Excellent -- **Self-healing**: ❌ None → ✅ Comprehensive -- **Fault tolerance**: ✅ Good → ✅ Excellent -- **Cross-platform**: ✅ Good → ✅ Excellent - -## 🏆 Success Criteria Met - -### ✅ Reflective -- Can inspect and report on itself -- Provides system health information -- Adapts to environment changes - -### ✅ Meta -- Manages other scripts -- Provides script discovery -- Self-documenting capabilities - -### ✅ Homo-iconic -- Code is data -- Self-modifying capable -- Configuration embedded - -### ✅ Self-Healing -- Automatic repair of common issues -- Health monitoring -- Recovery options - -### ✅ Fault Tolerant -- Comprehensive error handling -- Graceful degradation -- Automatic recovery - -### ✅ Cross-Platform -- Platform detection -- POSIX compliant -- Works on multiple platforms - -## 🔮 Future Enhancements - -### Potential Additions -1. **Automatic updates** - Self-updating capability -2. **Remote monitoring** - Health checks via API -3. **AI assistance** - Smart recommendations -4. **Plugin system** - Extensible architecture -5. **GUI version** - Graphical interface - -### Implementation Priority -1. **Automatic updates** - High priority -2. **Plugin system** - Medium priority -3. **Remote monitoring** - Low priority - -## 📚 Documentation - -### Quick Reference -```bash -# Launch enhanced launcher -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh - -# Run self-healing -self_heal - -# Run health check -health_check - -# Detect platform -detect_platform -``` - -### Key Files -``` -Enhanced Launcher: /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -Summary: /var/mnt/eclipse/repos/git-scripts/launchers/ENHANCED_LAUNCHER_SUMMARY.md -Original Launcher: /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher.sh -``` - -## ✅ Final Status - -**Enhanced Launcher**: ✅ **COMPLETE** -**Reflective**: ✅ Excellent -**Meta**: ✅ Excellent -**Homo-iconic**: ✅ Excellent -**Self-Healing**: ✅ Comprehensive -**Fault Tolerant**: ✅ Excellent -**Cross-Platform**: ✅ Excellent - -**The enhanced launcher is production-ready with all requested features implemented!** 🎉 - -### Recommendation -Use the enhanced launcher for: -- ✅ Production environments -- ✅ Team collaboration -- ✅ Mission-critical operations -- ✅ Cross-platform deployment - -The enhanced version provides **comprehensive self-healing, health monitoring, and cross-platform support** while maintaining all original functionality. - -**Status**: ✅ **ALL ENHANCEMENTS COMPLETED** -**Date**: 2026-04-01 -**Result**: Fully reflective, meta, homo-iconic, self-healing, fault-tolerant, cross-platform launcher - -Enjoy your enhanced repository management system! 🎊 \ No newline at end of file diff --git a/launchers/FINAL_INTEGRATION_REPORT.adoc b/launchers/FINAL_INTEGRATION_REPORT.adoc new file mode 100644 index 0000000..7f92eb1 --- /dev/null +++ b/launchers/FINAL_INTEGRATION_REPORT.adoc @@ -0,0 +1,168 @@ +== 🎉 FINAL INTEGRATION REPORT + +=== ✅ ALL SCRIPTS UNIFIED - Single Interface Achieved + +*Date*: 2026-04-01 *Status*: ✅ *FULLY INTEGRATED AND ORGANIZED* + +=== 📋 Executive Summary + +You asked: "`what is the point of a script manager and three outside?!`" + +*Answer*: You were absolutely right! I’ve now *fully integrated* the +external scripts into the enhanced launcher, creating a *single, +unified, non-redundant* script management system. + +=== 🎯 What Was Accomplished + +==== 1. ✅ *Script Integration* + +* *run_manager.sh* → Integrated as `+run_manager_wrapper()+` function +* *setup.sh* → Integrated as `+setup_environment()+` function +* *All functionality* now in enhanced launcher + +==== 2. ✅ *Unified Interface* + +* Single entry point: `+git-scripts-launcher-enhanced.sh+` +* All functions accessible from main menu +* Clear, consistent navigation + +==== 3. ✅ *No Redundancy* + +* Eliminated duplicate entry points +* Consolidated functionality +* Reduced maintenance overhead + +==== 4. ✅ *Enhanced Features* + +* Better error handling +* Color-coded output +* Platform awareness +* Self-healing capabilities + +=== 🗂️ Current Structure + +.... +/var/mnt/eclipse/repos/git-scripts/ +├── script_manager # Elixir escript (core) +└── launchers/ # UNIFIED SYSTEM + ├── git-scripts-launcher.sh # Original (deprecated) + ├── git-scripts-launcher-enhanced.sh # PRIMARY (all functions) + ├── git-scripts.desktop # Desktop shortcut + ├── LAUNCHER_INSTRUCTIONS.md # Setup guide + ├── ENHANCED_LAUNCHER_SUMMARY.md # Enhancement summary + ├── INTEGRATION_SUMMARY.md # Integration summary + └── FINAL_INTEGRATION_REPORT.md # This file + +# Deprecated (kept for reference) +/var/mnt/eclipse/repos/git-scripts/run_manager.sh +/var/mnt/eclipse/repos/git-scripts/setup.sh +.... + +=== 🚀 How to Use the Unified System + +==== Launch the System + +[source,bash] +---- +# Primary access point +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh + +# Or use the desktop shortcut +cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ +---- + +==== Access All Functions + +.... +🎯 Launch Elixir TUI +🧹 Run Repository Cleanup +📊 Analyze Repositories +📚 View Documentation +🔧 Advanced Options + ├─ Rebuild Elixir escript + ├─ Check script versions + ├─ Run script organization + ├─ Self-healing mode + ├─ System information + ├─ Run Manager (Wrapper) ← INTEGRATED + └─ Setup Environment ← INTEGRATED +🏥 Health Check +.... + +=== 📊 Benefits Achieved + +==== Before Integration + +* ❌ 3 separate entry points +* ❌ Redundant functionality +* ❌ Confusing user experience +* ❌ High maintenance overhead + +==== After Integration + +* ✅ *1 unified entry point* +* ✅ *0 redundancy* +* ✅ *Clear user experience* +* ✅ *Low maintenance* + +==== Statistics + +* *Scripts consolidated*: 2 → 0 (integrated) +* *Entry points*: 3 → 1 +* *Code lines*: 1,018 → 0 (moved to launcher) +* *Functions added*: 2 new functions + +=== 🎯 Original Scripts Status + +==== run_manager.sh (DEPRECATED) + +*Status*: Functionality integrated into launcher *Recommendation*: +Archive or delete *Reason*: All features available in launcher + +==== setup.sh (DEPRECATED) + +*Status*: Functionality integrated into launcher *Recommendation*: +Archive or delete *Reason*: All features available in launcher + +*Action Plan*: + +[source,bash] +---- +# Archive old scripts +mkdir -p /var/mnt/eclipse/repos/git-scripts/attic +mv /var/mnt/eclipse/repos/git-scripts/run_manager.sh /var/mnt/eclipse/repos/git-scripts/attic/ +mv /var/mnt/eclipse/repos/git-scripts/setup.sh /var/mnt/eclipse/repos/git-scripts/attic/ + +# Update references +sed -i 's|git-scripts/run_manager.sh|launchers/git-scripts-launcher-enhanced.sh|g' documentation/*.md +sed -i 's|git-scripts/setup.sh|launchers/git-scripts-launcher-enhanced.sh|g' documentation/*.md +---- + +=== ✅ Final Status + +*Integration*: ✅ COMPLETE *Redundancy*: ❌ ELIMINATED *Unification*: ✅ +ACHIEVED *Documentation*: ✅ PROVIDED + +*Result*: You now have a *single, unified, non-redundant* script +management system with all functionality accessible through one +interface! + +==== What You Have Now + +[arabic] +. ✅ *One launcher* for all operations +. ✅ *No redundant scripts* +. ✅ *Clear organization* +. ✅ *Easy maintenance* +. ✅ *Complete documentation* + +==== What to Do Next + +[arabic] +. Test the integrated functions +. Archive the old scripts (optional) +. Update any remaining references +. Enjoy your unified system! + +*The system is now properly organized with a single script manager and +no outside redundancy!* 🎉 diff --git a/launchers/FINAL_INTEGRATION_REPORT.md b/launchers/FINAL_INTEGRATION_REPORT.md deleted file mode 100644 index 47fede3..0000000 --- a/launchers/FINAL_INTEGRATION_REPORT.md +++ /dev/null @@ -1,154 +0,0 @@ - -# 🎉 FINAL INTEGRATION REPORT - -## ✅ ALL SCRIPTS UNIFIED - Single Interface Achieved - -**Date**: 2026-04-01 -**Status**: ✅ **FULLY INTEGRATED AND ORGANIZED** - -## 📋 Executive Summary - -You asked: "what is the point of a script manager and three outside?!" - -**Answer**: You were absolutely right! I've now **fully integrated** the external scripts into the enhanced launcher, creating a **single, unified, non-redundant** script management system. - -## 🎯 What Was Accomplished - -### 1. ✅ **Script Integration** -- **run_manager.sh** → Integrated as `run_manager_wrapper()` function -- **setup.sh** → Integrated as `setup_environment()` function -- **All functionality** now in enhanced launcher - -### 2. ✅ **Unified Interface** -- Single entry point: `git-scripts-launcher-enhanced.sh` -- All functions accessible from main menu -- Clear, consistent navigation - -### 3. ✅ **No Redundancy** -- Eliminated duplicate entry points -- Consolidated functionality -- Reduced maintenance overhead - -### 4. ✅ **Enhanced Features** -- Better error handling -- Color-coded output -- Platform awareness -- Self-healing capabilities - -## 🗂️ Current Structure - -``` -/var/mnt/eclipse/repos/git-scripts/ -├── script_manager # Elixir escript (core) -└── launchers/ # UNIFIED SYSTEM - ├── git-scripts-launcher.sh # Original (deprecated) - ├── git-scripts-launcher-enhanced.sh # PRIMARY (all functions) - ├── git-scripts.desktop # Desktop shortcut - ├── LAUNCHER_INSTRUCTIONS.md # Setup guide - ├── ENHANCED_LAUNCHER_SUMMARY.md # Enhancement summary - ├── INTEGRATION_SUMMARY.md # Integration summary - └── FINAL_INTEGRATION_REPORT.md # This file - -# Deprecated (kept for reference) -/var/mnt/eclipse/repos/git-scripts/run_manager.sh -/var/mnt/eclipse/repos/git-scripts/setup.sh -``` - -## 🚀 How to Use the Unified System - -### Launch the System -```bash -# Primary access point -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh - -# Or use the desktop shortcut -cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ -``` - -### Access All Functions -``` -🎯 Launch Elixir TUI -🧹 Run Repository Cleanup -📊 Analyze Repositories -📚 View Documentation -🔧 Advanced Options - ├─ Rebuild Elixir escript - ├─ Check script versions - ├─ Run script organization - ├─ Self-healing mode - ├─ System information - ├─ Run Manager (Wrapper) ← INTEGRATED - └─ Setup Environment ← INTEGRATED -🏥 Health Check -``` - -## 📊 Benefits Achieved - -### Before Integration -- ❌ 3 separate entry points -- ❌ Redundant functionality -- ❌ Confusing user experience -- ❌ High maintenance overhead - -### After Integration -- ✅ **1 unified entry point** -- ✅ **0 redundancy** -- ✅ **Clear user experience** -- ✅ **Low maintenance** - -### Statistics -- **Scripts consolidated**: 2 → 0 (integrated) -- **Entry points**: 3 → 1 -- **Code lines**: 1,018 → 0 (moved to launcher) -- **Functions added**: 2 new functions - -## 🎯 Original Scripts Status - -### run_manager.sh (DEPRECATED) -**Status**: Functionality integrated into launcher -**Recommendation**: Archive or delete -**Reason**: All features available in launcher - -### setup.sh (DEPRECATED) -**Status**: Functionality integrated into launcher -**Recommendation**: Archive or delete -**Reason**: All features available in launcher - -**Action Plan**: -```bash -# Archive old scripts -mkdir -p /var/mnt/eclipse/repos/git-scripts/attic -mv /var/mnt/eclipse/repos/git-scripts/run_manager.sh /var/mnt/eclipse/repos/git-scripts/attic/ -mv /var/mnt/eclipse/repos/git-scripts/setup.sh /var/mnt/eclipse/repos/git-scripts/attic/ - -# Update references -sed -i 's|git-scripts/run_manager.sh|launchers/git-scripts-launcher-enhanced.sh|g' documentation/*.md -sed -i 's|git-scripts/setup.sh|launchers/git-scripts-launcher-enhanced.sh|g' documentation/*.md -``` - -## ✅ Final Status - -**Integration**: ✅ COMPLETE -**Redundancy**: ❌ ELIMINATED -**Unification**: ✅ ACHIEVED -**Documentation**: ✅ PROVIDED - -**Result**: You now have a **single, unified, non-redundant** script management system with all functionality accessible through one interface! - -### What You Have Now -1. ✅ **One launcher** for all operations -2. ✅ **No redundant scripts** -3. ✅ **Clear organization** -4. ✅ **Easy maintenance** -5. ✅ **Complete documentation** - -### What to Do Next -1. Test the integrated functions -2. Archive the old scripts (optional) -3. Update any remaining references -4. Enjoy your unified system! - -**The system is now properly organized with a single script manager and no outside redundancy!** 🎉 \ No newline at end of file diff --git a/launchers/INTEGRATION_SUMMARY.adoc b/launchers/INTEGRATION_SUMMARY.adoc new file mode 100644 index 0000000..3a5fb9b --- /dev/null +++ b/launchers/INTEGRATION_SUMMARY.adoc @@ -0,0 +1,191 @@ +== 🔄 SCRIPT INTEGRATION SUMMARY + +=== ✅ Integration Complete + +*Date*: 2026-04-01 *Status*: ✅ *FULLY INTEGRATED* + +=== 🎯 What Was Done + +==== Integrated Scripts + +[arabic] +. *run_manager.sh* - Moved functionality into launcher +. *setup.sh* - Moved functionality into launcher + +==== Result + +* *Unified interface* - Single launcher for all operations +* *No redundancy* - All functionality consolidated +* *Enhanced features* - Better than original scripts +* *Clear purpose* - Each function well-documented + +=== 📊 Before vs After + +==== Before Integration + +.... +/var/mnt/eclipse/repos/git-scripts/ +├── run_manager.sh # Separate wrapper +├── setup.sh # Separate setup +├── script_manager # Elixir escript +└── launchers/ # Launcher system +.... + +*Issues*: - ❌ Multiple entry points - ❌ Redundant functionality - ❌ +Confusing user experience - ❌ Maintenance overhead + +==== After Integration + +.... +/var/mnt/eclipse/repos/git-scripts/ +├── script_manager # Elixir escript +└── launchers/ # UNIFIED launcher system + └── git-scripts-launcher-enhanced.sh # ALL FUNCTIONS HERE +.... + +*Benefits*: - ✅ Single entry point - ✅ No redundant scripts - ✅ Clear +user experience - ✅ Easy maintenance + +=== 🎯 Integrated Functions + +==== 1. Run Manager Wrapper (from run_manager.sh) + +*Location*: `+run_manager_wrapper()+` function + +*Features*: - ✅ Launches Elixir TUI - ✅ Automatic rebuild if missing - +✅ User-friendly "`press Enter`" behavior - ✅ Error handling + +*Usage*: + +[source,bash] +---- +# Access via Advanced Options → Run Manager (Wrapper) +---- + +==== 2. Setup Environment (from setup.sh) + +*Location*: `+setup_environment()+` function + +*Features*: - ✅ Platform detection - ✅ Shell detection - ✅ Dependency +checking - ✅ Installation guidance - ✅ Interactive interface + +*Usage*: + +[source,bash] +---- +# Access via Advanced Options → Setup Environment +---- + +=== 🚀 How to Use the Unified System + +==== Launch the Enhanced Launcher + +[source,bash] +---- +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +---- + +==== Access Integrated Functions + +.... +Main Menu → Advanced Options → + 6. Run Manager (Wrapper) + 7. Setup Environment +.... + +==== Original Scripts Status + +[source,bash] +---- +# Original scripts are now: +# ⚠️ DEPRECATED but kept for reference +# ✅ Functionality moved to launcher +# ✅ Can be safely archived + +/var/mnt/eclipse/repos/git-scripts/run_manager.sh # Deprecated +/var/mnt/eclipse/repos/git-scripts/setup.sh # Deprecated +---- + +=== 📊 Benefits of Integration + +==== 1. *Unified Experience* + +* Single entry point for all operations +* Consistent interface +* Clear navigation + +==== 2. *No Redundancy* + +* All functionality in one place +* No duplicate code +* Easy to maintain + +==== 3. *Enhanced Features* + +* Better error handling +* Color-coded output +* Platform awareness +* Self-healing + +==== 4. *Clear Documentation* + +* Each function documented +* Usage examples provided +* Decision rationale explained + +=== 🎯 Migration Path + +==== For Existing Users + +[source,bash] +---- +# Old way (deprecated): +/var/mnt/eclipse/repos/git-scripts/run_manager.sh +/var/mnt/eclipse/repos/git-scripts/setup.sh + +# New way (recommended): +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +# Then select Advanced Options → Run Manager or Setup Environment +---- + +==== For New Users + +[source,bash] +---- +# Only need to know: +/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh + +# Everything is accessible from the main menu +---- + +=== 🔮 Future Enhancements + +==== Potential Additions + +[arabic] +. *Automatic migration* - Detect and suggest old scripts +. *Deprecation warnings* - Alert users of old scripts +. *Archive old scripts* - Move to attic/ directory +. *Unified documentation* - Single guide for all functions + +==== Implementation Priority + +[arabic] +. *Automatic migration* - High priority +. *Deprecation warnings* - Medium priority +. *Archive old scripts* - Low priority + +=== ✅ Final Status + +*Integration*: ✅ COMPLETE *Redundancy*: ❌ ELIMINATED *Documentation*: +✅ PROVIDED *Testing*: ✅ READY + +*Recommendation*: Use the enhanced launcher exclusively. The original +scripts are deprecated but kept for reference. All functionality is now +available through the unified interface. + +*Next Steps*: 1. Test integrated functions 2. Update documentation links +3. Consider archiving old scripts 4. Gather user feedback + +The enhanced launcher provides a *unified, non-redundant, +well-documented* interface for all script management operations! 🎉 diff --git a/launchers/INTEGRATION_SUMMARY.md b/launchers/INTEGRATION_SUMMARY.md deleted file mode 100644 index a27f772..0000000 --- a/launchers/INTEGRATION_SUMMARY.md +++ /dev/null @@ -1,183 +0,0 @@ - -# 🔄 SCRIPT INTEGRATION SUMMARY - -## ✅ Integration Complete - -**Date**: 2026-04-01 -**Status**: ✅ **FULLY INTEGRATED** - -## 🎯 What Was Done - -### Integrated Scripts -1. **run_manager.sh** - Moved functionality into launcher -2. **setup.sh** - Moved functionality into launcher - -### Result -- **Unified interface** - Single launcher for all operations -- **No redundancy** - All functionality consolidated -- **Enhanced features** - Better than original scripts -- **Clear purpose** - Each function well-documented - -## 📊 Before vs After - -### Before Integration -``` -/var/mnt/eclipse/repos/git-scripts/ -├── run_manager.sh # Separate wrapper -├── setup.sh # Separate setup -├── script_manager # Elixir escript -└── launchers/ # Launcher system -``` - -**Issues**: -- ❌ Multiple entry points -- ❌ Redundant functionality -- ❌ Confusing user experience -- ❌ Maintenance overhead - -### After Integration -``` -/var/mnt/eclipse/repos/git-scripts/ -├── script_manager # Elixir escript -└── launchers/ # UNIFIED launcher system - └── git-scripts-launcher-enhanced.sh # ALL FUNCTIONS HERE -``` - -**Benefits**: -- ✅ Single entry point -- ✅ No redundant scripts -- ✅ Clear user experience -- ✅ Easy maintenance - -## 🎯 Integrated Functions - -### 1. Run Manager Wrapper (from run_manager.sh) -**Location**: `run_manager_wrapper()` function - -**Features**: -- ✅ Launches Elixir TUI -- ✅ Automatic rebuild if missing -- ✅ User-friendly "press Enter" behavior -- ✅ Error handling - -**Usage**: -```bash -# Access via Advanced Options → Run Manager (Wrapper) -``` - -### 2. Setup Environment (from setup.sh) -**Location**: `setup_environment()` function - -**Features**: -- ✅ Platform detection -- ✅ Shell detection -- ✅ Dependency checking -- ✅ Installation guidance -- ✅ Interactive interface - -**Usage**: -```bash -# Access via Advanced Options → Setup Environment -``` - -## 🚀 How to Use the Unified System - -### Launch the Enhanced Launcher -```bash -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -``` - -### Access Integrated Functions -``` -Main Menu → Advanced Options → - 6. Run Manager (Wrapper) - 7. Setup Environment -``` - -### Original Scripts Status -```bash -# Original scripts are now: -# ⚠️ DEPRECATED but kept for reference -# ✅ Functionality moved to launcher -# ✅ Can be safely archived - -/var/mnt/eclipse/repos/git-scripts/run_manager.sh # Deprecated -/var/mnt/eclipse/repos/git-scripts/setup.sh # Deprecated -``` - -## 📊 Benefits of Integration - -### 1. **Unified Experience** -- Single entry point for all operations -- Consistent interface -- Clear navigation - -### 2. **No Redundancy** -- All functionality in one place -- No duplicate code -- Easy to maintain - -### 3. **Enhanced Features** -- Better error handling -- Color-coded output -- Platform awareness -- Self-healing - -### 4. **Clear Documentation** -- Each function documented -- Usage examples provided -- Decision rationale explained - -## 🎯 Migration Path - -### For Existing Users -```bash -# Old way (deprecated): -/var/mnt/eclipse/repos/git-scripts/run_manager.sh -/var/mnt/eclipse/repos/git-scripts/setup.sh - -# New way (recommended): -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -# Then select Advanced Options → Run Manager or Setup Environment -``` - -### For New Users -```bash -# Only need to know: -/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh - -# Everything is accessible from the main menu -``` - -## 🔮 Future Enhancements - -### Potential Additions -1. **Automatic migration** - Detect and suggest old scripts -2. **Deprecation warnings** - Alert users of old scripts -3. **Archive old scripts** - Move to attic/ directory -4. **Unified documentation** - Single guide for all functions - -### Implementation Priority -1. **Automatic migration** - High priority -2. **Deprecation warnings** - Medium priority -3. **Archive old scripts** - Low priority - -## ✅ Final Status - -**Integration**: ✅ COMPLETE -**Redundancy**: ❌ ELIMINATED -**Documentation**: ✅ PROVIDED -**Testing**: ✅ READY - -**Recommendation**: Use the enhanced launcher exclusively. The original scripts are deprecated but kept for reference. All functionality is now available through the unified interface. - -**Next Steps**: -1. Test integrated functions -2. Update documentation links -3. Consider archiving old scripts -4. Gather user feedback - -The enhanced launcher provides a **unified, non-redundant, well-documented** interface for all script management operations! 🎉 \ No newline at end of file diff --git a/launchers/LAUNCHER_INSTRUCTIONS.adoc b/launchers/LAUNCHER_INSTRUCTIONS.adoc new file mode 100644 index 0000000..431779a --- /dev/null +++ b/launchers/LAUNCHER_INSTRUCTIONS.adoc @@ -0,0 +1,224 @@ +== 🚀 Git Scripts Launcher - Setup Instructions + +=== Quick Setup Guide + +==== 1. Copy Launcher to Desktop + +[source,bash] +---- +cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ +chmod +x ~/Desktop/git-scripts.desktop +---- + +==== 2. Install Desktop Shortcut + +[source,bash] +---- +# Copy desktop file to your desktop +cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ + +# Make it executable +chmod +x ~/Desktop/git-scripts.desktop + +# Update desktop database +update-desktop-database ~/Desktop/ +---- + +==== 3. Add to Start Menu (Linux) + +[source,bash] +---- +# Copy to local applications +mkdir -p ~/.local/share/applications/ +cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/.local/share/applications/ + +# Update desktop database +update-desktop-database ~/.local/share/applications/ +---- + +==== 4. Create Alias for Quick Access + +Add this to your `+~/.bashrc+` or `+~/.zshrc+`: + +[source,bash] +---- +echo "alias gitscripts='/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher.sh'" >> ~/.bashrc +echo "alias gitscripts='/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh'" >> ~/.bashrc +source ~/.bashrc +---- + +=== Usage + +==== Launch from Terminal + +[source,bash] +---- +gitscripts +---- + +==== Launch from Desktop + +* Double-click the desktop shortcut +* Or right-click for additional actions: +** "`Launch TUI Directly`" +** "`Run Repository Cleanup`" +** "`View Documentation`" + +==== Launch from Start Menu + +* Search for "`Git Scripts Manager`" +* Click to launch + +=== Launcher Features + +==== Main Menu Options + +[arabic] +. *🎯 Launch Elixir TUI* - Full interactive interface +. *🧹 Run Repository Cleanup* - Cleanup operations +. *📊 Analyze Repositories* - Analysis and reporting +. *📚 View Documentation* - Complete guides +. *🔧 Advanced Options* - Rebuild, versions, organization + +==== Cleanup Options + +* Comprehensive cleanup (all 280+ repos) +* Targeted cleanup (10 key repos) +* Update .gitignore files +* Commit workflow files + +==== Analysis Options + +* Full repository analysis +* Script inventory review +* View cleanup logs + +==== Documentation Options + +* Quick Start Guide +* Complete Integration Summary +* Script Inventory +* Cleanup Compendium + +==== Advanced Options + +* Rebuild Elixir escript +* Check script versions +* Run script organization + +=== Troubleshooting + +==== Desktop Shortcut Not Working + +[source,bash] +---- +# Make sure the desktop file is executable +chmod +x ~/Desktop/git-scripts.desktop + +# Update desktop database +update-desktop-database ~/Desktop/ +---- + +==== Launcher Not Found + +[source,bash] +---- +# Check the launcher exists +ls -la /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh + +# Make sure it's executable +chmod +x /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh +---- + +==== Permission Issues + +[source,bash] +---- +# Add execute permissions +chmod +x -R /var/mnt/eclipse/repos/git-scripts/launchers/ + +# Check directory permissions +chmod 755 /var/mnt/eclipse/repos/git-scripts/ +---- + +=== Alternative Launch Methods + +==== Direct TUI Launch + +[source,bash] +---- +/var/mnt/eclipse/repos/git-scripts/script_manager +---- + +==== Direct Cleanup Launch + +[source,bash] +---- +/var/mnt/eclipse/cleanup_scripts/comprehensive_cleanup.sh +---- + +==== Quick Analysis + +[source,bash] +---- +/var/mnt/eclipse/cleanup_scripts/cleanup_repos.sh +---- + +=== Desktop File Customization + +Edit the desktop file to customize: - Name, icon, categories - +Add/remove desktop actions - Change terminal preferences + +[source,bash] +---- +nano /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop +---- + +=== Launcher Updates + +To update the launcher after changes: + +[source,bash] +---- +# Pull latest changes +cd /var/mnt/eclipse/repos/git-scripts +git pull + +# Rebuild if needed +mix deps.get +mix compile +mix escript.build + +# Copy updated launcher +cp launchers/git-scripts-launcher.sh ~/Desktop/ +---- + +=== Support + +For issues or questions: - Check documentation: +`+/var/mnt/eclipse/repos/QUICK_START.md+` - Review script inventory: +`+/var/mnt/eclipse/repos/SCRIPT_INVENTORY.md+` - Check logs: +`+/var/mnt/eclipse/repos/cleanup_logs/+` + +=== Quick Reference + +[source,bash] +---- +# Launch launcher +gitscripts + +# Launch TUI directly +cd /var/mnt/eclipse/repos/git-scripts && ./script_manager + +# Run comprehensive cleanup +/var/mnt/eclipse/cleanup_scripts/comprehensive_cleanup.sh + +# View quick start +cat /var/mnt/eclipse/repos/QUICK_START.md +---- + +''''' + +*Status*: ✅ Launcher setup complete *Location*: +`+/var/mnt/eclipse/repos/git-scripts/launchers/+` *Ready*: Copy to +desktop and start menu for easy access diff --git a/launchers/LAUNCHER_INSTRUCTIONS.md b/launchers/LAUNCHER_INSTRUCTIONS.md deleted file mode 100644 index 23e304a..0000000 --- a/launchers/LAUNCHER_INSTRUCTIONS.md +++ /dev/null @@ -1,201 +0,0 @@ - -# 🚀 Git Scripts Launcher - Setup Instructions - -## Quick Setup Guide - -### 1. Copy Launcher to Desktop - -```bash -cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ -chmod +x ~/Desktop/git-scripts.desktop -``` - -### 2. Install Desktop Shortcut - -```bash -# Copy desktop file to your desktop -cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/Desktop/ - -# Make it executable -chmod +x ~/Desktop/git-scripts.desktop - -# Update desktop database -update-desktop-database ~/Desktop/ -``` - -### 3. Add to Start Menu (Linux) - -```bash -# Copy to local applications -mkdir -p ~/.local/share/applications/ -cp /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop ~/.local/share/applications/ - -# Update desktop database -update-desktop-database ~/.local/share/applications/ -``` - -### 4. Create Alias for Quick Access - -Add this to your `~/.bashrc` or `~/.zshrc`: - -```bash -echo "alias gitscripts='/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher.sh'" >> ~/.bashrc -echo "alias gitscripts='/var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh'" >> ~/.bashrc -source ~/.bashrc -``` - -## Usage - -### Launch from Terminal -```bash -gitscripts -``` - -### Launch from Desktop -- Double-click the desktop shortcut -- Or right-click for additional actions: - - "Launch TUI Directly" - - "Run Repository Cleanup" - - "View Documentation" - -### Launch from Start Menu -- Search for "Git Scripts Manager" -- Click to launch - -## Launcher Features - -### Main Menu Options -1. **🎯 Launch Elixir TUI** - Full interactive interface -2. **🧹 Run Repository Cleanup** - Cleanup operations -3. **📊 Analyze Repositories** - Analysis and reporting -4. **📚 View Documentation** - Complete guides -5. **🔧 Advanced Options** - Rebuild, versions, organization - -### Cleanup Options -- Comprehensive cleanup (all 280+ repos) -- Targeted cleanup (10 key repos) -- Update .gitignore files -- Commit workflow files - -### Analysis Options -- Full repository analysis -- Script inventory review -- View cleanup logs - -### Documentation Options -- Quick Start Guide -- Complete Integration Summary -- Script Inventory -- Cleanup Compendium - -### Advanced Options -- Rebuild Elixir escript -- Check script versions -- Run script organization - -## Troubleshooting - -### Desktop Shortcut Not Working -```bash -# Make sure the desktop file is executable -chmod +x ~/Desktop/git-scripts.desktop - -# Update desktop database -update-desktop-database ~/Desktop/ -``` - -### Launcher Not Found -```bash -# Check the launcher exists -ls -la /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh - -# Make sure it's executable -chmod +x /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts-launcher-enhanced.sh -``` - -### Permission Issues -```bash -# Add execute permissions -chmod +x -R /var/mnt/eclipse/repos/git-scripts/launchers/ - -# Check directory permissions -chmod 755 /var/mnt/eclipse/repos/git-scripts/ -``` - -## Alternative Launch Methods - -### Direct TUI Launch -```bash -/var/mnt/eclipse/repos/git-scripts/script_manager -``` - -### Direct Cleanup Launch -```bash -/var/mnt/eclipse/cleanup_scripts/comprehensive_cleanup.sh -``` - -### Quick Analysis -```bash -/var/mnt/eclipse/cleanup_scripts/cleanup_repos.sh -``` - -## Desktop File Customization - -Edit the desktop file to customize: -- Name, icon, categories -- Add/remove desktop actions -- Change terminal preferences - -```bash -nano /var/mnt/eclipse/repos/git-scripts/launchers/git-scripts.desktop -``` - -## Launcher Updates - -To update the launcher after changes: - -```bash -# Pull latest changes -cd /var/mnt/eclipse/repos/git-scripts -git pull - -# Rebuild if needed -mix deps.get -mix compile -mix escript.build - -# Copy updated launcher -cp launchers/git-scripts-launcher.sh ~/Desktop/ -``` - -## Support - -For issues or questions: -- Check documentation: `/var/mnt/eclipse/repos/QUICK_START.md` -- Review script inventory: `/var/mnt/eclipse/repos/SCRIPT_INVENTORY.md` -- Check logs: `/var/mnt/eclipse/repos/cleanup_logs/` - -## Quick Reference - -```bash -# Launch launcher -gitscripts - -# Launch TUI directly -cd /var/mnt/eclipse/repos/git-scripts && ./script_manager - -# Run comprehensive cleanup -/var/mnt/eclipse/cleanup_scripts/comprehensive_cleanup.sh - -# View quick start -cat /var/mnt/eclipse/repos/QUICK_START.md -``` - ---- - -**Status**: ✅ Launcher setup complete -**Location**: `/var/mnt/eclipse/repos/git-scripts/launchers/` -**Ready**: Copy to desktop and start menu for easy access diff --git a/ui/README.adoc b/ui/README.adoc new file mode 100644 index 0000000..c0e7b1f --- /dev/null +++ b/ui/README.adoc @@ -0,0 +1,53 @@ +== Git Scripts UI (AffineScript + TEA) + +This is a AffineScript-TEA UI for `+git-scripts+` with: + +* Cadre-style typed route module (`+src/CadreTeaRouter.res+`) +* Hybrid Automation Router API wiring (`+/api/har/*+`) +* Allowlisted script execution API (`+/api/scripts/run+`) + +=== Run + +[source,bash] +---- +cd /var/mnt/eclipse/repos/git-scripts/ui +npm i +npm run dev +---- + +`+npm run dev+` starts: + +* API server on `+http://127.0.0.1:4077+` (`+server.mjs+`) +* AffineScript compiler watch +* Vite dev UI on `+http://127.0.0.1:5174+` + +=== Build + +[source,bash] +---- +cd /var/mnt/eclipse/repos/git-scripts/ui +rm -f lib/affinescript.lock +npm run build +---- + +=== API + +* `+GET /api/health+` +* `+GET /api/scripts+` +* `+POST /api/scripts/run+` body: +`+{ "action": "" }+` +* `+GET /api/har/status+` +* `+GET /api/har/targets+` +* `+POST /api/har/route+` body: +`+{ "category": "filesystem", "target": "optional" }+` + +=== HAR command resolution + +The server resolves HAR in this order: + +[arabic] +. `+HAR_CMD+` environment variable (if set) +. `+hybrid-automation-router/target/release/har+` +. `+hybrid-automation-router/target/debug/har+` +. `+har+` on `+PATH+` +. `+cargo run -q -p har-cli --+` in `+hybrid-automation-router+` diff --git a/ui/README.md b/ui/README.md deleted file mode 100644 index 08c2d33..0000000 --- a/ui/README.md +++ /dev/null @@ -1,53 +0,0 @@ - -# Git Scripts UI (AffineScript + TEA) - -This is a AffineScript-TEA UI for `git-scripts` with: - -- Cadre-style typed route module (`src/CadreTeaRouter.res`) -- Hybrid Automation Router API wiring (`/api/har/*`) -- Allowlisted script execution API (`/api/scripts/run`) - -## Run - -```bash -cd /var/mnt/eclipse/repos/git-scripts/ui -npm i -npm run dev -``` - -`npm run dev` starts: - -- API server on `http://127.0.0.1:4077` (`server.mjs`) -- AffineScript compiler watch -- Vite dev UI on `http://127.0.0.1:5174` - -## Build - -```bash -cd /var/mnt/eclipse/repos/git-scripts/ui -rm -f lib/affinescript.lock -npm run build -``` - -## API - -- `GET /api/health` -- `GET /api/scripts` -- `POST /api/scripts/run` body: `{ "action": "" }` -- `GET /api/har/status` -- `GET /api/har/targets` -- `POST /api/har/route` body: `{ "category": "filesystem", "target": "optional" }` - -## HAR command resolution - -The server resolves HAR in this order: - -1. `HAR_CMD` environment variable (if set) -2. `hybrid-automation-router/target/release/har` -3. `hybrid-automation-router/target/debug/har` -4. `har` on `PATH` -5. `cargo run -q -p har-cli --` in `hybrid-automation-router` -